我们正在将 memcached 移动到不同的服务器集群,我需要复制现有的 memcached 数据,或者执行诸如影子写入之类的操作,我会同时慢慢填充两个 memcached 直到它们匹配。我在这里有什么选择?
创建一个预热脚本,可以识别需要放入新 Memcached 的每个资源并将其放在那里。然后切换生产环境。到新的 Memcached 服务器 IP。
创建一个新的 Memcached 池,更改脚本以始终写入两个池。等待几个小时,直到脚本无意中将所有数据写入两个池。然后切换生产环境。到新的 Memcached 池并禁用双重写入脚本和旧池。
有一些用于 Memcached 复制和 Memcached 备份的商业解决方案。我不知道任何名称,也许还有一些开源解决方案。
您可以使用 memcached-tool 将数据从一台服务器转储到另一台服务器。
./memcached-tool <host-ip>:11211 dump | nc <remote-ip> 11211
您可以在
/usr/share/memcached/scripts
找到 memcached-tool
请注意,时间将根据内存缓存数据进行