beanstalkc Tutorial 中文版

2024-08-29 10:38

本文主要是介绍beanstalkc Tutorial 中文版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

英文原版:https://github.com/earl/beanstalkc/blob/wip-doc-rtfd/doc/tutorial.rst

背景介绍:

Beanstalk,一个高性能、轻量级的分布式内存队列系统。而beanstalkc是Beanstalk的一个python客户端库。看题主写的通俗易懂,就直接翻译过来。

开始:

启动服务端beanstalkd进程来监听14711端口,可以使用下列命令:

beanstalkd -l 127.0.0.1 -p 14711

除了安装beanstalkc外,一般你还需要装PyYAML。如果坚持不用PyYAML,你同样可以使用beanstalkc。 更多细节可见附录A部分。

我们需要import这个库并和服务端进行连接:

>>> import beanstalkc

>>> beanstalk = beanstalkc.Connection(host='localhost', port=14711)

如果我们不填host或者端口参数,会默认各自使用localhost和11300。同样有一个以s为单位的connect_timeout参数,用于决定socket将等待服务端多长时间来响应连接。如果值为None,那他将不会有timeout;如果不指定参数的话,默认是1s。

基本操作:

连接已经成功,我们往队列里面添加一个job:

>>> beanstalk.put('hey!')

1

或者我们reserve job

>>> job = beanstalk.reserve()

>>> job.body

'hey!'

一旦我们处理完一个job,我们就要把它标志为done。否则job一旦运行时间超过一个“time to run”周期(默认是120s)会重新进入队列。我们可以通过delete将任务标志为done:

>>> job.delete()

reserve后可能永远保持阻塞直到有job处于ready状态。如果job不是desired的,我们可以使用带timeout(以s为单位)的reserve操作,来决定我们将等待多长时间来接收这个job。如果这个reserve的timeout时间到了,它将返回None:

>>> beanstalk.reserve(timeout=0) is None

True

如果我们设置timeout为0,reserve将立即返回一个job或者None。

注意:beanstalkc需要job的body是strings,你需要将你的值转换为string。:

>>> beanstalk.put(42)

Traceback (most recent call last):

...

AssertionError: Job body must be a str instance

对于你放进body里的内容是没有限制,所以你可以使用任意二进制数据。如果你想放入一张图片,你只需要将图片转换成string。如果你想发Unicode的文本,你只需要使用unicode.encode来进行编码成一个string。

Tube的管理:

一个单独的beanstalkd server可以提供多个不同的队列,我们称之为 "tubes" in beanstalkd。通过这个命令查看所有可用的tubes:

>>> beanstalk.tubes()

['default']

一个beanstalkd客户端可以选择一个需要put job的tube,这是一个已经被客户端使用的tube,我们来查看这个客户端当前使用的tube:

>>> beanstalk.using()

'default'

除非特殊说明,默认是使用default这个tube。如果想使用一个不一样的tube:

>>> beanstalk.use('foo')

'foo'

>>> beanstalk.using()

这篇关于beanstalkc Tutorial 中文版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1117631

相关文章

JavaEE7 Servlet 3.1(JSR 340)规范中文版

http://www.iteye.com/news/27727-jinnianshilongnian     Jave EE 7中的部分规范已正式获得批准通过,其中包括JSR340 Java Servlet 3.1规范,去年翻译了该规范,在此分享出来,希望对某些朋友有所帮助,不足之处请指正。   点击直接下载    在线版目录   Servlet3.1规范翻译

OWASP ZAP2.4.3使用指南(中文版)

OWASP ZAP是一款开源的web安全工具,它简单易用,与burp suite相似,主要功能包含了:代理、数据拦截修改、主动扫描、被动扫描、主动攻击、爬虫、fuzzing、渗透测试等。在国外安全圈和渗透测试领域应用非常广泛,在youtube上有许多关于ZAP的视频资料。与burp suite相比,前者是一款商业渗透测试工具,部分功能不能使用,国内的大部分使用者都使用的破解版,而ZAP是开源免费的

fl studio24.1.1.4285中文版怎么破解?FL Studio 2024安装破解使用图文教程

