Message Queue Stream Based on Mysql Implementation EMSExtend MySQL Stream; 一种基于 MySQL 实现的 stream 队列. 功能 通用 api,已有代码无需修改 集群消费、广播消费 自动重试、死信队列 快速重置消息位点,快速回放消息,快速查询消息 消息可基于磁盘积压、消息可快速清理 监控 group 积压,topic 消息量排行,消息链路追踪,消息消费超时告警; 读写性能 1200-3000 QPS 左右 写入设计ms 2023-09-02 openSource
Java LinkageError Loader Constraint 分析 前言作为 java 程序员, 我们经常遇到该错误, 特别是在传统的 web 容器里, 例如 tomcat, jetty; 例如 stackoverflow 上的经典错误; StandardClassLoader 尝试加载 ExpressionFactory, 但 ExpressionFactory 已经被 JasperLoader 加载过了; https://stackoverflow.com/q 2023-08-21 基础
Java 堆外内存排查 概述Java 内存排查,一直是不容易的事情,堆内内存还好,只要有 dump 文件,放到 MAT 分析下,基本就可以了,但是堆外内存,一直是个老大难问题。我们经常会遇到以下几个问题: 为什么我配置了 Xmx2G,系统告警说内存用到了 4G? 为什么配置了-XX:MaxDirectMemorySize 却没有效果? 为什么 jdk 提供的工具,无法检查出堆外内存? Xmx 和 Xms 设置相同,理论 2023-08-15 openSource
EXP 一款 Java 插件化热插拔框架 前言多年以来,ToB 的应用程序都面临定制化需求应该怎么搞的问题。 举例,大部分本地化软件厂家,都有一个标准程序,这个程序支持大部分企业的功能需求,但面对世界 500 强等大客户时,他们的特殊需求,厂家通常是无法拒绝的(通常因为订单大,给的多,可背书)。比如使用非标准数据库,业务流程里加入一些安全检查等,回调里加入一些定制字段等; 由此而来的需求,一般有几种解决方案; 将这个需求做进标准产品里 2023-08-15 openSource
Java 技术栈(Warning) JVM 相关 运行时结构 GC 算法 JVM 调优 热部署、字节码 数据结构与算法 数组,链表,栈,队列 二叉树、红黑树,完全二叉树、B+ 树 散列表、跳表、堆(优先级队列) 排序算法 查找和搜索 高级数据结构和算法 OS 进程线程 内存 IO 磁盘,文件系统 CPU 网络 并发编程 Java 内存模型 happen before JDK 工具类、容器类,synchronize、volati 2023-07-19 基础
深入理解 Skywalking Agent 概述 Agent 功能介绍 + 整体结构 + 设计 插件机制详解 Trace Segment Span 详解 异步 Trace 详解 如何正确地编写插件并防止内存泄漏 扩展:如何基于 Skywalking 打造全链路压测 总结与参考 概述在 APM 和全链路监控领域,Skywalking 是非常有名的项目,我司使用的就是该方案来进行应用性能监控和分布式链路跟踪。而我本人最近的工作和 Skywa 2022-04-04 Skywalking
MOSN 动态路由的使用 在使用 MOSN 进行路由时,默认的路由策略可能无法满足你的需求,例如,当你的服务集群里,有多个版本时,就需要更复杂的路由逻辑。通常 proxy 在处理此类问题时,都会使用 subsets 的方案。 关于此功能更详细的介绍,可参考 envoy 的 文档. 下面介绍如何在 MOSN 中,使用 subset 来动态路由分组。 1 设置 host 的 subSet key 和 MetaData 上面的 2021-11-25 mosn,service mesh #service mesh
Zuul 2.1.5 设计分析 前言https://github.com/Netflix/zuul zuul 是 SpringCloud 家族老兵,使用 Java 微服务大部分都在使用 zuul 作为网关。既然他如此重要,那么我们就来分析一下。本文分析的是 zuul 2.1.5版本。 调用链路首先,我们知道,zuul 基于 Netty,Netty 是异步网络框架。我们从调用链路出发,分析下 Zuul 的调用链路是如何串起来的。 2021-11-25 zuul #网关
基于 Canal 设计可扩展、高可用 Binlog 同步集群 问题https://github.com/alibaba/canal binlog 同步组件,canal 使用是比较广泛的,canal 逻辑架构如图: 部署架构如图: canal 基于主从模式,任务都运行在 master 中,client 从 master 拉取数据。在使用 canal server 的过程中,我们遇到了一些问题,例如扩展性不足,默认情况下,当任务流量变多变大时,单机无法支持大 2021-11-15 Canal
远程工作阅读学习笔记 原文链接黄东旭 : PingCAP 的 5 年远程办公实践 左耳朵耗子:疫情下的远程办公,聊聊我的经验和实践 PingCAP 架构师 siddontang : 一年多远程工作带给我的感悟 1 管理哲学到底是要“监督”还是“自驱”?如果是后者的话,则需要一个强大的愿景作为驱动. 2 细节1 分享:每周让每个人分享自己的工作感悟和心得,然后发精心挑选的奖品; 2 目标和管理: OKR 计划指定和执行 2020-02-26 工作效率