草庐IT

Flask-Migrate

全部标签

python - 确保使用 flask-socketio、redis 发送套接字消息

我有一个在多个pod上运行的flask-socketio服务器,使用redis作为消息队列。我想确保从外部进程发出的信号在100%的时间内到达目的地,或者知道它们何时失败。当进程A向连接到进程B的套接字发出事件时,该事件通过消息队列到达进程B,到达客户端。有什么办法可以拦截进程B上的传出发射?理想情况下,我会在几秒钟后使用工作人员检查消息是否到达客户端(通过客户端发出的确认事件),或者它会再次发出。此代码在进程A上运行:@app.route('/ex')defex_route():socketio.emit('external',{'text':f'sender:{socket.get

python - 返回 Flask 响应后如何执行函数(托管在 Heroku 上)?

虽然我听说我需要使用一种叫做“作业队列”的东西,但我对此还是个新手,而且我很难把它全部设置好。在flask中返回响应后如何执行函数?你能指导我完成整个过程吗? 最佳答案 所以我发现它非常容易做到,在heroku上甚至更容易,问题是文档非常分散,对于刚刚发现工作队列的人来说,这可能会让人不知所措。对于这个例子,我将使用Heroku上的ReddisToGo插件,所以您要做的第一件事是从你的仪表板。之后你设置你的flask应用程序也看起来像这样:fromflaskimportFlaskfromrqimportQueuefromredisi

Python-Flask-Redis-ResponseError : unknown command 'SETEX'

我正在尝试通过Flask使用Redis创建服务器端session。Redis-server似乎运行良好,但Flask在实现exampleclassonFlask时一直给我这个错误.ResponseError:unknowncommand'SETEX'...因此,我的Flask项目没有运行。编辑:我在运行:Redis2.4.15Python2.7.3(和virtualenv中的2.6) 最佳答案 看看这个googlegroupspost.可能你输入的版本号不对。 关于Python-Flas

session - Flask Redis 服务器 session : Error in save_session

亲们:我正在将我的Flask应用程序与用于session存储的redis移动到docker容器中。当redis在本地运行时,我的应用程序运行愉快。但是,当使用redis图像运行docker-compose时,我看到以下错误。无论我的redis容器正在运行还是停止,我都会收到相同的错误消息:2017-04-0203:36:09,861]ERRORinapp:Exceptionon/[GET]web_1|Traceback(mostrecentcalllast):web_1|File"/usr/local/lib/python2.7/site-packages/flask/app.py",

python - 在启动 flask 之前如何检查 redis 是否正在运行(如果没有则启动它)?

我是Flask的新手,想确保Redis服务器正在运行,如果没有运行就启动它。这是我拥有的:@app.before_first_requestdefinitialize():cmd='src/redis-cliping'p=subprocess.Popen(cmd,stdout=subprocess.PIPE)out,err=p.communicate()#ifout.startswith('CouldnotconnecttoRedis'):#startredishereiferrisnotNone:raiseException(err)但是,我得到一个错误“OSError:[Errno

python - 为什么 Flask 限速解决方案使用 Redis?

我想对我的FlaskAPI进行速率限制。我找到了2个解决方案。Flask-Limiter扩展名。来自使用Redis的Flask网站的片段:http://flask.pocoo.org/snippets/70/Flask-Limiter可以在没有Redis的情况下根据远程地址对请求进行限速,Redis的意义是什么? 最佳答案 Redis允许您将限速状态存储在持久存储中。这意味着您可以:重新启动您的网络服务器或网络应用程序,但速率限制仍然有效。您不会因为工作进程被破坏并创建一个新进程而丢失最后一次请求的记录。使用多个网络服务器或网络应用

python - 在python flask中使用redis实时发送消息

下面是一个向浏览器发送消息的简单应用程序。如果有来自redischannel的新消息,它将以其他方式发送,以非阻塞方式发送最后知道的值。但我做错了什么。有人可以帮我理解吗fromgeventimportmonkey,Greenletmonkey.patch_all()fromflaskimportFlask,render_template,request,redirect,url_for,abort,session,Response,jsonifyapp=Flask(__name__)myglobaldict={'somedata':''}classRedisLiveData:def_

python - Flask应用中Redis与RDBMS共存(希望合作)

我正在使用Flask前端在Python中开发一款多人游戏,我正在利用它来学习更多关于NoSQL做事方式的信息。Redis似乎非常适合这个应用程序所需的一些东西,包括服务器端session和其他transient数据的存储,例如有哪些游戏正在进行中,谁在线等。到目前为止,还有一些不错的Flask/Redis方法使事情变得非常简单。但是,数据模型中仍然有一些我更喜欢放在传统RDBMS中的东西,包括用户帐户、已完成游戏的日志等。并不是说Redis不能做这些事情,但我只是认为RDBMS更适合他们,并且由于Redis需要内存中的所有内容,因此将其中一些数据“存储”在磁盘上似乎是有意义的。我没有很

每次请求都应该关闭 Python Redis 连接吗? ( flask )

我正在使用Redis数据库创建Flask应用程序。我有一个连接问题我可以让Redis连接全局并始终保持非关闭状态:init.pyimportosfromflaskimportFlaskimportredisapp=Flask(__name__)db=redis.StrictRedis(host='localhost',port=6379,db=0)我还可以重新连接每个请求(Flask文档http://flask.pocoo.org/docs/tutorial/dbcon/):init.pyimportosfromflaskimportFlaskimportredisapp=Flask(

python - 如何在 Flask-Restful 中使用 Flask-Cache

如何在Flask-Restful中使用Flask-Cache@cache.cached()装饰器?比如我有一个继承自Resource的类Foo,Foo有get、post、put、delete方法。如何在POST之后使缓存的结果无效?@api.resource('/whatever')classFoo(Resource):@cache.cached(timeout=10)defget(self):returnexpensive_db_operation()defpost(self):update_db_here()##HowdoIinvalidatethevaluecachedinget