memcached 服务器迁移

问题描述 投票:0回答:2

我们正在将 memcached 移动到不同的服务器集群,我需要复制现有的 memcached 数据,或者执行诸如影子写入之类的操作,我会同时慢慢填充两个 memcached 直到它们匹配。我在这里有什么选择?

php memcached
2个回答
1
投票

我想到了两个想法:

  • 创建一个预热脚本,可以识别需要放入新 Memcached 的每个资源并将其放在那里。然后切换生产环境。到新的 Memcached 服务器 IP。

  • 创建一个新的 Memcached 池,更改脚本以始终写入两个池。等待几个小时,直到脚本无意中将所有数据写入两个池。然后切换生产环境。到新的 Memcached 池并禁用双重写入脚本和旧池。

理由:

  • 如果您正在缓存图像/完整的 html 页面/sql 结果集,您可以轻松编写脚本来获取它们,并且您可以预测所有可能的参数,那么第一种情况很有用 - 方便地说,它们应该是几个参数而不是很多。
  • 如果您要缓存的数据非常依赖于应用程序流程和不可预测的参数,则第二种情况很有用。

有一些用于 Memcached 复制和 Memcached 备份的商业解决方案。我不知道任何名称,也许还有一些开源解决方案。


0
投票

您可以使用 memcached-tool 将数据从一台服务器转储到另一台服务器。

./memcached-tool <host-ip>:11211 dump | nc <remote-ip> 11211

您可以在

/usr/share/memcached/scripts

找到 memcached-tool

请注意,时间将根据内存缓存数据进行

© www.soinside.com 2019 - 2024. All rights reserved.