python中的小演员运行时。

tartp的Python项目详细描述


tart.js启发的Actor Model的python实现。

概述

关于tartpy的最初想法是从@dalnefre@tristanls。最初,目标是复制tart.js 在Python中。最近,它有点发散 版本3.4中引入了新的python异步模型。

tartpy旨在成为具有以下功能的actor库:

  • 它实现了纯actor模型(而不是erlang模型),
  • 它可以在实际情况下用来表示无锁和 并发算法,
  • 它将网络传输抽象为允许任意协议,
  • 它实现了capability based approach来隔离参与者, 使用薄膜(同样,这些想法是由于@dalnefre@tristanls)。膜的语义可能不同于 tartpytartjs

安装

安装时使用:

$ pip install git+https://github.com/waltermoreira/tartpy

或者克隆此存储库并使用python3 setup.py install

安装
$ git clone https://github.com/waltermoreira/tartpy
$ cd tartpy
$ python3 setup.py install

测试

使用以下命令运行测试:

$ python3 setup.py test

示例

使用以下命令运行示例:

python3 tartpy/example.py

还有一个IPython notebook显示了actors的基本属性。

项目actor_model包含幻灯片和ipython笔记本 2014年4月17日在TACC发表的演讲。

Erlang挑战

创建一个由Mactors组成的环,在环周围发送N消息:

python3 tartpy/erlang_challenge.py M N

基准

对于M = 100000N = 10

Starting 100000 actor ring
Construction time: 1.5192079544067383 seconds
Loop times:
  0.7743091583251953 seconds
  0.7793149948120117 seconds
  0.7702958583831787 seconds
  0.7602570056915283 seconds
  0.7704610824584961 seconds
  0.779731035232544 seconds
  0.7654228210449219 seconds
  0.7625432014465332 seconds
  0.7740719318389893 seconds
  0.7699680328369141 seconds
Average: 0.7706375122070312 seconds

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

推荐PyPI第三方库


热门话题
将PHP生成的公钥转换为Java公钥   java在服务中启动可取消的后台任务   java我能做这个通用的事情吗?   java Axis 1.4.1版在IBM上的部署为8.5版   java如何进行同步web服务调用   java从Spring控制器中的多个select获取值   java如何在JFrame中声明类(包含sapache Poi)的对象   jaxb反序列化XML以在Java中动态创建类   java如何为部署在Google云上的应用程序实现Google OAuth?   java我想了解libgdx的资产管理器   Java整数溢出   Windows任务管理器javaw。exe内存与Java任务控制   java如何让Android等待?