自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

中间件兴趣圈

主打成体系剖析java中间件,已发布RocketMQ、Kafka、Dubbo、Sentinel、Canal、ElasticJob、ElasticSearch等15个专栏。

  • 博客(352)
  • 资源 (5)
  • 收藏
  • 关注

原创 源码分析Dubbo专栏

本系列文章主要针对Dubbo2.6.2(dubbox2.8.4)版本,从源码的角度分析Dubbo内部的实现细节,加深对Dubbo的各配置参数底层实现原理的理解,更好的指导Dubbo实践,其目录如下:1、 源码分析Dubbo前置篇-寻找注册中心、服务提供者、服务消费者功能入口2、 源码分析Dubbo服务提供者启动流程-上篇3、 源码分析Dubbo服务提供者启动流程-下篇4、 源码分析Dubbo服务消费端启动流程5、 源码分析Dubbo Invoker概述----服务发现、集群、负载均衡、路由体系6

2021-08-23 22:25:37 669

原创 源码分析RocketMQ与运维实战

RocketMQ是笔者当前最突出的亮点,正是由于在CSDN中连载RocketMQ,最终促成了《RocketMQ技术内幕》一书的出版,也凭借此专栏的高质量,最终成为CSDN2020年年度博客之星TOP2。RocketMQ专栏目前已经输出48篇文章,并且被阿里巴巴相中,做成两本电子书被收录在阿里巴巴藏金阁,是笔者运维千亿级消息流转的实际经验,电子书详情如下图所示:获取方式:关注我,并私信回复 RMQPDF以下是RocketMQ专栏地址。1、RocketMQ源码分析之NameServer..

2021-08-23 22:14:20 883 3

原创 头条二面:你确定ThreadLocal真的会造成内存泄露?

本文换个角度,先思考ThreadLocal体系中的ThreadLocalMap为什么要设计成弱引用,再引申并辩证思考是否会发生内存泄露。

2021-08-23 12:19:47 5209 50

原创 java高并发高频面试题:Sempahore的使用场景与常见误区

吹个牛:我有一双“火眼金睛”,任你刷多少题,是否用过我一问便知。

2021-08-16 09:11:18 1198 10

原创 知乎高赞:java初学者如何通过自学快速找到第一份工作?

从零开始学习java路线图,找到工作后如何规划职业生涯,如何抓住职场奋斗发展黄金期。

2021-08-09 09:20:38 2466 8

原创 知乎高赞:如果一个程序员工作5年后还没成为大牛,是不是该考虑别的路子了?

一个二类本科生,在职场前5年未曾接触高并发等分布式场景,最终摸索出通过技术分享实现职场逆袭之路。

2021-08-04 22:38:32 9821 58

原创 答读者问:Kafka顺序消费吞吐量下降该如何优化?

Kafka拉取机制、顺序消费模型、痛点即解决方案(附完整代码)

2021-08-02 09:05:40 1330 11

原创 Kafka中的这只“千里眼”,你需要知道!!!

消费端遇到瓶颈时是否会让你手足无措,消费端端监控指标助你一臂之力,让你的决策有数据支撑,直接切中要害。

2021-07-25 18:43:44 728 6

原创 NIO界最强“Hello World”,不服来辩!!!

基于NIO实现主从多Reactor模型,助力领悟主从多Reactor模型

2021-07-18 18:05:19 2044 9

原创 写书给我带来了什么?

消息中间件领域畅销书《RocketMQ技术内幕》作者亲述

2021-07-14 12:06:00 583 3

原创 一文读懂kafka消息拉取机制|线程拉取模型

源码分析是手段,通过源码分析提取消息拉取线程模型、核心参数核心运作机制是王道

2021-07-11 10:10:27 7203 5

原创 怒肝15天终于将Kafka的重平衡一举拿下

30张图,深入剖析kafka重平衡机制,从架构角度思考重平衡相关协议变更是如何有效避免重平衡。

2021-07-04 17:09:13 1611 11

原创 Kafka消费组核心API与核心参数运行机制剖析

本文是《跟我学Kafka:从零开始学习Kafka》,开启从小白到专家的进阶之旅。将对Kafka Consumer做一个简单的介绍,是深入研究Kafka Conumer的一扇窗。本文主要从如下三个方面展开:核心参数核心组件核心API1、Kafka Consumer核心参数览个人觉得,要想深入了解Kafka Consumer的核心工作机制可以从它的核心参数切入,为后续深入了解它的队列负载机制、消息拉取模型、消费模型、位点提交等机制打下基础。kafka Consumer的核心属性定义在Consu

