转载

Disruptor Wizard已死,Disruptor Wizard永存!

译者:杨帆 校对:丁一

Disruptor Wizard(上一篇中提到的DSL组件)目前已经正式并入Disruptor的代码树当中。既然.net移植版包含了Wizard风格的语法很久了,并且看起来还挺受欢迎,所以为什么还要让人们非得搞两个jar而不是一个?

我跟随Disruptor在术语命名上的变动做出了相应的更新。以前的Customer(消费者),现在叫EventProcessor(事件处理器)和EventHandler(事件句柄)。这样的命名更好的说明了实际上的情况:消费者事实上可以向事件添加附加值。另外,ProducerBarrier(生产者屏障)被合并到Ring Buffer一起,并且Ring Buffer Entry(条目)被改名为Event(事件)。新的命名更贴切了,因为实际上围绕Disruptor的编程模型大部分时候都是基于事件的。

除了以下两点,Wizard API与以往并没有太大的不同:

  • consumeWith方法改名为handleEventsWith
  • getProducerBarrier方法被替换成了一个返回值为ring bufferstart方法。这就不会混淆地认为getProducerBarrier方法也被用作触发事件处理器线程的启动。

现在的方法命名清楚地表示了该方法的其它作用。

转载自并发编程网 – ifeve.com本文链接地址: Disruptor Wizard已死,Disruptor Wizard永存!

 Disurptor目录 

剖析Disruptor:为什么会这么快

  1. 剖析Disruptor:为什么会这么快?(一)锁的缺点
  2. 剖析Disruptor:为什么会这么快?(二)神奇的缓存行填充
  3. 剖析Disruptor:为什么会这么快?(三)伪共享
  4. 剖析Disruptor:为什么会这么快?(四)揭秘内存屏障

Disruptor如何工作和使用

  1. 如何使用Disruptor(一)Ringbuffer的特别之处
  2. 如何使用Disruptor(二)如何从Ringbuffer读取
  3. 如何使用Disruptor(三)写入Ringbuffer
  4. 解析Disruptor关系组装
  5. Disruptor(无锁并发框架)-发布
  6. LMAX Disruptor——一个高性能、低延迟且简单的框架
  7. Disruptor Wizard已死,Disruptor Wizard永存!
  8. Disruptor 2.0更新摘要
  9. 线程间共享数据不需要竞争

Disruptor的应用

  1. LMAX的架构
  2. 通过Axon和Disruptor处理1Mtps



正文到此结束
本文目录