0

Java では memcached を使用します。私たちの環境は OpenShift Online (PaaS) で実行されており、現在、バックエンドの Java アプリケーションを実行する「ギア」が 1 つと、memcached を実行する「ギア」が 1 つあります。

コストが低いため、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 クライアントを使用する方がよいことはわかっています。ただし、実際には 1 つのノードしか使用しないため、自動検出は必要ありません。ポイントは、テスト/ローカル環境などに、おそらくawsクライアントでサポートされていない他のいくつかのmemcachedサーバーがあることです(または私が間違っていますか?)。

4

0 に答える 0