J'essaie d'utiliser elasticache en tant que service memcache avec la bibliothèque client élastique d'AWS pour Java.Comment utilisez-vous le hachage cohérent avec les librairies java elasticache?
Le code suivant fonctionne pour la connexion au cluster:
_client = new MemcachedClient(_serverList);
Mais toute tentative que j'ai fait d'utiliser les résultats de hashage cohérent dans le client memcache ne pas initialiser:
_client = new MemcachedClient(new KetamaConnectionFactory(), _serverList);
ou
ConnectionFactoryBuilder connectionFactoryBuilder = new ConnectionFactoryBuilder();
connectionFactoryBuilder.setLocatorType(Locator.CONSISTENT);
connectionFactoryBuilder.setHashAlg(DefaultHashAlgorithm.KETAMA_HASH);
connectionFactoryBuilder.setClientMode(ClientMode.Dynamic);
ConnectionFactory connectionFactory = connectionFactoryBuilder.build();
_client = new MemcachedClient(connectionFactory, _serverList);
Toute tentative que j'ai faite pour utiliser autre chose qu'un MemcacheClient vanille ts dans des erreurs telles que:
2015-04-07 07: 00: 32,914 WARN net.spy.memcached.ConfigurationPoller: La configuration est nulle dans le serveur localhost 07/04/2015 07: 00: 32,914 WARN net.spy.memcached.ConfigurationPoller: Nombre d'erreurs de Poller consécutives est 7. Nombre de minutes depuis le dernier scrutin réussi est 0
de plus, je l'ai vérifié avec telnet, libs spymecached, et le constructeur de MemcacheClient vanille , que les groupes de sécurité sont permissifs.
J'aurais dû inclure le type pour _serverList, List, qui est la même chose que AddrUtils retourne. –
tedwards