亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用Flask-Cache緩存實(shí)現(xiàn)給Flask提速的方法詳解

 更新時(shí)間:2019年06月11日 09:00:29   作者:TKtalk  
這篇文章主要介紹了使用Flask-Cache緩存實(shí)現(xiàn)給Flask提速的方法,結(jié)合實(shí)例形式詳細(xì)分析了Flask-Cache的安裝、配置及緩存使用相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了使用Flask-Cache緩存實(shí)現(xiàn)給Flask提速的方法。分享給大家供大家參考,具體如下:

Django里面可以很方便的應(yīng)用緩存,那Flask里面沒(méi)準(zhǔn)備這么周全怎么辦?自己造輪子么?不用的,前人種樹(shù)后人乘涼,我們有Flask-Cache,用起來(lái)和Django里面一樣方便哦!

1.安裝

pip install Flask-Cache

2.配置

以我的zhihu項(xiàng)目(源碼)為例:

config.py里面,設(shè)置simple緩存類(lèi)型,也可以用第三方的redis之類(lèi)的,和Django一樣,裝好redis改下設(shè)置就行

class Config:
  #省略
  CACHE_TYPE = 'simple'

app/init.py里面

from flask_cache import Cache
#緩存
cache = Cache()
def create_app(config_name):
  app = Flask(__name__)
  #此處省略若干字
  cache.init_app(app)
  #工廠函數(shù)返回創(chuàng)建的程序示例
  return app

3.應(yīng)用

views.py里面

from .. import db, cache
from . import main
from ..decorators import admin_required, permission_required
@main.route('/', methods=['GET','POST'])
@cache.cached(timeout=300,key_prefix='index')#設(shè)置一個(gè)key_prefix來(lái)作為標(biāo)記,然后,在內(nèi)容更新的函數(shù)里面調(diào)用cache.delete('index')來(lái)刪除緩存來(lái)保證用戶訪問(wèn)到的內(nèi)容是最新的
def index():
    print("命令行里顯示我就是調(diào)用這個(gè)函數(shù)了沒(méi)走緩存,不顯示我就是直接走緩存沒(méi)吊用函數(shù)")
  # 省略
  return render_template('index4.html', form=form, posts=posts,show_followed=show_followed, pagination=pagination)

執(zhí)行一遍,看看有沒(méi)有print輸出,就可以看到緩存是否生效

4.清除緩存

第一種方法就是設(shè)置過(guò)期時(shí)間自動(dòng)清除,可以在 Flask 的config里面加上配置項(xiàng):

CACHE_DEFAULT_TIMEOUT 或者裝飾器加參數(shù)timeout=50。

第二種方法就是主動(dòng)刪除,比如@cache.cached(timeout=300,key_prefix='index')設(shè)置好了緩存,刪除的時(shí)候用cache.delete('index')即可

@main.route('/askquestion', methods=['GET','POST'])
@login_required
def askquestion():
  #提問(wèn)題寫(xiě)入數(shù)據(jù)庫(kù)操作省略
  cache.delete('index')#刪除緩存
  return render_template('askquestion.html', form=form, posts=posts,show_followed=show_followed, pagination=pagination)

就像上面如果沒(méi)設(shè)置key的話,默認(rèn)的key_prefix='view/%s',這個(gè)%s就是請(qǐng)求的路徑request.path,所以如果用@cache.cached(timeout=300)建立緩存就可以用cache.delete('view//')來(lái)清除緩存了,請(qǐng)求路徑有的函數(shù)沒(méi)有,最好設(shè)置key來(lái)搞

還有一種清除所有緩存的cache.clear()

希望本文所述對(duì)大家基于Flask框架的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Django實(shí)現(xiàn)靜態(tài)文件緩存到云服務(wù)的操作方法

    Django實(shí)現(xiàn)靜態(tài)文件緩存到云服務(wù)的操作方法

    這篇文章主要介紹了Django實(shí)現(xiàn)靜態(tài)文件緩存到云服務(wù)的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • 對(duì)Python信號(hào)處理模塊signal詳解

    對(duì)Python信號(hào)處理模塊signal詳解

    今天小編就為大家分享一篇對(duì)Python信號(hào)處理模塊signal詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • python定時(shí)任務(wù)sched庫(kù)用法簡(jiǎn)單實(shí)例

    python定時(shí)任務(wù)sched庫(kù)用法簡(jiǎn)單實(shí)例

    sched可用于定時(shí)任務(wù),唯一需要注意的就是,這些任務(wù)在一個(gè)線程中運(yùn)行,如果前面的任務(wù)耗時(shí)過(guò)長(zhǎng),則后面的任務(wù)將順延執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于python定時(shí)任務(wù)sched庫(kù)用法的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • Python制作進(jìn)度條的幾種方法

    Python制作進(jìn)度條的幾種方法

    如果你之前沒(méi)用過(guò)進(jìn)度條,八成是覺(jué)得它會(huì)增加不必要的復(fù)雜性或者很難維護(hù),其實(shí)不然。要加一個(gè)進(jìn)度條其實(shí)只需要幾行代碼,快跟隨小編一起學(xué)習(xí)學(xué)習(xí)吧
    2022-12-12
  • 詳解Python如何使用Self類(lèi)型實(shí)現(xiàn)返回類(lèi)的實(shí)例對(duì)象

    詳解Python如何使用Self類(lèi)型實(shí)現(xiàn)返回類(lèi)的實(shí)例對(duì)象

    在 Python 中,類(lèi)方法通常會(huì)返回類(lèi)的實(shí)例對(duì)象,本文將詳細(xì)介紹如何在 Python 中使用 Self 類(lèi)型來(lái)返回類(lèi)的實(shí)例對(duì)象,并提供豐富的示例代碼幫助更好地理解,快跟隨小編一起學(xué)習(xí)起來(lái)吧
    2024-02-02
  • Python celery原理及運(yùn)行流程解析

    Python celery原理及運(yùn)行流程解析

    這篇文章主要介紹了Python celery原理及運(yùn)行流程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 基于Python把網(wǎng)站域名解析成ip地址

    基于Python把網(wǎng)站域名解析成ip地址

    這篇文章主要介紹了基于Python把網(wǎng)站域名解析成ip地址,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Python 余弦相似度與皮爾遜相關(guān)系數(shù) 計(jì)算實(shí)例

    Python 余弦相似度與皮爾遜相關(guān)系數(shù) 計(jì)算實(shí)例

    今天小編就為大家分享一篇Python 余弦相似度與皮爾遜相關(guān)系數(shù) 計(jì)算實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • Python實(shí)現(xiàn)圖片滑動(dòng)式驗(yàn)證識(shí)別方法

    Python實(shí)現(xiàn)圖片滑動(dòng)式驗(yàn)證識(shí)別方法

    驗(yàn)證碼作為一種自然人的機(jī)器人的判別工具,被廣泛的用于各種防止程序做自動(dòng)化的場(chǎng)景中。這篇文章主要介紹了Python實(shí)現(xiàn)圖片滑動(dòng)式驗(yàn)證識(shí)別方法,需要的朋友可以參考下
    2017-11-11
  • python如何以表格形式打印輸出的方法示例

    python如何以表格形式打印輸出的方法示例

    這篇文章主要介紹了python如何以表格形式打印輸出的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06

最新評(píng)論