Сам я никогда не беспокоился об этом (в конце концов, memcache просто должен быть кешем, даже если каждый экземпляр является точной копией любого другого экземпляра, вы все равно не можете гарантировать, что значение всегда будет существовать, если добавьте его: он может быть исключен из-за политики LRU, например).
Однако, если бы я был , чтобы реализовать это как функцию, я бы поместил это в клиент, а не как патч для сервера.
То есть вместо того, чтобы хешировать ключ к одному серверу, хэшируйте его на 2 или 3 сервера и сохраняйте значение на всех них. Затем при возвращении значения снова попробуйте получить его с первого, если его нет, попробуйте второе и т. Д.
Это дает дополнительное преимущество - не реплицирует каждое значение: вы можете копировать только те, которые вы выбрали.