最新文章列表

disruptor(二) MultiProducerSequencer

    在《disruptor(一) 单一生产者和WorkPool消费者源码阅读》介绍了单一生产者   当多个生产者向RingBuffer中写入数据时,创建Disruptor时要修改对应的参数:   Disruptor disruptor = new Disruptor(eventFactory, BUFFER_SIZE, executor, ProducerType.MULTI, ...
abc08010051 评论(0) 有3493人浏览 2015-10-09 17:09

disruptor(一) 单一生产者和WorkPool消费者源码阅读

 最近项目中有用到disruptor,提供一个类似队列或者数据容器的功能,并发能力很强   概念: Sequence:就是一个增长序列,类似oracle的增长序列,生产和消费程序都有Sequence,记录生产和消费程序的序列 Sequencer: 多个概念的一个组合,持有Sequence,等待策略等一些引用,生产者引用 SequenceBarrier:直接翻译就是序列屏障,就是Sequ ...
abc08010051 评论(2) 有7139人浏览 2015-10-09 11:45

剖析Disruptor:为什么会这么快?(一)Ringbuffer的特别之处(转)

最近,我们开源了LMAX Disruptor,它是我们的交易系统吞吐量快(LMAX是一个新型的交易平台,号称能够单线程每秒处理数百万的订单)的关键原因。为什 ...
wbj0110 评论(0) 有920人浏览 2014-01-03 09:31

如何使用Disruptor(二)如何从Ringbuffer读取(转)

ConsumerBarrier与消费者 这里我要稍微反过来介绍,因为总的来说读取数据这一过程比写数据要容易理解。假设通过一些“魔法”已经把数据写入到Ring Buffer了,怎样从Ring Buffer读出这些数据呢? (好,我开始后悔使用Paint/Gimp 了。尽管这是个购买绘图板的好借口,如果我继续写下去的话… UML界的权威们大概也在诅咒我的名字了。) 消费者( ...
wbj0110 评论(0) 有905人浏览 2014-01-03 09:31

如何使用 Disruptor(三)写入 Ringbuffer(转)

本文的 重点 是:不要让 Ring 重叠;如何通知消费者;生产者一端的批处理;以及多个生产者如何协同工作。 ProducerBarriers Disruptor 代码​ 给 消费者 提供了一些接口和辅助类,但是没有给写入 Ring Buffer 的 生产者 提供接口。这是因为除了你需要知道生产者之外,没有别人需要访问它。尽管如此,Ring Buffer 还是与消费端一样提供了一个 Produ ...
wbj0110 评论(0) 有916人浏览 2014-01-03 09:27

Disruptor(无锁并发框架)-发布(转)

假如你生活在另外一个星球,我们最近开源了一套高性能的基于消息传递的开源框架。 下面我给大家介绍一下如何将消息通过Ring buffer在无锁的情况下进行处理。 在深入介绍之前,可以先快速阅读一下Trish发表的文章,该文章介绍了ring buffer和其工作原理。   这篇文章的要点如下: 1.ring buffer是由一个大数组组成的。 2.所有ring buffer的“指针”(也 ...
wbj0110 评论(0) 有820人浏览 2014-01-03 09:26

LMAX Disruptor——一个高性能、低延迟且简单的框架(转)

Disruptor是一个用于在线程间通信的高效低延时的消息组件,它像个增强的队列,并且它是让LMAX Exchange跑的如此之快的一个关键创新。关于什么是Disruptor、为何它很重要以及它的工作原理方面的信息都呈爆炸性增长 —— 这些文章很适合开始学习Disruptor,还可跟着LMAX BLOG深入学习。这里还有一份更详细的白皮书。   虽然disruptor模式使用起来很简单,但是 ...
wbj0110 评论(0) 有1305人浏览 2014-01-03 09:25

Disruptor 2.0 - 所有的改变

这是 Trisha Gee 发表的 Disruptor 全解析系列博客的后续补充,原文链接是:http://mechanitis.blogspot.com/2011/08/disruptor-20-all-change-please.html​   Martin 最近公布了 Disruptor​ 的 2.0 版本​ —— 基本上,2.0 版自我们第一次开源以来有了如此多的改变,是需要把这些改 ...
in355hz 评论(1) 有2231人浏览 2013-02-20 15:17

Disruptor 全解析(7):解密内存屏障(Memory Barrier)

原文地址:http://mechanitis.blogspot.com/2011/08/dissecting-disruptor-why-its-so-fast.html​​, 作者是 Trisha Gee, LMAX 公司的一位女工程师。   我最近写文章的速度变慢了,是因为我一直在尝试写一篇博客解释内存屏障(Memory Barrier)以及它在 Disruptor​ 的应用。问题是, ...
in355hz 评论(0) 有9643人浏览 2013-02-11 00:39

Disruptor 全解析(6):为什么它这么快 (二) - 神奇的 cacheline 补齐

原文地址:http://mechanitis.blogspot.com/2011/07/dissecting-disruptor-why-its-so-fast_22.html​, 作者是 Trisha Gee, LMAX 公司的一位女工程师。   我们多次提到了 Mechanical Sympathy (机器协同?) 这个短语,事实上它甚至是Martin 的博客 标题。它的含义与理解底层计 ...
in355hz 评论(0) 有4478人浏览 2012-06-29 16:26

Disruptor 全解析(5):为什么它这么快 (一) - Locks Are Bad

原文地址: http://mechanitis.blogspot.com/2011/07/dissecting-disruptor-why-its-so-fast.html​​,作者是 Trisha Gee, LMAX 公司的一位女工程师。   Martin Fowler 写了一篇非常 ...
in355hz 评论(0) 有3064人浏览 2012-06-18 17:07

Disruptor 全解析(4):依赖关系组装

原文地址:http://mechanitis.blogspot.com/2011/07/dissecting-disruptor-wiring-up.html​ 作者是 Trisha Gee, LMAX 公司的一位女工程师。   现在我已经讲了 RingBuffer​ 本身,如何从它 读取​ 以及如何向它 写入​。   从逻辑上来说,下一件要做的事情就是把所有的知识拼接到在一起。
in355hz 评论(0) 有3298人浏览 2012-06-13 16:20

Disruptor 全解析(2):如何从 Ring Buffer 读取?

原文地址:http://mechanitis.blogspot.com/2011/06/dissecting-disruptor-how-do-i-read-from.html​​  作者是 Trisha Gee, LMAX 公司的一位女工程师。   这是理解 LMAX​ 开发的 Disruptor 模式​ 系列博客的下一篇。   从 
in355hz 评论(0) 有3975人浏览 2012-06-12 11:57

Disruptor 全解析(3):写入 Ring Buffer

原文地址:http://mechanitis.blogspot.com/2011/07/dissecting-disruptor-writing-to-ring.html​ 作者是 Trisha Gee, LMAX 公司的一位女工程师。   这是 Disruptor 全方位解析(end-to-end view)中缺少的一章。当心,本文非常长。但是为了让你能连在一起联系上下文的阅读,我还是 ...
in355hz 评论(0) 有3480人浏览 2012-06-08 15:49

Disruptor 全解析(1):Ring Buffer 有什么特别?

原文地址: http://mechanitis.blogspot.com/2011/06/dissecting-disruptor-whats-so-special.html​  作者是 Trisha Gee, LMAX 公司的一位女工程师。   最近我们开源了 LMAX Disruptor​,它是让我们的交易流程变得如此之快的关键。为什么要开源它?因为我们意识到大家对高性能编程的传统认知 ...
in355hz 评论(0) 有7620人浏览 2012-06-08 15:41

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics