flask緩存

from werkzeug.contrib.cache import SimpleCache

CACHE_TIMEOUT = 300

cache = SimpleCache()

class cached(object):

    def __init__(self, timeout=None):
        self.timeout = timeout or CACHE_TIMEOUT

    def __call__(self, f):
        def decorator(*args, **kwargs):
            response = cache.get(request.path)
            if response is None:
                response = f(*args, **kwargs)
                cache.set(request.path, response, self.timeout)
            return response
        return decorator

@app.route("/")
@cached()
def index():
    return render_template("index.html")

類的實例可以callable,且是以func為參數的一個裝飾器

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • 各位簡書的讀者們: 你們好! 由于我正式從小學畢業,所以要準備開始更...
    快樂米奇閱讀 137評論 0 1
  • 一輪圓月東山起, 七彩殘陽已西沉。 虔誠冥幣筑金屋, 躚舞人間寄先靈。
    噴泉閱讀 216評論 0 3
  • (詩:納蘇。) 街邊, 那個破舊的綠色郵筒, 被拾荒的老人扔進一封 沒有地址的信。 應當送達的是 江南水鄉,那個撐...
    納蘇閱讀 411評論 2 2