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