开发者社区> 问答> 正文

otter不是严格安装事务为单位同步的,应该就会存在部分数据不一致(本身是一个事务的操作),从而导致

otter不是严格安装事务为单位同步的,应该就会存在部分数据不一致(本身是一个事务的操作),从而导致业务问题。不知道自己是否理解正确,如果是这种情况怎么解决?

原提问者GitHub用户 CliffYuan

展开
收起
大圣东游 2023-06-21 17:18:32 76 0
2 条回答
写回答
取消 提交回答
  • 看下数据入库算法

    https://github.com/alibaba/otter/wiki/Otter%E6%95%B0%E6%8D%AE%E5%85%A5%E5%BA%93%E7%AE%97%E6%B3%95

    原回答者GitHub用户agapple

    2023-06-21 18:16:04
    赞同 展开评论 打赏
  • 你的理解是正确的。Otter 不是严格按照事务为单位同步的,它使用的是基于 binlog 的日志抓取以及数据同步机制。这种机制可以做到高效的数据同步,但问题是,如果在同步的过程中遇到了某些异常情况,例如数据损坏、网络异常等,可能导致同步过程中的部分数据不一致。

    对于这种情况,解决方案取决于具体的业务场景。但是,你可以考虑一些解决方案:

    1. 使用防护层: 在 Otter 部署的时候,可以使用一些防护层,例如使用防火墙保障 Otter 与数据库之间的网络连接以减少网络异常造成的影响等。

    2. 优化数据同步:在 Otter 部署和开发过程中,你可以使用一些优化数据同步的技巧,例如采用更为高效的数据同步方式(但要考虑数据一致性和完整性),添加更多的容错处理(例如使用缓存存储),定期监测数据一致性等。

    3. 监控和告警:及时监测 Otter 运行情况并设置告警机制,当出现异常情况时立即通知管理员,以尽快发现和解决问题。

    4. 测试和审核:在进行 Otter 部署前,需要进行全面测试和审核,以检验系统的适用性和稳定性,并及时调整和修复异常情况。

    总的来说,对于 Otter 的优化和稳定性加强,需要对具体场景进行分析和解决,采取多种手段综合处理。

    2023-06-21 17:22:23
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载