如何在服务器之间复制 Memcache 数据

如何在服务器之间复制 Memcache 数据

可以从这里找到相同的问题。但由于我找不到任何合适的答案,所以我询问了更多信息。

我有许多 memcache 客户端,但它们目前都访问一个 memcache 服务器。我想启动几个新的 memcache 实例(以处理缓存负载)并在它们之间复制数据(以避免故障转移和数据高可用性)。

我看了一下“repcached”,发现它只支持 2 个实例(一个是主实例,一个是从实例)之间的复制,因为我想拥有更多的 memcache 服务器,所以 repcached 对我来说不是一个解决方案,这毫无意义。

还如同一问题(我的第一行)中所述,它建议从客户端实现复制。但是,它不太适合,因为我使用的所有 memcache 客户端都是内存性能敏感的位置。(我的应用程序要求。)

因此,有谁能给我一些建议或解决方案,如何使 memcache 服务器/实例进行复制(所有缓存在服务器之间复制的任何中心位置)?(所有数据都将被复制,以及任何方法,如主服务器(只写)和从服务器(读),当主服务器关闭时,从服务器将成为主服务器)。

答案1

CouchBase具有memcached兼容的API,除了标准的memcached功能外,还具有复制和持久性功能。

答案2

这仍然出现在 Google 搜索中。

我最近试图解决这个问题,并查看了 Couchbase。该产品仍然有效,但另一个答案中提供的链接已失效。我发现 Couchbase 的文档令人困惑,所以放弃了它。Couchbase 确实提供了复制和持久性。

有一组补丁被称为复制缓存它为 memcached 添加了此功能,但它们似乎没有得到积极维护/我无法解开对 Linux 现代版本的依赖关系。

我选择使用微型路由器与 haproxy 一起进行复制(以查找有效的 memcache 实例),并编写了我自己的脚本,麦克斯德,用于初始数据填充。

相关内容