社区
MySQL
帖子详情
如何用go语言编写分布式应用保证数据一致性啊?
widon1104
2017-10-18 06:35:49
现在要用go语言编写应用,运行在多台主机上,需要保证每台主机上的应用维护的数据库都是一致的,有什么方法能够保证呢?每一个对数据库的请求都会发到这几台主机上,但是可能出现一台或多台主机断网的情况,这个时候就需要算法来保证数据库的状态是一致的了。还有可能出现数据库请求的次序不一致导致数据库状态不一致的问题。请问有什么算法,应用,库,或者文章能够帮助维护数据库的一致性呢?
...全文
418
3
打赏
收藏
如何用go语言编写分布式应用保证数据一致性啊?
现在要用go语言编写应用,运行在多台主机上,需要保证每台主机上的应用维护的数据库都是一致的,有什么方法能够保证呢?每一个对数据库的请求都会发到这几台主机上,但是可能出现一台或多台主机断网的情况,这个时候就需要算法来保证数据库的状态是一致的了。还有可能出现数据库请求的次序不一致导致数据库状态不一致的问题。请问有什么算法,应用,库,或者文章能够帮助维护数据库的一致性呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
whilewk
2019-12-10
打赏
举报
回复
raft共识算法
zjcxc
2017-10-19
打赏
举报
回复
举个具体的例子,比如扣款,有100的余额,在每台机器上都有现在断网了,某台(或几台)机器上收到一个需要扣款100的请求,技术上你能处理这个扣款么?
zjcxc
2017-10-19
打赏
举报
回复
没办法保证,数据一致性不是单纯的技术问题(除非不断网,通过锁控制并发,类似分布式事务) 最简单的一点,在断网的时间,每台机器都改了同一条记录,而且修改的时间点一样,都修改成不一样的东西,这个怎么同步? 这种情况是要业务规则 确定,不是技术说了算
【Golang】深入探索
Go语言
中的网络编程实现方式
本文聚焦
Go语言
网络编程,介绍了其基于net包的网络I/O基础设施,支持TCP、UDP等协议。详细阐述了TCP和UDP编程中服务器与客户端的创建步骤,还提及HTTP、WebSocket等高级用法及TLS/SSL加密,展示了
Go语言
在网络编程方面的强大支持。
Go语言
中的并发模型与数据
一致性
本文深入探讨
Go语言
的并发模型与数据
一致性
。介绍了Go并发模型基础,包括goroutines和channels,阐述互斥锁和读写锁的使用,分析goroutines数量对性能的影响,还展示文件操作中
保证数据
一致性
的方法,以及Go与C语言混合使用的情况和注意事项。
Go语言
的分布式系统和
一致性
算法
本文深入探讨
Go语言
在分布式系统和
一致性
算法中的应用,介绍其高性能、简洁语法和并发处理能力如何助力解决数据
一致性
、容错性问题。详细讲解
一致性
算法原理、操作步骤和数学模型,并提供代码实例,展望未来发展趋势和挑战。
Go最全Redis之缓存
一致性
(2),我的腾讯Golang面试经历分享
本文详细探讨了
Go语言
开发中并发场景下,如何确保数据
一致性
,涉及多种策略如先更新DB/缓存顺序、异步删除缓存以及延迟双删,以应对不同并发读写情况下的数据同步问题。
Go语言
基础之并发
本文详细介绍了
Go语言
的并发机制,包括goroutine的工作原理、goroutine与线程的区别、channel的使用方法,以及如何在多goroutine环境中
保证数据
的安全性和
一致性
。
MySQL
57,064
社区成员
56,762
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章