2021-06-27 20:49:47 989 7

原创 Kafka性能调优实战:同等资源配置性能提升20几倍的秘诀

打破思维惯性,异步发送也能保证顺序性语义?

2021-06-20 20:31:06 1569 14

原创 顺序消费可没你想的这么简单,队列数量的变更往往无法保证同一个账号的消息发送到同一个分区,怎么解决?

RocketMQ顺序消费在金融行业中的应用实战

2021-06-15 00:10:54 13610 17

原创 面试官:你是如何诊断Kafka消息发送到瓶颈在哪里(有的放矢才是性能优化的正确打开方式)

掌握一到两门java主流中间件,是敲开BAT等大厂必备的技能,送给大家一个Java中间件学习路线,助力大家实现职场的蜕变。Java进阶之梯,成长路线与学习资料,助力突破中间件领域在消息发送端遇到性能瓶颈时是否有办法正确的评估瓶颈在哪呢?如何针对性的进行调优呢?1、Kafka 消息发送端监控指标其实Kafka早就为我们考虑好了,Kafka提供了丰富的监控指标,并提供了JMX的方式来获取这些监控指标,在客户端提供的监控指标如下图所示:主要的监控指标分类如下:producer-metrics消

2021-06-06 16:38:28 2579 17

原创 第一次尝试为Apache顶级开源项目贡献代码

我们离Apache顶级开源项目其实也很近。

2021-05-30 23:07:53 2895 22

原创 架构师需要编码?

架构师的职责是什么?到底需要写代码吗

2021-05-24 09:47:08 1084 11

原创 通过一个Kafka故障解决过程阐述架构师必须具备的架构思维

本文不仅展示的Kafka分区迁移实战,更是体现一位架构师面面对线上故障做架构方案的设计思维。

2021-05-20 22:20:12 3098 17

原创 跟我学Kafka:Kafka消费组运维详解

kafka系列第二篇,该系列将见证笔者从Kafka小白进阶专家之路,欢迎各位小伙伴关注,一起前行。

2021-05-16 21:25:58 4280 17

原创 跟我学Kafka:如何高效运维之主题篇

kafka系列第一篇,蕴含了笔者的学习方法,该系列将见证笔者从Kafka小白进阶专家之路,欢迎各位小伙伴关注,一起前行。

2021-05-16 21:20:28 2348 10

原创 RocketMQ ACL版本升级过程中的曲折经历(大厂线上环境大规模MQ升级开启ACL实战)

RocketMQ是一款非常优秀的主流中间件,本文是RocketMQ系列的第52篇文章,重点阐述笔者在公司升级RocketMQ集群并开启ACL的真实经历,并且遇到的一些问题及其解决方案,实战性非常强。1、ACL机制的重要性某一天突然接到安全团队的通知,公司内网部署的RocketMQ集群安全性非常低,需要立马整改。接到安全团队的通知,马上开启了复盘,公司内部的RocketMQ集群还是基于RocketMQ4.1搭建的,存在重大安全隐患,因为生产环境的任意一台机器,不需要知道RocketMQ集群所在机器的密码

2021-05-09 20:49:20 1761 11

原创 我是全网最硬核的Java中间件领域作者,CSDN最值得关注的博主,大家同意吗?(建议收藏)

大家好,我是 CSDN2020博客之星亚军获得者,著有畅销书《RocketMQ技术内幕》、荣获RocketMQ社区优秀布道师。通过技术分享实现了从一个普通二类本科毕业生、从曾未接触高并发经验逆袭成为大厂资深架构师,个人觉得我的职场生涯还是比较励志的,具有普适性、可复制性。初入职场的我进入到一家国企,主要从事传统的电子政务系统的开发,在前5年中没有机会接触高并发,大数据,经过一年左右的迷茫,最终决定走上技术分享之路,主攻Java中间件,经过5年左右时间的分享,已经发表了12个Java主流中间件专栏,主要以源

2021-05-06 11:54:27 4464 13

原创 面试官:RocketMQ一个消费组内订阅同一个主题不同的TAG为什么会丢消息

看源码并不是目的,理解内部的运作机制才是关键,为遇到问题提供解决思路。

