FlaskWorker简化了与Redis队列的交互,以便在Flask应用程序中执行长时间运行的任务。

flask-worker的Python项目详细描述


FlaskWorker简化了与Redis Queue的交互,以便在Flask应用程序中执行长时间运行的任务。在

长时间运行的任务由工作线程管理,它向客户端发送加载页,直到客户端完成任务为止。完成任务后,工作线程将自动用加载的页面替换客户端的窗口。在

为什么是烧瓶工

假设我们有一个视图函数,它需要在客户端查看页面之前执行一个复杂的任务。我们希望复杂任务只运行一次,而view函数在复杂任务运行时返回一个加载页面。我们的第一关可能是:

@app.route('/')defindex():returncomplex_task()

不幸的是,每次调用view函数时都会执行复杂任务。更糟糕的是,客户机没有迹象表明复杂的任务正在进行中。每次客户端尝试刷新页面时,复杂任务都会再次排队。在

烧瓶工人解决了这个问题。我们成立了一个工人:

^{pr2}$

并在视图函数中调用它:

@app.route('/')defindex():worker=get_model(Worker,name='index')returnworker.resultifworker.job_finishedelseworker()

有关完整的示例,请参见tutorial。在

安装

$ pip install flask-worker

引文

@software{bowen2020flask-worker,
  author = {Dillon Bowen},
  title = {Flask-Worker},
  url = {https://dsbowen.github.io/flask-worker/},
  date = {2020-06-15},
}

许可证

用户必须在使用它的任何出版物中引用此软件包。在

它是由麻省理工学院License授权的。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
无法在Netbeans 8.2 JDK8u231中创建java Maven项目(Web应用程序)   java如何以设定的时间间隔生成随机数?   java从socket和inputStream的慢速读取   spring SCORM:Java中基于Web的SCORM播放器   Java将函数传递给方法   java绑定通用服务及其实现和子类型   java如何在运行时从选择列表框中动态选择选项?爪哇硒   java Selenium WebDriver什么是“Selenium客户端和WebDriver语言绑定”   elasticsearch需要elasticsearch高级Java客户端更新ByQueryRequest API帮助   JAVA哈希表查找最大值   WSDL操作中的java soapAction属性为空   java访问封闭类或父类方法的一般方法   eclipse在java中运行带有SeleneTestCase的ANT。lang.NoClassDefFoundError   java Hazelcast不会在节点启动时填充ReplicatedMap   如何在Java中从excel中读取特定行?   html JAVA将本地时间(GMT+8)转换为UTC时间   java将自定义端点添加到Spring数据REST存储库中,并以大摇大摆的方式显示   java计算未来位置