架构——用Kafka实现信号量

wgmfuz8q  于 2021-06-04  发布在  Kafka
关注(0)|答案(0)|浏览(270)

我试图在消费者端实现信号量的概念。下面是一个示例:一系列消息:

[producer] d1 -> e1 -> a4 -> a3 -> b1 -> c1 -> a2 -> a1 [consumer]

在信号量中,最多允许两个相同类型的事件。所以当前四个事件被消耗时( a1 , a2 , c1 , b1 ),第五和第六个事件( a5 , a5 )应该保留在某个地方(这是个问题),以及之后的事件( e1 , d1 )仍然可以立即使用,因为它们与任何现有事件的类型不同。在一个事件之后 a1 完成处理后,一个空间可用,以便事件 a3 可以消费。离开活动 a4 还在等。
现在有一个新的事件即将发生,叫做 f1 , f1 应在事件发生时立即使用 a4 仍在等待。 a4 仅当其中一个处理 a 饰面。请注意,可能有数千种事件类型,如a、b、c、d、e。。。可能有成千上万个相同类型的事件(a1,a2,a3,a4,…),但是信号量限制可以很低,比如10。
我如何使用Kafka来实现这一点?寻找推荐的实现模式,Kafka功能,文章,博客等。谢谢!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题