Memcached服务器:将两个服务器URL指向同一台服务器是一种很好的做法吗?

我有一个系统,有几个不同的文件和服务器连接到一个memcache服务器。

我想留在一台服务器,但保持增加memcache服务器的数量(高stream量期间)的选项。

我的想法是告诉memcache有两台服务器,而这两个url将(通过DNS)指向一台服务器。 在将来,如果我想我可以添加一个服务器和更改DNS,而无需更改许多地方的代码。

这是一个很好的做法吗? 有两个服务器连接,但它们都指向同一台服务器的性能成本?

任何其他想法如何实现Memcache容量的即时可扩展性而无需更改代码和部署?

这取决于您正在使用的memcached客户端以及它如何确定在多个服务器上散列密钥。 通过指定两个服务器而不是一个服务器,您不应该期望更高的性能,因为单个memcached服务器将提供比单个Web服务器可以处理的连接更多的连接(很可能)。 事实上,让客户端尝试在两个不同的服务器(实际上是相同的)上散列密钥可能会造成更多的伤害,而不是好的。

如果您不想再次部署,那么我将列出您的服务器作为configuration选项,并将其放入服务器的环境variables中。 例如,ENV ['MEMCACHE_SERVERS'],并简单地configuration它的服务器端不需要再部署。

memcache的美妙之处在于它不是冗余或故障切换,它不是一个持久性存储。 它甚至可能完全死了,你的网站只会有一个0%的caching命中,但至less它仍然在运作。

查看关于冗余和故障转移的更多信息 。