2021-04-30 12:35:37 3901 6

原创 各位学弟学妹们,参与Apache顶级开源项目并没有想象中的难

《RocketMQ技术内幕》一书作者、Apache顶级开源项目RocketMQ优秀布道师谈谈如何参与开源项目,打造自身影响力,助力职场进阶。

2021-04-29 00:33:33 1794 6

原创 性能调优篇:困扰我半年之久的RocketMQ timeout exception 终于破解了

在内网环境中,超时问题,网络表示这个锅我不背。经过这次漫长的排查过程,对网络抓包、TCP滑动窗口、Netty线程模型的理解更加深刻了。

2021-04-28 20:51:09 6379 13

原创 学弟学妹们请不要错过自己的“黄金奋斗三年”,一份宝贵的失败经验送给大家

经过我的技术分享,让我结识了一大批忠实的粉丝,从粉丝们的反馈来说,工作经验在2,3年左右进入BATM等头部互联网企业的人数很多,他们真切的感觉到深入学习一两门中间件是非常有必要的。...

2021-04-25 09:01:42 9161 20

原创 为什么Kafka在2.8版本中会“抛弃”Zookeeper,选择拥抱Raft?

相信大家最近一定关注到一款重量级消息中间件Kafka发布了2.8版本,并且正式移除了对Zookeeper的依赖,背后的设计哲学是什么呢?仅仅只是减少了一个外部依赖吗?答案显然不会这么简单,容我慢慢道来。在解答为什么之前,我觉得非常有必要先来阐述一下Zookeeper的经典使用场景。1、Zookeeper的经典使用场景zookeeper是伴随着大数据、分布式领域的兴起。大数据中的一个非常重要的议题是如何使用众多廉价的机器来实现可靠存储。所谓廉价的机器就是发生故障的概率非常大,但单台的成本也非常低,分

2021-04-20 23:42:14 12901 21

原创 线上环境大规模RocketMQ集群不停机优雅升级实践

试图通过生产环境升级RocketMQ这个具体事项阐述一名架构师如何做架构方案设计、如何落地,一名优秀的架构师需要具备的最核心素质是什么?

2021-04-18 22:53:43 1627 5

原创 如何吃透一个java项目

从从未接触过MQ,从零开始研究RocketMQ,最终出版《RocketMQ技术内幕》一书,在这里谈谈分享一下我的学习方法。

2021-04-16 15:16:54 10995 16

原创 阿里二面:NIO为什么不适合文件上传场景、如何优雅解决

该系列已分别介绍了服务端、客户端的启动流程,本文将重点剖析Netty是如何封装NIO的读事件。温馨提示:本文虽然是源码分析,但强烈建议精读,因为根据源码阐述其背后的设计哲学,也用黑体进行了标注,请特别留意。文章目录1、读事件概述2、IO读事件从处理流程3、接受连接处理流程1、读事件概述关于Read事件在SocketChannel与ServerSocketChannel所对应的操作不一样,在SocketChannel中,则对应数据读,而在ServerSocketChannel中则被被封装成接受客户

2021-04-14 22:44:21 7363 10

原创 大厂Offer收割机:Netty优雅的网络写设计之连坏4问

写事件需要先注册才能往通道中写入数据?什么时候需要向通道注册写事件呢?业务线程池执行业务逻辑后,是如何通过IO线程将数据写入到网络中的呢?Netty中如何针对写限流?

2021-04-01 00:12:42 4666 10

原创 读写锁在高性能消息中间件RocketMQ中的妙用

《RocketMQ技术内幕》作者、博客:https://www.codingw.net/,专注成体系剖析java主流中间件,打造完备的互联网分布式架构体系。已发布12个java主流中间件源码分析专栏。

2021-03-31 22:17:50 3478 6

原创 《我要进大厂》系列之ReentrantLock与synchronized两种锁的区别

在大厂面试中,特别是第一轮技术面试中,锁是一个非常高频的主题,在JDK中主要提供了两种方式:JUC(JAVA并发框架)中的ReentrantLock与synchronized关键字。那这两种有何区别呢?在实际工作中又如何选取呢?ReentrantLock 实现 synchronized 的语义,提供多线程的同步阻塞语义,即我们通常意义上的同步锁,但 ReentrantLock 的使用更加灵活,提供了synchronized关键字不具备的功能特性。1、可重入性ReentrantLock 与 synch

