【问题标题】:Memcache automatic horizontal scalingMemcache 自动水平扩展
【发布时间】:2017-09-11 09:02:18
【问题描述】:

我们有一个包含 2 个 Web 服务器和 2 个 memcache 服务器的场景。 Memcache 服务器节点在每个 Web 服务器上的配置文件中进行配置。

为了让我们能够自动水平扩展 Web 服务器,我们需要能够自动水平扩展内存缓存服务器。由于在 web 配置文件中定义了 memcache 节点,目前我们无法做到这一点。

在对系统影响最小的情况下,自动水平扩展 memcache 服务器的最佳方法是什么。

【问题讨论】:

    标签: memcached horizontal-scaling


    【解决方案1】:

    你可以试试mcrouter

    什么是 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"
         }
       }
     }
    

    希望对你有帮助!

    【讨论】:

      猜你喜欢
      • 2011-08-05
      • 2017-12-25
      • 1970-01-01
      • 1970-01-01
      • 2021-06-03
      • 2018-08-21
      • 2013-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多