我是LMAX Disruptor的新手,我正在探索它,以便在需要处理巨大流量的多层异步项目中使用它。
向平台发送SMS的请求被传送,该请求被清理/检查是否有简单的错误并被记录。
获取并分析与发送SMS的客户端相关的各种其他信息,并将其他参数添加到SMS信息中。
分析并选择了正确的路由。然后,从SMS-info设置平台特定的协议参数,并将其提交给路由器。
就像这样,将有接收和处理SMS递送到日志、账单、重试和许多其他的流程。在每个阶段,程序流中都会有并发或顺序执行。如果这是项目的高级视图,LMAX disruptor框架是否应该用于各个模块之间的通信(sms-info)?
如果是这样的话,需要创建多少个disruptor的右缓冲区?
如果我的理解是正确的,那么在不同的每一层/功能之间是否创建了新的环缓冲区?
可以将POJO对象写入环形缓冲区吗?如何将其应用于集群环境?虽然我读了一些文档,看过一些关于这个框架的视频,但我不能想象一个使用这个框架的解决方案。
任何指南/示例/可视化图表/文档或您在这方面的想法都会对我有很大帮助。
发布于 2013-08-19 14:49:35
我们已经使用了一点disruptor,并将其作为一个库来支持高性能、可配置的并行执行流。
在给定的场景中,我可以看到两个环形缓冲区配置。一个用于发送SMS,另一个用于接收SMS。
如果您需要更复杂的配置,也可以在发送端或接收端使用级联环形缓冲区。
SMS发送环形缓冲区配置可以具有如下的事件阶段流

类似地,接收部也可以具有工作台结构。
关于你在POJO上的问题。
https://stackoverflow.com/questions/17994856
复制相似问题