Redis是一款依據BSD開源協議發行的高性能Key-Value存儲系統。會把數據讀入內存中提高存取效率。Redis性能極高能支持超過100K+每秒的讀寫頻率,還支持通知key過期等等特性,所以及其適合做緩存。
下載安裝
根據redis中文網使用wget下載壓縮包
1
2
3
4
|
$ wget http: //download .redis.io /releases/redis-3 .0.5. tar .gz $ tar xzf redis-3.0.5. tar .gz $ cd redis-3.0.5 $ make |
二進制文件編譯完成后在src目錄下。可以通過一下命令啟動:
1
|
$ src /redis-server |
這樣就可以看到redis服務已經啟動起來了,默認端口是6379,可以通過client操作reids。
1
2
3
4
5
|
$ src /redis-cli redis> set foo bar OK redis> get foo "bar" |
flask配置redis
首先得下載flask的緩存插件Flask-Cache,使用pip下載。
1
|
sudo pip install flask_cache |
為應用擴展flask_cache
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
from flask import Flask from flask.ext.cache import Cache cache = Cache() config = { 'CACHE_TYPE' : 'redis' , 'CACHE_REDIS_HOST' : '127.0.0.1' , 'CACHE_REDIS_PORT' : 6379 , 'CACHE_REDIS_DB' : '', 'CACHE_REDIS_PASSWORD' : '' } app = Flask(__name__) app.config.from_object(config) cache.init_app(app) @app .route( '/' ) @cache .cached(timeout = 60 * 2 ) def index(): name = 'mink' return name if __name__ = = '__main__' : app.run() |
使用裝飾器cached()裝飾視圖函數,參數timeout來設置過期時間,本文中使用了兩分鐘為緩存時間。