文档首页> 多活高可用服务 MAS> 开发指南> Mas-Redis-SDK使用手册> 使用场景> single-read-async-double-write(单边读异步双写)
更新时间:2023-12-27 GMT+08:00
分享

single-read-async-double-write(单边读异步双写)

使用须知:另起线程进行数据同步,不能保证异步写成功、不能保证两端数据的一致性。

图1 single-read-async-double-write部署图

读写指定异步双写,适用于读多写少场景,使用sdk同步两个redis,一条写命令会先在指定redis上执行,成功后,异步写到另一端。

本地读异步双写场景具体操作:

  • 对于用户,不感知多个redis。
  • 对于SDK
    • 读操作:同步路由到到指定的redis。
    • 写操作:同步路由到指定的redis,同时异步发送到远端redis。

此场景下可切换指定的redis。

  1. 当不同实例内SDK操作同一个redis key时,不能保证两个redis的一致性。
  2. 当SDK发生redis切换时,切换前产生的异步双写命令和切换后主流程写操作同一个redis的key时,两者不保证顺序:即有主流程写的值被异步双写覆盖。
  3. spop命令双写不适用。

分享:

    相关文档

    相关产品