MongoDB 副本集没有读写分离吗,读写都是在主库,是设计就这样,还是部署得有问题
HAP 的工作表、工作流、关联记录和权限等业务环节,可能在数据写入后立即再次读取。MongoDB 副本集的从节点通过异步复制获取数据,如果将在线业务查询统一分流到从节点,就可能出现“写入成功,但随后的查询仍读到旧数据或查不到记录”,影响页面展示和业务判断。因此,当前 HAP 不支持对在线业务直接启用通用的 MongoDB 读写分离;副本集主要用于高可用和故障切换。若目的是缓解数据库压力,我们建议先评估索引、资源配置及按业务模块拆分 MongoDB 集群,而不是直接把业务读取切到从节点。
专业
HAP 的工作表、工作流、关联记录和权限等业务环节,可能在数据写入后立即再次读取。MongoDB 副本集的从节点通过异步复制获取数据,如果将在线业务查询统一分流到从节点,就可能出现“写入成功,但随后的查询仍读到旧数据或查不到记录”,影响页面展示和业务判断。因此,当前 HAP 不支持对在线业务直接启用通用的 MongoDB 读写分离;副本集主要用于高可用和故障切换。若目的是缓解数据库压力,我们建议先评估索引、资源配置及按业务模块拆分 MongoDB 集群,而不是直接把业务读取切到从节点。