我想弄清楚 Nginx 或 HAProxy 是否能够根据流中的某些分隔符对 TCP 流内容进行负载平衡。TCP 连接是长期存在的,并且用于 MLLP 协议。简而言之,MLLP 协议是:
<VT>Message<FS><CR>[time gap]
<VT>Message<FS><CR>…
消息可以以连续流的形式发送,也可以在消息之间以可变的时间间隔发送。
目标是根据预定义的分隔符分割流,并根据信封中的“消息”做出负载平衡决策。如果能尽可能让实现与任一产品保持一致,则可以获得加分。
我尝试过 OpenResty/lua 和 HAProxy 的 SPOE。似乎两者都支持基于流内容的负载平衡,但仅限于初始连接时,之后的任何流量都会通过已建立的连接。
我将非常感激您的见解。谢谢!