MongoDB Replica Set 下,mongodb 的读写一致性怎么样?

iamroody · 2014年03月11日 · 最后由 xiaogui 回复于 2014年04月06日 · 11057 次阅读

当前,我们的数据库集合做了最简单的一个集合,1 台 primary,2 台 secondary。系统中所有的读写,现在都指向了 primary,这就带来的问题是,primary 负载过高。但是如果 primary 只写,而把所有读操作放到 secondary 上,可能会遇到读写不一致的情况。

请问,大家有没有遇到类似的问题,读写不一致的延迟大概会有多长时间?如何来测试呢?你们是如何做选择的?

我也遇到了类似的问题,持续关注。

默认情况下写入是不检查是否同步到 repliatset 的。可以设置为一定要检查,但这样肯定会拖慢 primary。

一般流量的应用,延迟应该问题不大。MongoDB 本来对实时一致性和事务等就持不予支持的态度。

详见 Write Concern

#2 楼 @ashchan

补充二楼的。看里面的 w option 那里。

另可以结合业务逻辑进行优化: 1、更新后马上需要操作的数据,相对比较实时的数据采取 primary 写 primary 读; 2、将更新后不需要马上进行操作的数据 primary 写 secondary 读。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号