【发布时间】:2019-01-11 15:05:21
【问题描述】:
我是有状态服务的新手。我需要使用可靠的集合在我的集群中传播我的数据。
这很好。
我对次要副本感到困惑。我的系统将数据写入数据库。
查看文档,辅助副本也旨在保存状态。但是,它们永远不会真正准确,因为我不希望它们写入数据库。
那么在我的情况下真的需要它们吗?如何使用有状态服务仅在集群中对数据进行分区而不用担心副本?我是不是误会了什么?
【问题讨论】:
-
我的系统将数据写入数据库 -> 我想你的意思是可靠的集合?否则你应该使用无状态服务
-
我有超过 100000 条数据。我想将这些数据分布在集群中,以使负载均匀分布。我已经想通了。在我当前的模型中(不使用缩放或可靠的集合)数据由系统接收然后保存到数据库中以用于持久性目的。我正在考虑将数据保存在可靠的集合中并将其写入数据库,以便可以使用常规查询来获取数据
-
我会这样做的。要么使用可靠的集合,要么使用数据库,但不能同时使用两者。如果您需要对数据库中的数据进行内存访问,请使用简单的并发集合或 redis 缓存。
-
无论如何,您存储在可靠集合中的数据会被复制,因此当主节点出现故障时,可以在所有数据完好无损的情况下提升辅助节点。所以是的,他们是需要的!但是辅助不接受请求,因此它们纯粹是为了可靠集合的数据安全而存在
-
我试图寻找可靠的集合,因为数据保留在集群本地,我不知道 redis 如何处理并发。数据库方面更多是因为有习惯于从数据库获取数据的开发人员