使用xmemcached客户端访问AWS ElastiCache

时间:2016-08-29 12:34:56

标签: java amazon-web-services xmemcached

我们在Java中使用memcached。我们的环境运行在OpenShift Online(PaaS)上,我们目前有一个“齿轮”运行我们的后端java应用程序和一个“齿轮”运行memcached。

由于它会更便宜,我们希望迁移到AWS ElastiCache - 但不会更改我们当前的memcached客户端,即xmemcached。但是我们如何处理身份验证呢?我尝试了[访问密钥ID] / [秘密访问密钥]:

MemcachedClient memcachedClient;

MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddresses([aws node endpoint]));
builder.setCommandFactory(new BinaryCommandFactory());
builder.addAuthInfo(AddrUtil.getOneAddress([aws node endpoint]), AuthInfo.plain([Access Key ID], [Secret Access Key]));

memcachedClient = builder.build();

没有成功。我总是例外:

net.rubyeye.xmemcached.exception.MemcachedException: There is no available connection at this moment

如果我根本不进行身份验证,我会得到同样的例外。

我知道使用AWS客户端会更好;但由于我们实际上只使用一个节点,因此我们不需要自动发现。关键是我们确实有一些其他的memcached服务器,例如在测试/本地环境中,aws客户端可能不支持(或者我错了?)。

0 个答案:

没有答案