首页 > 其他 > 详细

Firefly官方教程之Distributed使用文档

时间:2014-07-18 08:15:22      阅读:311      评论:0      收藏:0      [点我收藏+]

 

distributed使用文档
1、distributed说明
该模块主要封装了各个服务进程间进行通信的方法。node子节点域root根节点进程中的接口调用返回的都是延迟对象。关于延迟对象的使用,详见twisted中Deferred对象。
2、结构解析

<ignore_js_op>
bubuko.com,布布扣


PBRoot,root节点对象
ChildsManager,子节点管理基类
Child对象对应的是连接到本服务进程的某个服务进程对象。称为子节点对象
RemoteObject远程调用对象,子节点服务进程中实现。可以通过这对象去调用root节点的进程中的接口方法。
3、使用示例
1)test_distributed_root.py

<ignore_js_op>
bubuko.com,布布扣


2)test_distributed_node.py

<ignore_js_op>
bubuko.com,布布扣


3)上面分别为root(根节点)和node(子节点)的例子,运行test_distributed_root.py文件,你会看到下图,说明服务器已经启动,并开始监听1000这个端口。

<ignore_js_op>
bubuko.com,布布扣


5秒内运行test_distributed_node.py文件,你会在root这边看到下图,

<ignore_js_op>
bubuko.com,布布扣


并在node这边看到下图,

<ignore_js_op>
bubuko.com,布布扣


4)解释下,test_distributed_root.py运行时,root回去监听1000这个端口,处理消息的协议为BilateralFactory(root),并在5秒后调用“调用子节点接口”这个方法,后面三个参数,‘test_node’是子节点的id,即要调用哪个子节点的接口,‘printOK’是子节点中要被调用的方法名,‘asdfawefasdf’是要调用的那个方法需要的参数。即root会在5秒后调用node中的printOK这个方法,参数是‘asdfawefasdf’,所以test_distributed_node.py要在5秒内启动。test_distributed_node.py运行时,会去连接root监听的这个端口,所以你会在root这边看到“node [test_node] takeProxy ready”,说明test_node这个子节点已经连到root节点了,可以进行交互了。node会在启动后的1秒后去调root中的printData1这个方法,后面是需要的参数,执行结果如上。

Firefly官方教程之Distributed使用文档,布布扣,bubuko.com

Firefly官方教程之Distributed使用文档

原文:http://www.cnblogs.com/9miaoshetuan/p/3851266.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!