本頁面提供使用 Memcache 的 Python 程式碼範例。Memcache 是高效能的分散式記憶體物件快取系統,可用來執行快取資料的快速存取。如要進一步瞭解 Memcache,請參閱 Memcache 總覽。
Memcache 模式
Memcache 通常於下列模式中使用:
- 應用程式接收來自使用者或應用程式的查詢。
- 應用程式檢查符合查詢的所要資料是否位於 Memcache 中。
- 如果資料在 Memcache 中,則應用程式會使用該資料。
- 如果 Memcache 中沒有資料,應用程式會查詢 Datastore,並將結果儲存在 Memcache 中,以供日後要求使用。
下列虛擬程式碼代表的是一般的 Memcache 要求:
ndb 會在內部使用 Memcache 以加快查詢速度。然而,如有需要,您也可以明確新增 Memcache 呼叫來進一步控管加速作業。
快取資料
下列範例示範多種使用 Python API 在 Memcache 中設定值的方法。
如要進一步瞭解 add()
、set_multi()
和 set()
方法,請參閱 Memcache Python API 說明文件。
修改 guestbook.py
來使用 Memcache
留言簿應用程式會在每個要求中查詢 Datastore (透過 ndb,因此已獲得部分 memcache 加速)。您可以修改 Guestbook 應用程式,明確使用 Memcache,再查詢 Datastore。
首先,請匯入 Memcache 模組,並且建立先檢查 Memcache 再執行查詢的方法。
接著,請分開查詢並建立頁面的 HTML。如果沒有命中快取,我們會呼叫這個方法來查詢 Datastore,並建構要儲存在 Memcache 中的 HTML 字串。
最後,我們會更新 MainPage
處理常式,呼叫 get_greetings() 方法,並顯示快取命中或未命中的次數等統計資料。