缓存迁移

处理分布式缓存迁移是比较困难的,通常我们将其分为平滑迁移和停机迁移。

平滑迁移

步骤

  1. 双写

  2. 迁移历史数据

  3. 切读

  4. 下线双写

1、双写

按照新规则和旧规则同事往新缓存和旧缓存中写数据。

2、迁移历史数据

评估需要迁移的历史数据。在某些场景下,通过数据库回溯数据,不断有新数据写入新的缓存,历史数据会逐渐过时,在一定时间之后,新的集群中自然就有了最新的数据,也就不在需要迁移历史数据了。

3、切读

把应用层所有的读操作路由到新的缓存集群上。

4、下线双写

关闭双写开关,把写入旧集群的逻辑下线。

停机迁移

步骤

  1. 停应用

  2. 迁移历史数据

  3. 更改数据源配置

  4. 重启应用

这种方式的好处是实现简单、高效,能够有效的避免数据不一致,但需要有停止服务,一般在晚上交易量小或者非核心服务的场景下使用。

Last updated