我正在为Python 2.x寻找一个易于学习的Actor库或框架。我尝试了Candygram和Twisted,但我不喜欢它们。我想要一些很容易扩展到suppero Greenlet(= stackless python)的东西。
你有什么建议?
答案 0 :(得分:19)
要使gevent成员,请使用带有嵌入式Greenlet实例的gevent.queue.Queue子类作为收件箱。要从收件箱中阅读邮件,只需从队列中get()即可。要向演员发送消息,put将其发送到该演员的队列中。
Read about subclassing Greenlet here
如果您需要编写Actor类的帮助,请随意ask the mailing list。
答案 1 :(得分:14)
查看pulsar,它是python的并发框架,它使用actor模型作为并行执行的源。
答案 2 :(得分:8)
我知道这个问题有点陈旧但现在这是python的另一个actor资源:
https://github.com/godaddy/Thespian
可在此处找到文档:
http://godaddy.github.io/Thespian/doc/
修改强>:
此库的主要作者后来离开了GoDaddy并分叉了回购:
https://github.com/kquick/Thespian
可在此处找到新文档:
答案 3 :(得分:5)
Pykka和Wikipedia Actor Model page,因此您可能需要查看其中一个。
Pykka似乎正在积极开发(2012年12月发布1.0.1),而PARLEY自2007年以来一直没有发布(并且仍然被列为测试版)。 Pykka声称只有Akka的名字才能成为一个简单的python端口。
答案 4 :(得分:3)
这个tutorial有一个简单而有效的示例,适用于gevent的演员。基本上它就像丹尼斯已经描述过的那样。
答案 5 :(得分:3)
我会看一下:https://bitbucket.org/fzzzy/python-actors
它几乎是Erlang actor模型的直接克隆,“已保存”的消息队列,链接和所有内容。