PHP:memcache和memcached-addServer问题
使用PHP,两者都有addServer 因此,我添加了两个不同的memcache服务器,它们运行在不同的硬件上,甚至运行在不同的端口上。 当我“设置”、“添加”或“增量”时——使用memcache选择哪一个,使用memcached选择哪一个?如果其中一台服务器变得不可用,然后又变为可用,会发生什么情况 如何在这两个服务器上启用数据的重新同步/复制 假设我希望数据同时存储到服务器A和服务器B,当其中一个不可用时,它会返回到另一个服务器上的内容PHP:memcache和memcached-addServer问题,php,memcached,distributed,cluster-computing,Php,Memcached,Distributed,Cluster Computing,使用PHP,两者都有addServer 因此,我添加了两个不同的memcache服务器,它们运行在不同的硬件上,甚至运行在不同的端口上。 当我“设置”、“添加”或“增量”时——使用memcache选择哪一个,使用memcached选择哪一个?如果其中一台服务器变得不可用,然后又变为可用,会发生什么情况 如何在这两个服务器上启用数据的重新同步/复制 假设我希望数据同时存储到服务器A和服务器B,当其中一个不可用时,它会返回到另一个服务器上的内容 我认为这可以通过memcache集群来实现,但是PHP
我认为这可以通过memcache集群来实现,但是PHP的客户端libs memcache和memcached是如何处理的呢?为了获得想要的效果,您必须做一些工作。我建议改为使用Membase,打开复制并关闭持久性,以达到相同的效果。但首先让我解释一下: 在Memcached和Memcache客户端中,密钥的散列决定了哪个Memcache服务器存储数据。因此,存储数据的服务器实际上取决于密钥 Memcached允许选项具有一致的哈希(Memcached::DISTRIBUTION_consistent或Memcached::OPT_LIBKETAMA_COMPATIBLE),这样,如果memcache服务器关闭或添加了服务器,并非所有数据都会被重新洗牌 不推荐,但。。。 要达到预期效果(效率低下),请使用一致的哈希和: 1.)检查服务器是否已关闭。创建一个Memcache(d)对象,其中只包含有问题的服务器,并使用它存储和检索一段随机数据。如果它起作用了,它就起作用了 2.)创建Memcached对象时,使用工作服务器并将其添加到服务器列表中 3)享受吧 PS:随着服务器的升降,您的缓存未命中率也会随之上升。同时也会降低