2

誰かが助けてくれるかどうか疑問に思っていました。この投稿で概説されている blobcache モジュールを使用しています

これは正常に動作しますが、 get_multi()キー関数を使用して memcache からの取得を高速化しようとしてい ますが、現在のコードでは get_multi を使用するとキーが見つかりません

私の現在の取得定義は次のようになります

def get(key):
  chunk_keys = memcache.get(key)
  if chunk_keys is None:
    return None
  chunk_keys= ",".join(chunk_keys)
  str(chunk_keys)
  chunk = memcache.get_multi(chunk_keys)
  if chunk is None:
  return None
try:
  return chunk
except Exception:
  return None

ドキュメントによると、キーの文字列を get_multi に渡すだけでよいということを理解しています。

しかし、彼は現時点では何も返していません。

誰かが私がここで間違っていることを指摘できますか?

4

1 に答える 1

2

コンマを含む単一の文字列ではなく、文字列 (キー)のリストを渡します。

get_multi(keys, key_prefix='', namespace=None, for_cas=False)

keys = 検索するキーのリスト。Key は、文字列または (hash_value, string) のタプルにすることができます。通常、memcache インスタンスへのシャーディングに使用される hash_value は無視されます。これは、Google App Engine がシャーディングを透過的に処理するためです。

マルチ Get ドキュメント

于 2013-01-18T14:13:26.560 に答える