草庐IT

Resequencing

全部标签

node.js - 乱序处理后的"Resequencing"消息

我正在研究基本上是高度可用的分布式消息传递系统。系统通过HTTP或TCP从某个地方接收消息,对其进行各种转换,然后将其发送到一个或多个目的地(也使用TCP/HTTP)。系统要求所有发送到给定目标的消息都是按顺序排列的,因为某些消息建立在先前消息的内容之上。这限制了我们按顺序处理消息,每条消息大约需要750毫秒。因此,例如,如果有人每隔250毫秒向我们发送一封邮件,我们将被迫将这些邮件排在后面。最终,这会在高负载下导致消息处理中令人无法忍受的延迟,因为每个消息可能不得不等待其他数百条消息才能轮流处理。为了解决此问题,我希望能够并行化消息处理,而又不会违反按顺序发送消息的要求。我们可以轻松