强一致性是可以保证的,看你对并发要求和响应时间的要求。
实现的方式也多种多样,其中数据库双活必然要利用到两个层面的双活
1.数据库本身事务级别的双活,也就是多数据库节点间的内存数据如何融合和同步,如何解决锁竞争,ORACLE EXTEND RAC和DB2 GDPC都是成熟的方案,解决数据库事务层面的双活问题
2.数据库所用存储的双活,也就是数据库数据落盘后,保证两个存储的数据同步问题,像类似于GPFS并行文件系统、存储(或存储网关)双活也都是目前流行的方案。
3.两个层面的双活要协同起来配合,才能实现真正的数据库双活,否则简单的数据库节点双活,底层存储主备,或者数据库节点主备,底层存储双活,都是伪双活。
距离越远,同步带来的时延越大,数据库节点间缓存同步或者锁竞争的开销越大,这就与业务的并发和要求成反比,所以归根到底,一句话,实现都是可以的,就是看业务的性能要求。
收起