kamma是一个非常简单的任务文件队列

kamma的Python项目详细描述


kamma是一个非常简单的任务文件队列,它保存任务及其所需的数据。它还有一个处理所有挂起任务的辅助进程。

VersionVersionsStatusCoverageLicense

动机

目前,由于多种原因,本地磁盘访问是一种被低估的资源,然而存储的数据即使在断电后也总是可用的。相比之下,网络资源或远程第三方并不总是准备就绪。为此,我开发了kamma以便将dependent任务与远程服务的痛苦隔离开来。kamma将尝试永远按照队列顺序处理所有挂起的任务。

限制

  • 到^ {Tt1} $任务可以最大化排队。
  • 所有任务的参数都应该可以通过json序列化
  • 不建议用于高性能方案。

安装

简单到:

^{tt2}$

示例

importkamma# python 2 and 3 compatibility issuetry:input=raw_inputexceptNameError:pass# kamma workerapp=kamma.Worker()# registering fibonacci callback in kamma app@app.task_callback(timeout=5,retry_wait=kamma.wait_fixed(1),retry_stop=kamma.stop_after_attempt(1))deffibonacci(n,level=0):result=1ifn<0orn>100:raisekamma.AbortTask("n has to be 0 <= n <= 100")ifn>1:result=fibonacci(n-1,level=level+1)+fibonacci(n-2,level=level+1)iflevel==0:print("*** RESULT: fibonacci of '{}' is '{}' ***".format(n,result))returnresultif__name__=="__main__":# start listening for incoming tasksapp.run_async()print("Enter the value of the fibonacci you want to compute, 0 to exit")n=1whileTrue:n=int(input(""))ifn==0:break# add new fibonacci taskapp.push_task(fibonacci,n=n)app.stop()

这里的完整示例:examples/example.py

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

推荐PyPI第三方库


热门话题
java结合两个Date实例使用Joda创建datetime   带有POI和FileOutputStream的java Swing应用程序性能问题   Java中是否存在类似于Python的异常?   Java中有界通配符的泛型   使用字符和子字符串的java不同输出   在Java中获取LDAP模式   java自定义类在自身上生成ClassNotFoundException   java连接到从internet到通过LAN连接到internet的系统的serversocket   java如何通过maven在jaxws中使用jaxb插件?   java Kerberos如何获取主体或客户端名称?   java应用服务器中是否有JDBC的单点登录解决方案?   java是存储矩阵值以便以后访问的更好方法   Java等级计算器。开始这门课我需要一些帮助   未找到Android“libc++\u shared.so”中的java OpenCV实现   当我使用web配置部署描述符时使用java。xml。它显示了错误   java为什么我的ArrayList的add方法冲突,如何编辑我的自定义add方法   java创建一个以集合为键的映射?   java如何将用户输入到数字三角形中   为什么Java在读取LinkedHashMap时会自动从字符串转换为整数   类动态创建和读取java类