disruptor - Concurrent Programming Framework 并发编程框架
2024-08-26 16:02:00
disruptor发布了Java的2.0版本(.Net版本见这里),disruptor是一个高性能的异步处理框架,或者可以认为是最快的消息框架(轻量的JMS),也可以认为是一个观察者模式实现,或者事件-监听模式的实现,直接称disruptor模式。
disruptor最大特点是高性能,其LMAX架构可以获得每秒6百万订单,用1微秒的延迟获得吞吐量为100K+。
disruptor与传统高性能模型是不同的,LMAX团队通过测试发现热门的Actor模型在高并发设计有瓶颈,disruptor的RingBuffer根据多核CPU的高速缓存设计特点进行了优化,让每个CPU运行一个线程,多个CPU就是多线程并发模式了,正如团队所言:我们想出一个更好,更快的线程之间共享数据的方式,不与世界分享将是自私的,不共享知识让我们看上去是死聪明。
传统消息框架使用Queue队列,如JDK LinkedList等数据结构实现,RingBuffer比Linked之类数据结构要快,因为没有锁,是CPU友好型的。另外一个不同的地方是不会在清除RingBuffer中数据,只会覆盖,这样降低了垃圾回收机制启动频率。
最新文章
- iOS中一些算法函数
- CI框架,双层弹出框的样式实现
- Path之Data属性语法A命令
- Sphinx 实时索引
- linux C学习笔记01--makefile
- 在SQL存储过程中给条件变量加上单引号
- 转载-使用 Feed4JUnit 进行数据与代码分离的 Java 单元测试
- python 图片上添加数字源代码
- 对于volatile的理解
- WordPress 3.5.1 crypt_private()远程拒绝服务漏洞(CVE-2013-2173)
- CKEditor + CKFinder 实现编辑上传图片配置
- Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算(转)
- Android小应用-----画画板
- Symfony3 更改生成CRUD目录步骤
- 学习Redux之分析Redux核心代码分析
- python实例编写(6)--引入unittest测试框架,构造测试集批量测试(以微信统一管理平台为例)
- Jenkins-权限管理
- Apache+php安装和配置 windows
- _技巧_SublimeText_打开文件乱码解决
- 2018CCPC女生赛(树上莫队)