每个浏览器都有Flask-Session + redis + gunicorn新会话

时间:2017-11-27 04:54:31

标签: python session redis gunicorn flask-login

我正在使用Flask-Session和redis作为一个应用程序我试图制作并使用gunicorn和4个gevent worker作为生产服务器。 http://pythonhosted.org/Flask-Session/

我正在尝试构建一个计数器,每次打开一个新的浏览器或选项卡时,该计数器应具有单独的会话ID,并且每个会话ID应该保持自己的计数。

这是我到现在为止的代码。

from flask import Flask
import os
from flask.json import jsonify
from flask import Flask, session
from flask_session import Session
import redis
import os


def create_app():
    app = Flask(__name__)
    app.secret_key = '123456789012345678901234'
    app.config['SESSION_TYPE'] = 'redis'
    app.config['SESSION_REDIS'] = redis.from_url('localhost:6379')
    # app.config.from_object(__name__)

    sess = Session()
    sess.init_app(app)

    @app.route('/set/')
    def set():
        session['key'] = 1
        return 'ok'

    @app.route('/get/')
    def get():
        session['key'] = session.get('key','not set') + 1
        return 'Count: '+ str(session.get('key','not set')) + ', Process ID:'+str(os.getpid())

    return app

在'set'路线中,我将键值设置为1,每当我去'get'时,计数器值就会增加。

0 个答案:

没有答案