我们有一个包含 2 个 Web 服务器和 2 个 memcache 服务器的场景。Memcache 服务器节点在每个 Web 服务器上的配置文件中进行配置。
为了让我们能够自动水平扩展 Web 服务器,我们需要能够自动水平扩展 memcache 服务器。目前我们无法做到这一点,因为在 web 配置文件中定义了 memcache 节点。
在对系统影响最小的情况下,自动水平扩展 memcache 服务器的最佳方法是什么?
我们有一个包含 2 个 Web 服务器和 2 个 memcache 服务器的场景。Memcache 服务器节点在每个 Web 服务器上的配置文件中进行配置。
为了让我们能够自动水平扩展 Web 服务器,我们需要能够自动水平扩展 memcache 服务器。目前我们无法做到这一点,因为在 web 配置文件中定义了 memcache 节点。
在对系统影响最小的情况下,自动水平扩展 memcache 服务器的最佳方法是什么?
你可以试试mcrouter。
什么是麦克劳特?
它是一个 memcached 协议路由器,用于 Facebook 处理分布在全球 Facebook 数据中心的数十个集群中缓存服务器的所有流量。
缩放是如何发生的?
要将新服务器添加到集群中,只需在路由配置文件中添加一个 IP 条目。'mcrouter' 会自动检测到它并使用一致的散列添加到集群中。
配置文件如下所示,有 2 个服务器条目。
{
"pools": {
"A": {
"servers": [
"SERVER1_IP:11211",
"SERVER2_IP:11211"
]
}
},
"route": {
"type": "OperationSelectorRoute",
"operation_policies": {
"add": "AllSyncRoute|Pool|A",
"delete": "AllSyncRoute|Pool|A",
"get": "RandomRoute|Pool|A",
"set": "AllSyncRoute|Pool|A"
}
}
}
希望能帮助到你!