2011年12月12日 22:30 "@bigkite"的内容
还有如何从ring buff读数据写数据,可否再详细些 ...
可参加这个帖:disruptor - 并发编程框架 也可以自己下载代码后试验一下。
2012-06-12 12:13 "@cintana"的内容
我想用disruptor来实现一个RPC的服务器端,因为服务器端在接收消息的时候一般会有一个queue来缓存,有已经封装好的此类的RPC么? ...
可以使用NIO Socket+ disruptor基于事件的RPC服务器端,类似Node.js服务端那种机制,自己编起来应该不难。
当1对多消费端顺序消费数据时,其中1个消费端或者多个消费端慢或者异常时,这么协调快消费端和慢消费端及异常消费端的相互影响?Disruptor貌似没有这个问题的处理方式?Disuptor只是分配一个足够大的RingBuffer, 当这个RB达到上限时,限制最慢的消费端前进,阻塞快的消费端,直到慢的消费端前进了RB才会腾出新的空间,这样必然导致快的消费端依赖慢的消费端,对于多个消费端情况下,有写消费端要求低延时就受影响了。如果其中一个消费端挂了,其他消费端也不能一直等着吧。
[该贴被Qianqian于2013-01-08 16:01修改过]
这里所说的input event
应该不是我们在CQRS中理解的command的吧
这个input event应该是LMAX架构中BLP定义的一种事件
外部command在handler中跑过后,发送input event到blp
但是我有一个问题。
我们不可能将所有业务处理程序放到同一个JVM中,必定是需要像外界输出的。
如果output是kafka.使用kafka事务的话它的tps肯定达不到百万级。
在logic processor处理完毕event之后,他是如果确保推送到output的?
谢谢。