2021-03-29 23:15:43 4100 9

原创 这些关于线程池相关的高频面试题你都知道吗

《RocketMQ技术内幕》作者、博客:https://www.codingw.net/,专注成体系剖析java主流中间件,打造完备的互联网分布式架构体系。已发布12个java主流中间件源码分析专栏。

2021-03-24 23:52:54 6013 7

原创 面试官:你是如何判断一个线程池需要创建多少个线程

目前按照我看过的一些开源框架,线程池中线程数量主要是根据应用的类型:IO密集型(2n +1 ),CPU密集型设置为 n + 1。但实际情况往往复杂的多,不会按照这个进行设置,进行这种设置,通常是框架层面,例如netty,dubbo这种底层通讯框架会参考这样的标准去设置,在实际业务中往往不会这样做。对于IO密集型网上还有一个公式:线程数 = CPU核心数/(1-阻塞系数)这个阻塞系数一般为0.8~0.9之间,可以取0.8或者0.9。我觉这个公式有一定的道理,考虑了阻塞的概念。在我们的业务开发中,基本

2021-03-23 23:57:28 12519 15

原创 知乎高赞:为什么同样是分布式架构的Kafka需要Leader而Redis不需要

《RocketMQ技术内幕》作者、博客:https://www.codingw.net/,专注成体系剖析java主流中间件,打造完备的互联网分布式架构体系。一文详细剖析分布式存储领域的负载均衡(数据分片)与数据一致性方案设计理念

2021-03-22 12:11:24 5987 16

原创 遇到与领导意见相左时这样做能让你在职场上如鱼得水

《RocketMQ技术内幕》作者、博客:https://www.codingw.net/,专注成体系剖析java主流中间件,打造完备的互联网分布式架构体系。

2021-03-19 07:48:22 4468 20

原创 剥丝抽茧|阿里面试题解读:MQ消费端遇到瓶颈该怎么办?

除了横向扩容外还有其他什么办法吗?

2021-03-15 12:09:34 9242 33

原创 我的CSDN直播首秀来了:技术分享成就精彩程序人生(直播间还送福利哦)

2020博客之星评选活动刚刚落下帷幕,博客之星亚军获得者有感而发:技术分享之路让他收获良多,从一名没有互联网经验,未曾接触过分布式服务、大数据、高并发逆袭成为中通科技资深架构师,负责消息中间件、全链路压测、数据同步等的研发,特别是运维日均消息流转千亿级的消息集群。《RocketMQ技术内幕》一书的问世也直接来源于技术分享。直播地址:https://live.csdn.net/room/prestigeding/nC7S2glw我与哈罗高级技术专家梁勇合著的《RocketMQ实战与原理》专栏大优惠,原价

2021-03-12 17:33:31 2190 12

rocketmqpdf.zip

根据RocketMQ专栏整理的电子书籍,覆盖笔者运维千亿级消息流转的运维经验。

2021-04-28

rocketmq实战与源码分析.zip

由阿里巴巴根据[中间件兴趣圈]RocketMQ专栏文章,整理的两本电子书,总的来看主要从如下三部分进行展开: 1线上故障分析结合笔者日均消息流转千亿级别的消息集群的运维经验、网友的问题提问整理提取的精华。 2 源码分析篇主要是对RocketMQ4.4.0及其后续版本中的新加入的功能进行源码级别的剖析,主要包括ACL、消息轨迹、多副本。 3 认知篇主要展示笔者阅读源码的经验分享,以及如何以布道师的身份参与Apache顶级开源项目的经历。

2021-03-13

Netty实现私有协议,模仿dubbo单一长连接RPC服务调用,心跳检测机制源码

1、客户端与服务端基于单一长连接进行通信,客户端一条连接被多个线程使用。 2、实现私有协议 请求协议 协议头:4字节的请求序列号 2字节的请求类型 2字节数据包长度 数据部分: 服务调用:2字节请求服务名长度 若干字节请求服务名 2字节请求参数长度 若干字节参数 心跳包:数据部分无 响应信息 协议头:4字节的请求序列号 2字节的执行状态码 2字节数据长度 数据部分: 多字节的响应数据信息(data) 3、代码基于Netty5

2017-03-09

Twemproxy 0.4.1

Twemproxy 构建redis集群 twemproxy最新版本 0.4.1

2016-05-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除