Disruptor LMAX学习
http://lmax-exchange.github.io/disruptor/
http://bruce008.iteye.com/blog/1408075
http://code.google.com/p/disruptor/wiki/CodeExampleDisruptor2x
http://www.symphonious.net/2011/07/11/lmax-disruptor-high-performance-low-latency-and-simple-too/
http://huangyunbin.iteye.com/category/287815 --系列文章
http://ifeve.com/dissecting-disruptor-whats-so-special/
生成者和Disruptor关联起来.
生成者是要首先占位置的,这个位置是通过ringBuffer的next实现的.
生成者ok之后是通过ringBuffer的publish标志那个位置对于消费者可用的.
而ringBuffer的产生就是由Disruptor的start生成的.
消费者和Disruptor关联起来.
首先消费者必须告诉Disruptor如何处理生产者留下了来的任务.说白了就是定义个有onEvent方法的EventHandler类.Disruptor通过handleEventsWith方法来接受EventHandler类.
在Disruptor中sequencer是生产者,consumer是消费者.表示位置信息的类是Sequence
这个时候生成者和消费者看上去 是没有关系的,但是他们都和Disruptor有关系.来看看Disruptor是如何做桥梁的吧.
生成者和消费者要的都只是对方的位置信息.
生成者获取消费者的位置信息
消费者的信息都会写到Disruptor的consumerRepository中去,[/size]
Disruptor LMAX学习的更多相关文章
- Disruptor系列(一)— disruptor介绍
本文翻译自Disruptor在github上的wiki文章Introduction,原文可以看这里. 一.前言 作为程序猿大多数都有对技术的执着,想在这个方面有所提升.对于优秀的事物保持积极学习的心态 ...
- 并发框架Disruptor浅析
1.引言 Disruptor是一个开源的Java框架,它被设计用于在生产者—消费者(producer-consumer problem,简称PCP)问题上获得尽量高的吞吐量(TPS)和尽量低的延迟.D ...
- Disruptor的应用示例——大文件拆分
结合最近Disruptor的学习,和之前一直思考解决的大文件拆分问题,想到是否可以使用Disruptor作为生产者/消费者传递数据的通道呢?借助其高效的传递,理论上应当可以提升性能.此文便是此想法的落 ...
- Disruptor Ringbuffer
系列译文: http://ifeve.com/disruptor/ 当有多个消费者时,(按Disruptor的设计)每个消费者各自控制自己的指针,依次读取每个Slot(也就是每个消费者都会读取到所有的 ...
- cache line 伪共享
https://blog.csdn.net/qq_27680317/article/details/78486220认识CPU Cache CPU Cache概述 随着CPU的频率不断提升,而内存的访 ...
- [翻译]高并发框架 LMAX Disruptor 介绍
原文地址:Concurrency with LMAX Disruptor – An Introduction 译者序 前些天在并发编程网,看到了关于 Disruptor 的介绍.感觉此框架惊为天人,值 ...
- LMAX Disruptor—多生产者多消费者中,消息复制分发的高性能实现
解决的问题 当我们有多个消息的生产者线程,一个消费者线程时,他们之间如何进行高并发.线程安全的协调? 很简单,用一个队列. 当我们有多个消息的生产者线程,多个消费者线程,并且每一条消息需要被所有的消费 ...
- The LMAX disruptor Architecture--转载
原文地址: LMAX is a new retail financial trading platform. As a result it has to process many trades wit ...
- LMAX Disruptor – High Performance, Low Latency and Simple Too 转载
原文地址:http://www.symphonious.net/2011/07/11/lmax-disruptor-high-performance-low-latency-and-simple-to ...
随机推荐
- Java注释规范整理
Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00018736 在软件开发的过程中总是强调注释的规范,但 ...
- TP Rate ,FP Rate, Precision, Recall, F-Measure, ROC Area,
TP Rate ,FP Rate, Precision, Recall, F-Measure, ROC Area, https://www.zhihu.com/question/30643044 T/ ...
- java-selenium下载百度图片
package download; import java.io.DataInputStream; import java.io.File; import java.io.FileOutputStre ...
- 认真研究下HTML之id、name、form、submit
#起因 同事希望在提交之后关闭父窗口,但是,始终没有提交请求发出.他的代码大概如下: // <form id='f' action=... // <button onclick='fun( ...
- Java数组搜索和比较
在Java中,如何搜索和比较数组? 示例 以下示例显示如何使用sort()和binarySearch()方法来完成任务.用户定义的方法printArray()用于显示输出 - package com. ...
- C# js 在页面能执行,放在单独js文件不能执行
我们先来看看MVC中生成的 注意:url.Content 生成的路径 Html.ActionLink 与 Url.Action 1.两者者是根据给定的Controller,Action 生成链接, 但 ...
- EF5+MVC4系列(7) 后台SelectListItem传值给前台显示Select下拉框;后台Action接收浏览器传值的4种方式; 后台Action向前台View视图传递数据的四种方式(ViewDate,TempDate,ViewBag,Model (实际是ViewDate.Model传值))
一:后台使用SelectListItem 传值给前台显示Select下拉框 我们先来看数据库的订单表,里面有3条订单,他们的用户id对应了 UserInfo用户表的数据,现在我们要做的是添加一个Ord ...
- win7下命令行提示符从C盘进入E盘的文件夹下
进入E:\papercode\3D-point-cloud-generation-master\3D-point-cloud-generation-master
- java使用javax.mail进行免费的邮件发送
1. 建议发送方使用阿里云邮箱https://mail.aliyun.com/,阿里云默认是开启个人邮箱pop3.smtp协议的,所以无需在阿里云邮箱里设置,pop3.smtp的密码默认邮箱登录密码, ...
- Hbuilder MUI里面使用java.net.URL发送网络请求,操作cookie
1. 引入所需网络请求类: var URL = plus.android.importClass("java.net.URL"); var URLConnection = plus ...