【发布时间】:2013-08-04 01:42:00
【问题描述】:
我正在使用 Redis 数据库创建烧瓶应用程序。我有一个连接问题
我可以让 Redis 连接全局并始终保持非关闭状态:
init.py
import os
from flask import Flask
import redis
app = Flask(__name__)
db = redis.StrictRedis(host='localhost', port=6379, db=0)
我还可以重新连接每个请求(Flask doc http://flask.pocoo.org/docs/tutorial/dbcon/):
init.py
import os
from flask import Flask
import redis
app = Flask(__name__)
#code...
@app.before_request
def before_request():
g.db = connect_db()
@app.teardown_request
def teardown_request(exception):
db = getattr(g, 'db', None)
if db is not None:
db.close()
哪种方法更好?为什么我应该使用它?
感谢您的帮助!
【问题讨论】:
-
“更好”有点难以解决,并不是 SO 旨在回答的问题。例如,您的意思是“更快”、“更安全”、“更高效”吗?另外,您是如何使用您的数据库的 - 您将提出什么样的请求,它们是单个指令还是一系列指令?
-
它非常重要的速度和稳定性。数据库用于存储用户数据,如用户 ID、公钥、私钥等。
标签: python database redis flask