E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
disruptor
Dissecting the
Disruptor
: Why it’s so fast (part one) – Locks Are Bad
MartinFowlerhaswrittena reallygoodarticle describingnotonly the
Disruptor
,butalsohowitfitsintothearchitectureat
jimode2013
·
2014-04-10 13:00
disruptor
致敬
disruptor
:CAS实现高效(伪)无锁阻塞队列实践
引言在多线程开发中,我们常常遇到这样一种场景:一些线程接受用户请求,另外一些线程处理这些请求,之所以把接受请求和处理请求的逻辑分开,一方面是出于资源调度的考虑(用户请求也许很多,但这些请求涉及的资源很少),另一方面也可能是异步响应的需求。这种场景存在于NIO的通信框架,存在于Tomcat的回调处理框架,存在于日志系统的异步flush,存在于各种类型的线程池中。总之,这种典型的生产者消费者场景比比皆
远影
·
2014-03-24 14:00
Java并发编程
disruptor
推荐阅读
锁细化
高性能队列
disruptor
调研报告
转载自:http://www.cnblogs.com/killmyday/archive/2012/12/02/2798218.html票池暂定使用
disruptor
来做消息队列,把最近对
disruptor
yht520100
·
2014-03-16 15:00
无锁并发框架
Disruptor
概述在逛并发编程网的时候,看到了并发框架
Disruptor
译文这个系列文章。
zbf8441372
·
2014-02-21 11:00
并发编程
一种高效无锁内存队列的实现
原文:http://www.searchtb.com/2012/10/introduction_to_
disruptor
.html?
san_yun
·
2014-02-06 10:00
内存
【OSChina-MoPaaS应用开发大赛】微门户
应用所使用的技术及软件:微信相关接口、
disruptor
、SpringM
vmenhu
·
2014-01-13 11:00
剖析
Disruptor
:为什么会这么快?(一)锁的缺点
“
Disruptor
究竟是什么?"。目前我正准备在回答这个问题,但首先回答"为什么它会这么快?
wbj0110
·
2014-01-04 16:00
并发
锁
disruptor
剖析
Disruptor
:为什么会这么快?(一)锁的缺点
“
Disruptor
究竟是什么?"。目前我正准备在回答这个问题,但首先回答"为什么它会这么快?
wbj0110
·
2014-01-04 16:00
并发
锁
disruptor
剖析
Disruptor
:为什么会这么快?(一)锁的缺点
“
Disruptor
究竟是什么?"。目前我正准备在回答这个问题,但首先回答"为什么它会这么快?
wbj0110
·
2014-01-04 16:00
并发
锁
disruptor
剖析
Disruptor
:为什么会这么快?(二)神奇的缓存行填充
我们经常提到一个短语MechanicalSympathy,这个短语也是Martin博客的标题(译注:MartinThompson),MechanicalSympathy讲的是底层硬件是如何运作的,以及与其协作而非相悖的编程方式。(译注:MartinThompson很喜欢用MechanicalSympathy这个短语,这个短语源于赛车驾驶,它反映了驾驶员对于汽车有一种天生的感觉,所以他们对于如何最佳
wbj0110
·
2014-01-04 16:00
并发
cpu
disruptor
为共享
剖析
Disruptor
:为什么会这么快?(二)神奇的缓存行填充
我们经常提到一个短语MechanicalSympathy,这个短语也是Martin博客的标题(译注:MartinThompson),MechanicalSympathy讲的是底层硬件是如何运作的,以及与其协作而非相悖的编程方式。(译注:MartinThompson很喜欢用MechanicalSympathy这个短语,这个短语源于赛车驾驶,它反映了驾驶员对于汽车有一种天生的感觉,所以他们对于如何最佳
wbj0110
·
2014-01-04 16:00
并发
cpu
disruptor
为共享
剖析
Disruptor
:为什么会这么快?(二)神奇的缓存行填充
我们经常提到一个短语MechanicalSympathy,这个短语也是Martin博客的标题(译注:MartinThompson),MechanicalSympathy讲的是底层硬件是如何运作的,以及与其协作而非相悖的编程方式。(译注:MartinThompson很喜欢用MechanicalSympathy这个短语,这个短语源于赛车驾驶,它反映了驾驶员对于汽车有一种天生的感觉,所以他们对于如何最佳
wbj0110
·
2014-01-04 16:00
并发
cpu
disruptor
为共享
剖析
Disruptor
:为什么会这么快?(三)伪共享
原文地址:http://ifeve.com/false-sharing/缓存系统中是以缓存行(cacheline)为单位存储的。缓存行是2的整数幂个连续字节,一般为32-256个字节。最常见的缓存行大小是64个字节。当多线程修改互相独立的变量时,如果这些变量共享同一个缓存行,就会无意中影响彼此的性能,这就是伪共享。缓存行上的写竞争是运行在SMP系统中并行线程实现可伸缩性最重要的限制因素。有人将伪共
wbj0110
·
2014-01-04 16:00
伪共享
disruptor
剖析
Disruptor
:为什么会这么快?(三)伪共享
原文地址:http://ifeve.com/false-sharing/缓存系统中是以缓存行(cacheline)为单位存储的。缓存行是2的整数幂个连续字节,一般为32-256个字节。最常见的缓存行大小是64个字节。当多线程修改互相独立的变量时,如果这些变量共享同一个缓存行,就会无意中影响彼此的性能,这就是伪共享。缓存行上的写竞争是运行在SMP系统中并行线程实现可伸缩性最重要的限制因素。有人将伪共
wbj0110
·
2014-01-04 16:00
伪共享
disruptor
剖析
Disruptor
:为什么会这么快?(三)伪共享
原文地址:http://ifeve.com/false-sharing/缓存系统中是以缓存行(cacheline)为单位存储的。缓存行是2的整数幂个连续字节,一般为32-256个字节。最常见的缓存行大小是64个字节。当多线程修改互相独立的变量时,如果这些变量共享同一个缓存行,就会无意中影响彼此的性能,这就是伪共享。缓存行上的写竞争是运行在SMP系统中并行线程实现可伸缩性最重要的限制因素。有人将伪共
wbj0110
·
2014-01-04 16:00
伪共享
disruptor
剖析
Disruptor
:为什么会这么快?(三)揭秘内存屏障
我写这个系列的博客主要目的是解析
Disruptor
是如何工作的,并深入了解下为什么这样工作。
wbj0110
·
2014-01-04 16:00
disruptor
剖析
Disruptor
:为什么会这么快?(三)揭秘内存屏障
我写这个系列的博客主要目的是解析
Disruptor
是如何工作的,并深入了解下为什么这样工作。
wbj0110
·
2014-01-04 16:00
disruptor
剖析
Disruptor
:为什么会这么快?(三)揭秘内存屏障
我写这个系列的博客主要目的是解析
Disruptor
是如何工作的,并深入了解下为什么这样工作。
wbj0110
·
2014-01-04 16:00
disruptor
如何使用
Disruptor
(二)如何从Ringbuffer读取
ConsumerBarrier与消费者这里我要稍微反过来介绍,因为总的来说读取数据这一过程比写数据要容易理解。假设通过一些“魔法”已经把数据写入到RingBuffer了,怎样从RingBuffer读出这些数据呢?(好,我开始后悔使用Paint/Gimp 了。尽管这是个购买绘图板的好借口,如果我继续写下去的话… UML界的权威们大概也在诅咒我的名字了。)消费者(Consumer)是一个想从RingB
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
剖析
Disruptor
:为什么会这么快?(一)Ringbuffer的特别之处
最近,我们开源了LMAX
Disruptor
,它是我们的交易系统吞吐量快(LMAX是一个新型的交易平台,号称能够单线程每秒处理数百万的订单)的关键原因。为什么我们要将其开源?
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
剖析
Disruptor
:为什么会这么快?(一)Ringbuffer的特别之处
最近,我们开源了LMAX
Disruptor
,它是我们的交易系统吞吐量快(LMAX是一个新型的交易平台,号称能够单线程每秒处理数百万的订单)的关键原因。为什么我们要将其开源?
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
如何使用
Disruptor
(二)如何从Ringbuffer读取
ConsumerBarrier与消费者这里我要稍微反过来介绍,因为总的来说读取数据这一过程比写数据要容易理解。假设通过一些“魔法”已经把数据写入到RingBuffer了,怎样从RingBuffer读出这些数据呢?(好,我开始后悔使用Paint/Gimp 了。尽管这是个购买绘图板的好借口,如果我继续写下去的话… UML界的权威们大概也在诅咒我的名字了。)消费者(Consumer)是一个想从RingB
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
剖析
Disruptor
:为什么会这么快?(一)Ringbuffer的特别之处
最近,我们开源了LMAX
Disruptor
,它是我们的交易系统吞吐量快(LMAX是一个新型的交易平台,号称能够单线程每秒处理数百万的订单)的关键原因。为什么我们要将其开源?
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
如何使用
Disruptor
(二)如何从Ringbuffer读取
ConsumerBarrier与消费者这里我要稍微反过来介绍,因为总的来说读取数据这一过程比写数据要容易理解。假设通过一些“魔法”已经把数据写入到RingBuffer了,怎样从RingBuffer读出这些数据呢?(好,我开始后悔使用Paint/Gimp 了。尽管这是个购买绘图板的好借口,如果我继续写下去的话… UML界的权威们大概也在诅咒我的名字了。)消费者(Consumer)是一个想从RingB
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
如何使用
Disruptor
(三)写入 Ringbuffer
ProducerBarriers
Disruptor
代码给 消费者 提供了一些接口和辅助类,但是没有给写入RingBuffer的 生产者 提供接口。
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
如何使用
Disruptor
(三)写入 Ringbuffer
ProducerBarriers
Disruptor
代码给 消费者 提供了一些接口和辅助类,但是没有给写入RingBuffer的 生产者 提供接口。
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
如何使用
Disruptor
(三)写入 Ringbuffer
ProducerBarriers
Disruptor
代码给 消费者 提供了一些接口和辅助类,但是没有给写入RingBuffer的 生产者 提供接口。
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
Disruptor
(无锁并发框架)-发布
假如你生活在另外一个星球,我们最近开源了一套高性能的基于消息传递的开源框架。下面我给大家介绍一下如何将消息通过Ringbuffer在无锁的情况下进行处理。在深入介绍之前,可以先快速阅读一下Trish发表的文章,该文章介绍了ringbuffer和其工作原理。 这篇文章的要点如下:1.ringbuffer是由一个大数组组成的。2.所有ringbuffer的“指针”(也称为序列或游标)是javalong
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
Disruptor
(无锁并发框架)-发布
假如你生活在另外一个星球,我们最近开源了一套高性能的基于消息传递的开源框架。下面我给大家介绍一下如何将消息通过Ringbuffer在无锁的情况下进行处理。在深入介绍之前,可以先快速阅读一下Trish发表的文章,该文章介绍了ringbuffer和其工作原理。 这篇文章的要点如下:1.ringbuffer是由一个大数组组成的。2.所有ringbuffer的“指针”(也称为序列或游标)是javalong
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
Disruptor
(无锁并发框架)-发布
假如你生活在另外一个星球,我们最近开源了一套高性能的基于消息传递的开源框架。下面我给大家介绍一下如何将消息通过Ringbuffer在无锁的情况下进行处理。在深入介绍之前,可以先快速阅读一下Trish发表的文章,该文章介绍了ringbuffer和其工作原理。 这篇文章的要点如下:1.ringbuffer是由一个大数组组成的。2.所有ringbuffer的“指针”(也称为序列或游标)是javalong
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
LMAX
Disruptor
——一个高性能、低延迟且简单的框架
Disruptor
是一个用于在线程间通信的高效低延时的消息组件,它像个增强的队列,并且它是让LMAXExchange跑的如此之快的一个关键创新。
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
LMAX
LMAX
Disruptor
——一个高性能、低延迟且简单的框架
阅读更多
Disruptor
是一个用于在线程间通信的高效低延时的消息组件,它像个增强的队列,并且它是让LMAXExchange跑的如此之快的一个关键创新。
wbj0110
·
2014-01-03 09:00
LMAX
Ringbuffer
Disruptor
LMAX
Disruptor
——一个高性能、低延迟且简单的框架
Disruptor
是一个用于在线程间通信的高效低延时的消息组件,它像个增强的队列,并且它是让LMAXExchange跑的如此之快的一个关键创新。
wbj0110
·
2014-01-03 09:00
disruptor
LMAX
Ringbuffer
LMAX
Disruptor
——一个高性能、低延迟且简单的框架
Disruptor
是一个用于在线程间通信的高效低延时的消息组件,它像个增强的队列,并且它是让LMAXExchange跑的如此之快的一个关键创新。
wbj0110
·
2014-01-03 09:00
disruptor
Ringbuffer
LMAX
LMAX架构
平台上,核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单.业务逻辑处理器完全是运行在内存中(in-memory),使用事件源驱动方式(eventsourcing).业务逻辑处理器的核心是
Disruptor
s
wbj0110
·
2013-12-31 17:00
架构
LMAX
Jdon
LMAX架构
平台上,核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单.业务逻辑处理器完全是运行在内存中(in-memory),使用事件源驱动方式(eventsourcing).业务逻辑处理器的核心是
Disruptor
s
wbj0110
·
2013-12-31 17:00
架构
LMAX
Jdon
LMAX架构
平台上,核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单.业务逻辑处理器完全是运行在内存中(in-memory),使用事件源驱动方式(eventsourcing).业务逻辑处理器的核心是
Disruptor
s
wbj0110
·
2013-12-31 17:00
架构
LMAX
Jdon
如何让Java以光的速度跨线程通信?
一个比
Disruptor
吞吐量等性能指标更好的框架,使用Railway算法,将线程之间的消费发送参考现实生活中火车在站点之间搬运货物。
wbj0110
·
2013-12-31 14:00
线程
算法
阻塞
如何让Java以光的速度跨线程通信?
阅读更多一个比
Disruptor
吞吐量等性能指标更好的框架,使用Railway算法,将线程之间的消费发送参考现实生活中火车在站点之间搬运货物。
wbj0110
·
2013-12-31 14:00
线程
阻塞
算法
如何让Java以光的速度跨线程通信?
一个比
Disruptor
吞吐量等性能指标更好的框架,使用Railway算法,将线程之间的消费发送参考现实生活中火车在站点之间搬运货物。
wbj0110
·
2013-12-31 14:00
线程
算法
阻塞
如何让Java以光的速度跨线程通信?
一个比
Disruptor
吞吐量等性能指标更好的框架,使用Railway算法,将线程之间的消费发送参考现实生活中火车在站点之间搬运货物。
wbj0110
·
2013-12-31 14:00
算法
线程
阻塞
如何让Java以光的速度跨线程通信?
阅读更多一个比
Disruptor
吞吐量等性能指标更好的框架,使用Railway算法,将线程之间的消费发送参考现实生活中火车在站点之间搬运货物。
wbj0110
·
2013-12-31 14:00
线程
阻塞
算法
LMAX架构(转)
平台上,核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单.业务逻辑处理器完全是运行在内存中(in-memory),使用事件源驱动方式(eventsourcing).业务逻辑处理器的核心是
Disruptor
s
wbj0110
·
2013-12-31 09:00
架构
LMAX
Disruptor
-NET和内存栅栏
Disruptor
-NET算法(是一种无锁算法)需要我们自己实现某一种特定的内存操作的语义以保证算法的正确性。这时我们就需要显式的使用一些指令来控制内存操作指令的顺序以及其可见性定义。
张善友
·
2013-12-30 22:27
程序
target
blank
设计者
栅栏
Disruptor
-NET和内存栅栏
Disruptor
-NET算法(是一种无锁算法)需要我们自己实现某一种特定的内存操作的语义以保证算法的正确性。这时我们就需要显式的使用一些指令来控制内存操作指令的顺序以及其可见性定义。
张善友
·
2013-12-30 22:27
程序
target
blank
使用JAVA实现高并发无锁数据库操作步骤分享
Java的
Disruptor
就是一个很好的例子。
·
2013-11-19 09:39
如何在高并发环境下设计出无锁的数据库操作(Java版本)
Java的
Disruptor
就是一个很好的例子。
辰
·
2013-11-18 22:00
如何在高并发环境下设计出无锁的数据库操作(Java版本)
Java的
Disruptor
就是一个很好的例子。如果用java的concurrentCollection类去做,原理就是启动一个线程,跑一个Queue,并发的时候,任务压
·
2013-11-18 22:00
java
false sharing
http://ifeve.com/
disruptor
-cacheline-padding/我喜欢在LMAX工作的原因之一是,在这里工作让我明白从大学和ALevelComputing所学的东西实际上还是有意义的
sunmenggmail
·
2013-11-17 23:00
十一月十五日小结
近来非常着迷一个高性能的多线程通信框架-
disruptor
。在看到它的11页的描述文档后,下决定要自己翻译出来它们。
huihuilou
·
2013-11-14 22:00
小结
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他