python任务队列 http_Flask例子-实现Redis Task Queue(任务队列)

本文介绍了如何在Python Flask应用中使用Redis和RQ库创建任务队列,用于处理文本分析任务。通过设置worker进程,将任务添加到队列,实现异步处理。同时,提供了更新路由以获取任务处理结果的方法。
摘要由CSDN通过智能技术生成

Python部落组织翻译,禁止转载,欢迎转发

在本文中,我们加入基础的 Redis task queue来进行文本处理。

有许多的工具也能够实现,例如ReTask和HotQueue。我们将使用的是Python RQ。它是一个建立在Redis之上用来创建task queue(任务队列)的简单的库,并且容易设置和实现。

请牢记,我们是这样创建的:一个基于给定的URL中的文本用来统计单词的分布对的Flask应用。这是一个完整的教程。

1、 第一部分:设置本地开发环境,接着在Heroku云平台上部署staging环境和production环境。

2、 第二部分:设置一个带有SQLAlche和Alembic的PostgreSQL数据库来处理迁移。

3、 第三部分:加入后端逻辑到scrape,然后使用requests,BeautifulSoup和Natural Language Toolkit(NLTK)库来计算处理从页面中得到的单词。

4、 第四部分:实现一个Redis task queue 来进行文本处理。(本文描述的)

5、 第五部分:安装Angular前端框架来不断查看后端框架请求是否完成。

6、 第六部分:启动在Heroku云平台上的staging服务——设置Redis,详细介绍如何在单个Dyno上运行两个进程(web和worker)。(ps:在Heroku云平台上,对于每一个进程采用一个叫Dyno的单位来进行性能管理,增加这个值,则能提高应用的相应速度和吞吐量。有适用于Web server的Web dyno和作为后台进程的Worker dyno。)

7、 第七部分:更新前端使其用户界面更友好。

8、 第八部分:将D3库添加到混合频率分布图和柱状图。

需要代码吗?可以到repo(https://github.com/realpython/flask-by-example/releases)上抓取。

安装要求

工具:Redis——http://redis.io/

Python Redis —— https://pypi.python.org/pypi/redis/2.10.5

RQ(Redis Queue)——http://python-rq.org/

首先从http://redis.io/下载和安装Redis(或者使用Homebrew命令——brew install redis),然后开启Redis服务。

$ redis-server

接下来在一个新的终端窗口安装Python Redis 库和RQ库。

$ workon wordcounts

$ pip install re

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值