Java中处理Pulsar引发的InterruptedException异常的最佳方法是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2214个文字,预计阅读时间需要9分钟。
目录 + 背景 + 前置排查 + Pulsar + 源码排查 + 定位问题 + 总结 + 背景 + 今日收到业务团队反馈线上有个应用 + Pulsar + 中间发送消息失败,经日志查看,知是发送消息时抛出 + java.lang.InterruptedException
目录
- 背景
- 前置排查
- Pulsar 源码排查
- 定位问题
- 总结
背景
今天收到业务团队反馈线上有个应用往 Pulsar 中发送消息失败了,经过日志查看得知是发送消息时候抛出了 java.lang.InterruptedException 异常。
和业务沟通后得知是在一个 gRPC 接口中触发的消息发送,大约持续了半个小时的异常后便恢复正常了,这是整个问题的背景。
前置排查
拿到该问题后首先排查下是否是共性问题,查看了其他的应用没有发现类似的异常;同时也查看了 Pulsar broker 的监控大盘,在这个时间段依然没有波动和异常;
这样可以初步排除是 Pulsar 服务端的问题。
接着便是查看应用那段时间的负载情况,从应用 QPS 到 JVM 的各个内存情况依然没发现有什么明显的变化。
Pulsar 源码排查
既然看起来应用本身和 Pulsar broker 都没有问题的话那就只能从异常本身来排查了。
本文共计2214个文字,预计阅读时间需要9分钟。
目录 + 背景 + 前置排查 + Pulsar + 源码排查 + 定位问题 + 总结 + 背景 + 今日收到业务团队反馈线上有个应用 + Pulsar + 中间发送消息失败,经日志查看,知是发送消息时抛出 + java.lang.InterruptedException
目录
- 背景
- 前置排查
- Pulsar 源码排查
- 定位问题
- 总结
背景
今天收到业务团队反馈线上有个应用往 Pulsar 中发送消息失败了,经过日志查看得知是发送消息时候抛出了 java.lang.InterruptedException 异常。
和业务沟通后得知是在一个 gRPC 接口中触发的消息发送,大约持续了半个小时的异常后便恢复正常了,这是整个问题的背景。
前置排查
拿到该问题后首先排查下是否是共性问题,查看了其他的应用没有发现类似的异常;同时也查看了 Pulsar broker 的监控大盘,在这个时间段依然没有波动和异常;
这样可以初步排除是 Pulsar 服务端的问题。
接着便是查看应用那段时间的负载情况,从应用 QPS 到 JVM 的各个内存情况依然没发现有什么明显的变化。
Pulsar 源码排查
既然看起来应用本身和 Pulsar broker 都没有问题的话那就只能从异常本身来排查了。

