disruptor 多个消费者 但是只消费一次 有时候会有这样的需求

来源:互联网 发布:pcb layout软件 编辑:程序博客网 时间:2024/05/16 13:49
disruptor 多个消费者 但是只消费一次 网上很少有这方面的资料
public final class MyHandler implements EventHandler<ValueEvent>{    private final long ordinal;    private final long numberOfConsumers;    public MyHandler(final long ordinal, final long numberOfConsumers)    {        this.ordinal = ordinal;        this.numberOfConsumers = numberOfConsumers;    }    public void onEvent(final ValueEvent entry, final long sequence, final boolean onEndOfBatch)    {        if ((sequence % numberOfConsumers) == ordinal)        {            // Process the event        }    }

}

disruptor.handleEventsWith( new MyHandler(0, 2), new MyHandler(1, 2));

https://github.com/LMAX-Exchange/disruptor

https://github.com/LMAX-Exchange/disruptor/wiki/Frequently-Asked-Questions

代码下载地址

http://download.csdn.net/detail/tsshouhu/9804541

0 0