如何用go语言编写分布式应用保证数据一致性啊?

widon1104 2017-10-18 06:35:49
现在要用go语言编写应用,运行在多台主机上,需要保证每台主机上的应用维护的数据库都是一致的,有什么方法能够保证呢?每一个对数据库的请求都会发到这几台主机上,但是可能出现一台或多台主机断网的情况,这个时候就需要算法来保证数据库的状态是一致的了。还有可能出现数据库请求的次序不一致导致数据库状态不一致的问题。请问有什么算法,应用,库,或者文章能够帮助维护数据库的一致性呢?
...全文
368 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
whilewk 2019-12-10
  • 打赏
  • 举报
回复
raft共识算法
zjcxc 2017-10-19
  • 打赏
  • 举报
回复
举个具体的例子,比如扣款,有100的余额,在每台机器上都有现在断网了,某台(或几台)机器上收到一个需要扣款100的请求,技术上你能处理这个扣款么?
zjcxc 2017-10-19
  • 打赏
  • 举报
回复
没办法保证,数据一致性不是单纯的技术问题(除非不断网,通过锁控制并发,类似分布式事务) 最简单的一点,在断网的时间,每台机器都改了同一条记录,而且修改的时间点一样,都修改成不一样的东西,这个怎么同步? 这种情况是要业务规则 确定,不是技术说了算

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