开发者社区> 问答> 正文

最新版代码单核cpu100%

CanalLauncher启动类里没有sleep的while (running)导致服务器一个核cpu100%

原提问者GitHub用户waters321

展开
收起
古拉古拉 2023-05-08 15:17:36 82 0
2 条回答
写回答
取消 提交回答
  • 最新代码已经修复

    原回答者GitHub用户agapple

    2023-05-09 18:10:06
    赞同 展开评论 打赏
  • CanalLauncher 是整个 Canal 服务器的入口类。在启动 Canal 服务器时,CanalLauncher 会加载配置文件,初始化 Canal Server 的相关组件,并启动 Canal Server。

    关于您提到的问题,CanalLauncher 里没有 sleep 的 while (running) 导致服务器一个核 CPU 占用率为 100%,这可能是因为 Canal Server 在启动后没有进入正常的工作状态,导致线程一直处于运行状态,从而占用了一个 CPU 核心的资源。

    通常情况下,Canal Server 启动后会监听数据库的 binlog,并通过 Canal Client 解析 binlog 中的数据,将数据推送到 MQ 或其他下游数据处理系统中。如果 Canal Server 在启动后没有进行 binlog 监听或 Canal Client 解析工作,那么它就会出现您所描述的问题。

    如果您遇到了这个问题,可以检查 Canal Server 的日志,确保它能够正常地连接到数据库,并正常地监听 binlog。如果 Canal Server 已经正常地监听到了 binlog,但 CPU 占用率仍然很高,那么可能存在其他性能问题,需要进一步分析和排查。

    2023-05-08 15:52:08
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
RDS SQL Server CPU高使用率性能优化 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载