gae アプリ 開発メモ

Google App Engine アプリの開発メモ / 言語: python, javascript / ビギナー

memcache

memcacheの速度計測

ボチボチのデータの読み書き memcacheに対して、1つのkeyに辞書をぶら下げたときの get/set の速度を計測。 辞書は 1000 件。 サイズは 3.7KBらしい。(Memcache Viewer がそう言ってるので) #!/usr/bin/env python # -*- coding: utf-8 -*- from google.appe…

memcacheでCriticalSectionを書いてみた

gaeアプリケーションでいくつものリクエストを受けた時、相互に排他制御できる仕組みが欲しい。 memcache.incr(), decr()はアトミック操作できる。 ということで、こいつを使って CriticalSection を書いてみた。 from google.appengine.api import memcache…

memcacheの用途(2) DataStoreのキーに対応するランダムな文字列を管理する

DataStoreのキーは文字列化できる。 けど、base64でデコードするとエンティティ名やら親子関係やらが簡単にわかっちゃうから、できるだけ外部に公開したくない。そこで 『DataStoreのキーに対応する'ランダムな文字列'』 を生成して、外部にはこれを公開する…

memcacheの用途(1) とあるQuery結果を保存する

王道な書き方。 Google App EngineのMemcache の使用方法より。 def get_data(): data = memcache.get("key") if data is not None: return data else: data = self.query_for_data() memcache.add("key", data, 60) return data

memcacheの概要

memcacheはメモリ上で管理される key-value 型のデータ管理システム。概要 キー文字列:値を管理できる。あくまでキャッシュなので、いつデータが失われるかわからないモノとして考える。 有効期限(秒)を指定すると、その時間後にはデータが失われる。値には…