runxinzhi.com
首页
百度搜索
disruptor
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中数据,只会覆盖,这样降低了垃圾回收机制启动频率。
相关阅读:
输入三个整数x、y、z,请把这三个数由小到大输出
输入某年某月某日,判断这一天是这一年的第几天?
JS实现背景透明度可变,文字不透明的效果
tomcat+java的web程序持续占cpu问题调试
java中HashMap在多线程环境下引起CPU100%的问题解决
Java HashSet和LinkedHashSet的用法
关于List Map Set的线程安全的问题
java 程序消耗 cpu 100% 查找方法
新浪微博开放平台——话题跟踪
Mina 断线重连
原文地址:https://www.cnblogs.com/jifeng/p/4998789.html
最新文章
Java 基本语法----进制、运算符
Java 基本语法----变量
Java 基本语法----关键字、标识符
Java语言概述
十分有用的网址
计算机运行命令全集
Linux系统下基本命令
MYSQL命令
CMD命令
GUI(图形用户界面)
热门文章
输入3个数a,b,c,按大小顺序输出
打印杨辉三角形
取一个整数a从右端开始的4~7位
对10个数进行排序
求100之内的素数
一个5位数,判断它是不是回文数
求第五个人多大岁数
打印菱形
猴子吃桃问题
输出9*9口诀
Copyright © 2020-2023
润新知