python的緩存庫:cacheout
Python部落(python.freelycode.com)組織翻譯,禁止轉載,歡迎轉發。
python的緩存庫(cacheout)
鏈接:
項目: https://github.com/dgilland/cacheout
文檔地址: https://cacheout.readthedocs.io
PyPI(下載鏈接): https://pypi.python.org/pypi/cacheout/
TravisCI(下載鏈接): https://travis-ci.org/dgilland/cacheout
特性:
後端使用字典進行緩存
使用緩存管理輕鬆訪問多個緩存對象
當使用模塊級緩存對象,重構運行時的緩存設置
最大緩存大小限制
默認的緩存時間設置以及緩存項自定義存活時間
批量的設置、獲取、刪除操作
線程安全
多種緩存機制的實現:
FIFO(先進先出)
LIFO(後進先出)
LRU (最近最少使用機制)
MRU (最近最多使用機制)
LFU (最小頻率使用機制)
RR (隨機替換機制)
線路圖:
層級緩存(多層級緩存)
支持緩存事件監聽
獲取緩存對象時的常規表示方法
獲取緩存對象不存在時的回調處理支持
統計緩存
要求:
Python >= 3.4
快速開始:
下載安裝:
通過創建一個緩存對象來開始了解:
默認的緩存的大小為256,默認存活時間是關閉的,這些屬性可以通過如下設置:
設置一個緩存可以通過cache.set
:
獲取緩存鍵的值通過:cache.get
:
為每個鍵值對設置存活過期時間:
緩存函數的計算結果:
為緩存函數提供了鍵值對的存活時間:
函數解除緩存:
複製機制:
刪除緩存中的一個鍵值對:
清除整個緩存:
為get、set、delete設置了批量方法:
重置已經初始化的緩存對象:
通過cache.keys
,cache.values
, andcache.items
獲取所有的鍵、值、以及鍵值對:
迭代整個緩存的鍵:
檢測鍵是否還存在於緩存中通過cache.has
andkey in cache
方法
:
通過使用CacheManager來管理多個緩存對象:
更多的細節請查看整篇文檔https://cacheout.readthedocs.io.
英文原文:https://github.com/dgilland/cacheout?utm_source=mybridge&utm_medium=web&utm_campaign=read_more
譯者:劉航
※2017年微軟對Git性能提升的貢獻
※搭建自己的 CDN 的樂趣和好處
TAG:Python部落 |