PPXu

一张图汇总Arthas命令大全

Arthas 命令 Commands 排查 线上诊断
一图胜千言
更多

Dubbo配置连接数过大导致CPU飙升、OOM

OutOfMemoryError OOM Arthas 线上诊断 Dubbo Connections TCP连接 CPU飙升 Netty NettyServer GC
背景Dubbo服务上下游情况1.背景公司项目,Dubbo上游服务在元旦前夕流量突增,为应对突增流量带来的压力,上游(consumer)节点服务临时扩容一倍机器数量,而扩容操作完成之后,后续出现下游的部分(provider)节点服务器抛出异常,表现为下游机器的CPU使用率飙高达至大于100%的 ...
更多

Google Aviator的表达式缓存膨胀问题

Cache Google Aviator Expression 表达式 缓存 内存膨胀 GC Overhead limit exceeded OutOfMemoryError OOM
背景Aviator简介Aviator是一个高性能、轻量级的基于Java实现的表达式引擎,它动态地将String类型的表达式编译成Java ByteCode并交给JVM执行。Aviator 的基本过程是将表达式直接翻译成对应的 java 字节码执行,整个过程最多扫两趟(开启执行优先模式,如果是 ...
更多

RocketMQ-高可用

消息队列 分布式 异步 削峰
主从同步(HA)机制RocketMQ高可用方案RocketMQ的Broker分为Master与Slave两个角色,一般高可用方案,采取主从架构,具体也有一主一丛、多主多从(多对主从对)等部署方式,如图 主从架构的工作流程,就是在每台Broker配置他们的主从角色,同一个BrokerName的 ...
更多

RocketMQ-事务消息

消息队列 分布式 异步 削峰
RocketMQ 4.3 新版事务消息关于RocketMQ事务消息,之前有过一篇总结,此处再从编码实现上详细捋一捋。总体流程如下: 实现思路上就是两阶段提交(2PC)的思想,第一阶段是发送HalfMessage(或者说PreparedMessage),这种消息的特性是虽存储到Broker但未 ...
更多

RocketMQ-Consumer消息消费

消息队列 分布式 异步 削峰
消息被Producer发送到Broker后,消息消费端consumer既可请求broker拉取消息并开展消费处理。消息消费以组(Consumer Group)的模式开展,一个消费组内可以包含多个消费者,每一个Consumer Group可订阅多个Topic,Consumer Group之间有 ...
更多

RocketMQ消息存储

消息队列 分布式 异步 削峰
存储概要设计每个Broker都对应有一个MessageStore,专门用来存储发送到它的消息,不过MessageStore本身不是文件,只是存储的一个抽象,MessageStore 中保存着一个 CommitLog,CommitLog 维护了一个 MappedFileQueue,而Mappe ...
更多

RocketMQ-Producer消息发送

消息队列 分布式 异步 削峰
RocketMQ发送消息主流程RocketMQ发送消息主要流程:Producer在发送消息的时候,会根据消息的Topic,选出对应的路由信息,再挑选出具体某个队列,将消息发送至队列对应的Broker。 RocketMQ消息发送方式RocketMQ支持3种消息发送方式:同步(Sync)、异步( ...
更多

RocketMQ NameServer

消息队列 分布式 异步 削峰
路由中心Namesrv设计Namesrv就是RocketMQ的路由中心,也就是路由元信息的管理中心。主要作用是为消息生产者(Producer)、消费者(Consumer)提供关于主题(Topic)的路由信息,那么,Namesrv需要存储路由的基础信息,还要能管理Broker节点,包括路由注册 ...
更多

RocketMQ调试环境配置

消息队列 分布式 异步 削峰
调试环境及工具 JDK 1.8+ Maven IDE工具(Eclipse/IntelliJ IDEA) 拉取源码RocketMQ的官方仓库 https://github.com/apache/rocketmq ,为方便调试,可以 Fork 出属于自己的仓库。使用 ...
更多
Prev Next