2

私の質問のタイトルが示すように、Memcache は Google クラウド エンドポイントでうまく機能するはずですか? JCacheを使用してキーと値のペアをアプリケーションに保存し、Google Cloud Endpoints API メソッド内から読み取ることができます。

アプリケーションをアップロードしてクラウドで実行すると、クラウド エンドポイント内からセッションにアクセスできないことがわかった場合とまったく同じように null が返されます...

そして、私は何か間違ったことをしていますか、それとも Google クラウド エンドポイントもキャッシュにアクセスすることになっていませんか?

アプリケーションとクラウド エンドポイントの間でいくつかのトークンを安全に共有する必要があり、データストアからの書き込み/読み取りはしたくありません (これらは揮発性のトークンです...)。何か案は?

4

1 に答える 1

1

Endpoints は、組み込み APIを使用して memcache と確実に連携します。API メソッド内で次の簡単なスニペットを試してみたところ、期待どおりに値が増加することがわかりました。

String key = "key";
Integer cached = 0;

MemcacheService memcacheService = MemcacheServiceFactory.getMemcacheService();
memcacheService.setErrorHandler(new StrictErrorHandler());
cached = (Integer) memcacheService.get(key);
if (cached == null) {
  memcacheService.put(key, 0);
} else {
  memcacheService.put(key, cached + 1);
}

JCache に特定の要件がない限り、これでうまくいくはずです。

于 2013-11-05T20:03:03.817 に答える