fl studio24.1.1.4285中文破解版是一款功能强大的编曲软件,也就是众所熟知的水果软件。它可以编曲、剪辑、录音、混音,让您的计算机成为全功能录音室。除此之外,这款软件功能非常强大,为用户提供了许多音频处理工具,包含了编排,录制,编辑,混音和掌握专业品质音乐所需的一切,支持多音轨录音时间拉伸和音高移动原始音频编辑。本身也可以作为VSTi或DXi的插件,Cubase、Logic、Orio

算法导论书本第3版_中文版和英文版_完整版本_带目录_PDF

整理的算法导论资源,下载链接: 中文版: http://download.csdn.net/download/u013359794/10231906 英文版: http://download.csdn.net/download/u013359794/10232121

Windows Server 2019 中文版、英文版下载 (updated Aug 2024)

Windows Server 2019 中文版、英文版下载 (updated Aug 2024) Windows Server 2019 Version 1809 请访问原文链接:https://sysin.org/blog/windows-server-2019/,查看最新版。原创作品,转载请保留出处。 本站将不定期发布官方原版风格月度更新 ISO。 Windows Server

A Tutorial on Near-Field XL-MIMO Communications Towards 6G【论文阅读笔记】

此系列是本人阅读论文过程中的简单笔记,比较随意且具有严重的偏向性(偏向自己研究方向和感兴趣的),随缘分享,共同进步~ 论文主要内容: 建立XL-MIMO模型,考虑NUSW信道和非平稳性; 基于近场信道模型,分析性能(SNR scaling laws,波束聚焦、速率、DoF) XL-MIMO设计问题:信道估计、波束码本、波束训练、DAM XL-MIMO信道特性变化: UPW ➡ NU

自然语言处理(NLP)-预训练模型:别人已经训练好的模型,可直接拿来用【ELMO、BERT、ERNIE(中文版BERT)、GPT、XLNet...】

预训练模型(Pretrained model):一般情况下预训练模型都是大型模型,具备复杂的网络结构,众多的参数量,以及在足够大的数据集下进行训练而产生的模型. 在NLP领域,预训练模型往往是语言模型,因为语言模型的训练是无监督的,可以获得大规模语料,同时语言模型又是许多典型NLP任务的基础,如机器翻译,文本生成,阅读理解等,常见的预训练模型有BERT, GPT, roBERTa, transf

3分钟带你手把手安装一款音乐制作神器——FL Studio 24.1.1.4285中文版

大家好,今天我要给大家介绍一款音乐制作神器——FL Studio 24.1.1.4285中文版。这款软件可是音乐制作界的翘楚,无论是专业人士还是音乐爱好者,都会为它的强大功能和易用性所折服。 我们来看看FL Studio的特点。这是一款全能型的音乐工作站,集编曲、混音、录音、演奏于一体。无论你是想创作电子音乐,还是流行歌曲,甚至是电影配乐,FL Studio都能满足你的需求。它的界面简洁明了,操作

微分方程(Blanchard Differential Equations 4th)中文版Section6.3

二阶线性方程 Laplace 变换求解 在这一节中,我们将拉普拉斯变换方法扩展到二阶常系数强迫线性方程,即具有以下形式的方程: d 2 y d t 2 + p d y d t + q y = f ( t ) , \frac{d^2 y}{dt^2} + p \frac{dy}{dt} + qy = f(t), dt2d2y​+pdtdy​+qy=f(t), 其中 p p p 和 q q

ChatGPT3.5/4.0新手使用手册,国内中文版使用教程

引言 欢迎使用ChatGPT!无论你是刚开始接触AI聊天机器人,还是已经有了一些使用经验,这篇新手使用手册将帮助你快速上手,并且从ChatGPT中获得最优的体验。本文主要聚焦于提示词(Prompt)的使用教学,通过正确的提示词引导,你将能够更好地与ChatGPT进行互动。 什么是提示词? 提示词是你与ChatGPT交流时使用的指令或问题。它们告诉模型你想要得到什么样的信息、建议或创意。有效的