文章目录
问题
我有两个服务一个叫05一个叫15 然后用的cap总线+rabbitmq
05消息队列发了一条延时消息,到时间了05服务的订阅者能收到 15服务订阅同一个消息的没收到(cap的cashboard)(手动requeue05和15都能收到)
相关回答:.net6 cap总线+rabbitmq延时消息收不到
问题代码
05:连接数据库配置:
"DbConnectionString": "Data Source=10.2.8.216,2433;Initial Catalog=xxx;Persist Security Info=True;User ID=xxxx;Password=xxxxx;Connect Timeout=500;TrustServerCertificate=true;",
15:连接数据库配置:
"DbConnectionString": "Data Source=10.2.8.216,2433;Initial Catalog=xxxx;Persist Security Info=True;User ID=xxxxx;Password=xxxxx;Connect Timeout=500;TrustServerCertificate=true;",
原因
05服务同时有消息的生产者和消费者,15只有消息的消费者。
两个服务连接的同一个数据库,导致cap的消息先别05取走(对应数据库Received表,另有Published表)
解决
05部署自己的数据库
处理Bug的具体步骤
- 重现BUG
- 确定发生BUG的过程时都做了哪些动作
- 桌面检查:把自己的脑子作为CPU,运行从开始操作到出现BUG的操作、处理的数据,分析出现问题的原因
- 调试:确定问题出现的原因
- 确定解决方案
- 修复BUG
- 回归测试:确定已BUG已修复并没引入新问题