前言 Disruptor的高性能,是多种技术结合以及本身架构的结果。本文主要讲源码,涉及到的相关知识点需要读者自行去了解,以下列出: 锁和CAS 伪共享和缓存行 volatile和内存屏障 原理 此节结合demo来看更容易理解:传送门 添加了中文注释的源码:Disruptor 下图来自官方文档 官方原图有点乱,我翻译一下 在讲原理前,先了解 Disruptor 定义的术语 Event 存放数据的单位,对应 demo 中的 LongEvent Ring Buffer 环形数据缓冲区:这是一个首尾相接的环,用于存放 E…

2023年4月17日 0条评论 287点热度 0人点赞 王谷雨 阅读全文

前言 Disruptor是一个高性能的无锁并发框架,其主要应用场景是在高并发、低延迟的系统中,如金融领域的交易系统,游戏服务器等。其优点就是非常快,号称能支撑每秒600万订单。需要注意的是,Disruptor是单机框架,对标JDK中的Queue,而非可用于分布式系统的MQ 本文基于Disruptor v3.4.*版本 Demo 既然是简单使用,这阶段只需要关注: 生产者 消费者:EventHandler 消息的传递:消息的载体Event 简单例子 首先,我们定义消息的载体Event,生产者向消费者传递的消息通过Ev…

2023年4月10日 0条评论 357点热度 0人点赞 王谷雨 阅读全文