我想设计一个使用Sofabase的银行系统,并且我需要很高的耐用性(如RDBMS),如何实现100%的耐用性而又不会造成数据丢失?
我知道我可以使用persist_to
和replicate_to
来提高耐用性
bucket.insert(id, data, { "persist_to": 3}, (error, result) => {
if(error) {
throw error;
}
console.log(result);
});
1-如果我有6台服务器并且选择persist_to=3
,那么如何确保数据是持久的,例如,如果活动节点是 server1 并且我的数据被持久保存到 server1 , server2 和 server3 ,而我们在 server1 上失败了,如果 server4 -内存或磁盘中没有数据-是否处于活动状态?
2-如何从SDK动态检测群集的大小?并将persist_to
设置为多数(numberOfNodes / 2 + 1)