Netty实战篇:一次Netty堆外内存泄露排查
背景最近在做一个基于 websocket 的长连中间件,服务端使用实现了 socket.io 协议(基于websocket协议,提供长轮询降级能力) 的 netty-socketio 框架,该框架为 netty 实现,鉴于本人对 netty 比较熟,并且对比同样实现了 socket.io 协议的其
Topic太多!RocketMQ炸了!
最近排查一个问题,发现RocketMQ稳定性同样受到topic数量影响!!
Dubbo No provider问题排查思路
使用过Dubbo的朋友很多都碰到过如下报错: No provider available for the service org.newboo.basic.api.MyDemoService from registry 127.0.0.1:2181 on the consumer 127.0.0.
Netty堆外内存泄漏排查盛宴
最近在做一个基于 Websocket 的长连中间件,服务端使用实现了 Socket.IO 协议(基于WebSocket协议,提供长轮询降级能力) 的 netty-socketio 框架,该框架为 Netty 实现,鉴于本人对 Netty 比较熟,并且对比同样实现了 Socket.IO 协议的其他框架
记录一次 Nginx 配置 proxy_pass 后 返回404问题
 目录一、 Nginx 配置 proxy_pass 后 返回404问题 故障解决和定位1.1、 问题1.2、 寻找问题原因1.3、 proxy_set_header 官方信息1.4、 解决办法二、扩展 常用的配置1. $proxy_host2. $host
生产故障|Kafka消息发送延迟达到几十秒的罪魁祸首竟然是...
以前我在知其然而知其所以然,为什么Kafka在2.8版本中会“抛弃”Zookeeper一文中阐述了为什么官方要废弃Zookeeper,当时有读者反驳说zookeeper非常稳定,基本不会出现什么问题,笔者在双十一期间遇到的问题,就证明了Zookeeper的“脆弱性”
一次C10K场景下的线上Dubbo问题排查及优化
导语Dubbo 是一款轻量级的开源 Java 服务框架,是众多企业在建设分布式服务架构时的首选。中国工商银行自 2014 年开始探索分布式架构转型工作,基于开源 Dubbo 自主研发了分布式服务平台。Dubbo 框架在提供方消费方数量较小的服务规模下,运行稳定、性能良好。随着银行业务线上化、多样
【全网首发】RocketMQ控制台消费者堆栈信息展示优化分析
背景介绍专有云企业版v_3_12,消息队列RocketMQ控制台->Group管理,查看Group ID下单个消费端堆栈信息,期望只展示与该Group ID相关的堆栈信息,在以下场景与期望不符。场景介绍在同一个程序中创建两个不同Group ID的消费端实例,在控制台中查看一个Group
解Bug之路-串包Bug
解Bug之路-串包Bug笔者很热衷于解决Bug,同时比较擅长(网络/协议)部分,所以经常被唤去解决一些网络IO方面的Bug。现在就挑一个案例出来,写出分析思路,以飨读者,希望读者在以后的工作中能够少踩点坑。串包Bug现场前置故障Redis超时由于某个系统大量的hget、hset操作将Redi
生产环境MQ集群一个非常诡异的消费延迟排查
问题现象某一天,项目组一个同事向我反馈,他们使用公司的数据同步产品将MySQL数据同步到MQ集群,然后使用消费者将数据再同步到ES,反馈数据同步延迟严重,但对应的消费组确没有积压,但最近最近几分钟的数据都没有同步过来。那问题来了,消费端没有消费积压,而且通过查看数据同步平台该通过任务的同步状态,
【全网首发】翻车了,被读者找出 BUG
本文是上篇文章《使用增强版 singleflight 合并事件推送,效果炸裂!》的续集
可观测性神器之Micrometer
Micrometer工具,这里就详细的来介绍下可观测性神器Micrometer,让你在开发时使用它就和使用SLFJ 日志系统一样简单易用,有效的提升系统的健壮性和可靠性。
解Bug之路-中间件"SQL重复执行"
前言我们的分库分表中间件在线上运行了两年多,到目前为止还算稳定。在笔者将精力放在处理各种灾难性事件(例如中间件物理机宕机/数据库宕机/网络隔离等突发事件)时。竟然发现还有一些奇怪的corner case。现在就将排查思路写成文章分享出来。Bug现场应用拓扑应用通过中间件连后端多个数据库,sq
Spring Boot 多个定时器冲突排查和优化过程
导语实际开发项目中一定不止一个定时器,很多场景都需要用到,而多个定时器带来的问题 : 就是如何避免多个定时器的互相冲突。 正文使用场景我们的订单服务,一般会有一个待支付订单,而这个待支付订单是有时间限制的,比如阿里巴巴的订单是五天,淘宝订单是一天,拼多多订单是一天,美团订单是15
通过 Pulsar 源码彻底解决重复消费问题
背景最近真是和 Pulsar 杠上了,业务团队反馈说是
一个诡异的 Pulsar InterruptedException 异常
今天收到业务团队反馈线上有个应用往 Pulsar 中发送消息失败了,经过日志查看得知是发送消息时候抛出了 java.lang.InterruptedException 异常。
RabbitMQ采坑记
RabbitMQ介绍RabbitMQ是一个高可用和数据安全的消息管理系统。在业务中多应用实现业务间交互的异步解耦,通过MQ中间件实现业务的削峰填谷,保障业务避免高峰期流量激增冲击。简单说就是类似Kafka、RokectMQ消息中间件的存在,但相较其他消息中间件RabbitMQ提供了友好的后台管理和
Nginx代理后getServerName()方法获取不到域名
当使用了Nginx代理,会出现Java用HttpServletRequest的getServerName()方法获取不到域名,而是127.0.0.1的情况复现首先修改本地的hosts文件来模拟域名访问将test.com添加到配置中然后写一个接口来输出getServerName()方法 @

有开始,就会有进​步!

在追求性能的道路上,记录每一刻的成长!源码解读,编程技巧,外文翻译,技术实践,线上案例等等,记录自己,启发他人!

专家作者推荐

巡山小汪

关注微信公众号《解Bug之路》,有问题请在公众号中咨询:) 无论多么艰苦的时刻,都不要忘记,辉煌的未来,在你的眼中闪耀!

飞哥开发内功

《深入理解Linux网络》作者,腾讯搜狗十年工程师,公众号「开发内功修炼」作者!

踩刀诗人

聊聊技术,唠唠段子,偶尔做菜写诗,欢迎关注我的公众号 踩刀诗人

Brand

搜索关注微信公众号【架构与思维】:撰稿者为bat、字节的几位高阶研发/架构,专注技术分享。

专题推荐

Netty 是一个异步事件驱动的网络通信层框架,用于快速开发高可用高性能的服务端网络框架与客户端程序,它极大地简化了 TCP 和 UDP 套接字服务器等网络编程。
作者:闪电侠,《跟闪电侠学 Netty》已出版了。书的前半部分是掘金小册中的内容:通过一个完整的 IM 项目入门 Netty;后半部分用了较大的篇幅来介绍 Netty 的底层原理,也会穿插讲一些源码阅读的思路,希望能够帮助到你。
13篇文章21840阅读量
Out of memory (OOM) 是一种操作系统或者程序已经无法再申请到内存的状态。经常是因为所有可用的内存,包括磁盘交换空间都已经被分配了。OOM的官方解释是:Understand the OutOfMemoryError Exception,根据HeapDump性能社区专属讲师公与的总结,常见的OOM有以下10种(其中OOM Killer是操作系统层面的概念)。
11篇文章12748阅读量