开发者社区> 问答> 正文

canal-1.1.4,客户端集群部署造成canal-server消息ack错乱

**问题:**使用canal-1.1.4,客户端集群部署(多客户端)连接canal-server,造成消息ack错乱。最终队列阻塞卡死。

**分析:**查阅了服务端源码,发现服务端可以根据clientId进行消息分组确认。但是提供的canal-client中实现的连接器将clientId写死成1001。导致多客户端并发ack时,server端响应失效

提问83.png

1、自行处理:解决这个问题,可以自定义CanalConnector,将clientId属性暴露出来。集群中的每个客户端都单独分配clientId

2、源码改造:SimpleCanalConnector可以多提供一个构造器,把clientId暴露出来,供选用

提问84.png

原提问者GitHub用户git-simm

展开
收起
山海行 2023-04-27 11:51:25 88 0
1 条回答
写回答
取消 提交回答
  • 目前canal-server不支持多client同时消费

    原回答者GitHub用户agapple

    2023-04-27 21:15:16
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
《边缘容器服务ACK@Edge》 立即下载

相关镜像