rocketmq的存储实现原理之commitlog

· 消息队列

rocketmq的存储实现原理之commitlog 在之前的《rocketmq的存储原理》文章中分析了rocketmq的存储过程主要是通过两个类来实现的分别是commitlog和MappedFile,这篇文章重点分析commitlog这个类的实现 初始化过程 comitlog对象是通过三个方法来负责初始化处理过程分别是构造方法commitLog()/加载方法load()/启动方法start(),这...

Read More →
#RocketMQ

Nacos使用指南

· 框架

Nacos使用指南 Nacos的定位是注册中心,支持目前主流的分布式架构K8S/RPC/RESTful。主要功能有 服务发现和服务健康监测 动态配置服务 动态 DNS 服务 服务及其元数据管理 构建Nacos Nacos docker clone项目 git clone https://github.com/nacos-group/nacos-docker.git cd nacos-doc...

Read More →
#Nacos

如何编写JavaAgent

· JVM

如何编写JavaAgent 这篇文章是根据MegaEase的袁伟老师的分享而来,地址是How To Write a JavaAgent 简介 java agent是什么? java agent是jdk1.5时候推出的一个在运行时动态修改class,从而达到动态修改行为的目的 能做什么? 功能与AOP类似,它的优势在与彻底和业务代码隔离,可以完成AOP相同的事情,并且不入侵业务代码,适合于日志采集、...

Read More →
#jvm #agent

通过WSL2编译JDK源码

· 杂记

通过WSL2编译JDK源码 WSL的全称是’Windows Subsystem for Linux’,通过在系统层面对Linux内核进行支持,WSL1只是部分支持Linux内核而WSL2支持完整的Linux内核。不但可以通过WSL运行Linux内核,甚至可以将Windows Docker指定通过WSL2来进行远行 WSL1 -> WSL2 安装Linux发行版 WSL1只需要开启Linu...

Read More →
#WSL

RocketMQ中NameSrv的详细设计分析

· 消息队列

RocketMQ中NameSrv的详细设计分析 设计目标 NameSrv是RoctetMQ项目下的一个模块,作为RockerMQ中的轻型注册中心,只负责与Topic有关的功能。 使用NameSrv来替代ZK等注册中心主要是有两个好处: 减少整体复杂性 一个分布式系统强依赖另外一个分布式系统,增加了整个系统的复杂性(整体代码复杂性、运维的复杂性); 使用内置的轻量级注册中心,就可以消除原来与ZK等...

Read More →
#RocketMQ

关于消息队列的一些历史

· 杂记

关于消息队列的一些历史 这是一篇关于消息队列的历史文章,有关消息队列的前世今生的一些信息。 起源 软件领域的消息队列最早是由Vivek Ranadive参考硬件中的系统总线提出来的,这老哥是一个印度裔,现在还是国王队的老板。 硬件领域中的系统总线主要分为数据总线、地址总线、控制总线这几个部分,用来连接不同的设备传输数据使用。 硬件上的系统总线着重在于通过线连接不同设备之间的交互,而消息队列是软件...

Read More →
#消息队列