【Firefly API 新版文档】Package Distributed

package distributed这个包中主要封装了各个服务进程间进行通信的方法。node子节点域root根节点进程中的接口调用返回的都是延迟对象。关于延迟对象的使用,详见twisted中Deferred对象。
calss Child child对象对应的是连接到本服务进程的某个服务进程对象。称为子节点对象。
getName获取子节点的名称

  1. type method
  2. //cwd firefly/ distributed / child.py
  3. Params getName()
  4. 返回节点的名称

复制代码

setTransport设置子节点的通道

  1. type method
  2. //cwd firefly/ distributed / child.py
  3. Params setTransport(transport)

复制代码

transport代理通道的实例 instance型
callbackChild回调子节点的接口

  1. type method
  2. //cwd firefly/ distributed / child.py
  3. Params allbackChild(*args,**kw)

复制代码

将参数*args,**kw传入 callChild 方法中,返回的是等待 callChild 返回结果的延迟对象
    
class ChildsManager    子节点管理基类
getChildById根据节点id获取节点实例‘‘

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params getChildById(childId)

复制代码

childId 节点id int型
返回节点实例

getChildByName根据节点的名称获取节点实例

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params getChildByName(childname)

复制代码

childname 节点名称 str型
返回节点实例
addChild添加一个子节点

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params addChild(child)

复制代码

child 节点实例 instance型
将节点添加到管理器中,格式为{节点id:节点实例},如果节点已存在,返回文字说明
dropChild删除一个节点

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params dropChild(child)

复制代码

child 节点实例 instance型
将节点从管理器中删除

dropChildByID

通过节点id删除一个节点

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params dropChildByID(childId)

复制代码

childId 节点id int型
通过节点id,在节点管理器中删除该节点
callChild调用子节点的接口

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params callChild(childId,*args,**kw)

复制代码

childId 子节点id
通过子节点id获取子节点实例,调用子节点接口,返回的是延迟对象。

callChildByName通过节点名称调用子节点的接口

  1. type method
  2. //cwd firefly/ distributed / manager.py
  3. Params callChildByName(childname,*args,**kw)

复制代码

Childname  子节点名称
通过子节点名称获取子节点实例,调用子节点接口,返回的是延迟对象。

class RemoteObject远程调用对象,子节点服务进程中实现。可以通过这对象去调用root节点的进程中的接口方法。
setName设置节点的名称

  1. type method
  2. //cwd firefly/ distributed / node.py

复制代码

Params setName(name)

name 节点名称 str型

将节点名称设置为name

getName获取节点的名称

  1. type method
  2. //cwd firefly/ distributed / node.py
  3. Params getName()

复制代码

返回节点名称的字符串
connect初始化远程调用对象,连接root节点。

  1. type method
  2. //cwd firefly/ distributed / node.py
  3. Params connect(addr)

复制代码

Addr 远程连接的地址 tuple型 (主机名,端口号) 例如:(‘localhost’,8888)
addServiceChannel设置服务对象,这个服务对象中管理了可供root节点调用的接口方法。

  1. type method
  2. //cwd firefly/ distributed / node.py
  3. Params addServiceChannel(service)

复制代码

service为 //cwd firefly/ utils/ services.py 中service类
takeProxy像远程服务端发送代理通道对象

  1. type method
  2. //cwd firefly/ distributed / node.py
  3. Params takeProxy()

复制代码

callRemote远程调用root节点中的接口方法。

  1. type method
  2. //cwd firefly/ distributed / node.py
  3. Params callRemote(commandId,*args,**kw)

复制代码

commandId 指令号 int型
远程调用root节点中指令号为commandId的方法

class ProxyReference    代理通道
addService-----------添加一条服务通道

  1. type method
  2. //cwd firefly/ distributed / reference.py
  3. Params addService(service)

复制代码

service服务通道实例 instance型

remote_callChild--------------代理发送数据

  1. type method
  2. //cwd firefly/ distributed / reference.py
  3. Params remote_callChild(command,*arg,**kw)

复制代码

class PBRootPB 协议,root节点对象。
addServiceChannel设置服务对象,这个服务对象中管理了可供node子节点调用的接口方法。

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params addServiceChannel(service)

复制代码

service服务对象实例 instance型
remote_takeProxy设置代理通道

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params remote_takeProxy(name,transport)

复制代码

name 子节点id,同时也是子节点名称
transport代理通道的实例 instance型
实例化child节点,将child节点添加到节点管理器中,设置节点代理通道为transport
remote_callTarget远程调用方法

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params remote_callTarget(command,*args,**kw)

复制代码

command指令号 int型
远程调用root节点中指令号为command的方法
dropChild删除子节点记录

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params dropChild(*args,**kw)

复制代码

从节点管理器中删除子节点
dropChildByID根据ID删除子节点记录

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params dropChildByID(childId)

复制代码

ChildId 子节点id

callChild调用子节点的接口

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params callChild(key,*args,**kw)

复制代码

key子节点id
通过子节点id获取子节点实例,调用子节点接口,返回的是延迟对象。

callChildByName调用子节点的接口

  1. type method
  2. //cwd firefly/ distributed / root.py
  3. Params callChildByName(childname,*args,**kw)

复制代码

childname子节点名称
通过子节点名称获取子节点实例,调用子节点接口,返回的是延迟对象。

【Firefly API 新版文档】Package Distributed

时间: 2024-08-29 09:12:05

【Firefly API 新版文档】Package Distributed的相关文章

【Firefly API 新版文档】Package dbentrust

原地址:http://blog.csdn.net/uxqclm/article/details/11969653 该包下面主要是数据库的处理与memcached存储.里面封装了,从memcached数据到python对象的映射.可以以操纵python对象的方式进行memcached中存储的数据的操作,只要在不同的进程中实例化相同名称的memobject对象,就能保证对象中的数据是一致的.还包含了将这个对象中的数据同步到数据库的出来方法.这里不需去写一句sql语句. class DBPool数据库

API的文档自动生成——基于CDIF的SOA基本能力

当前,作为大部分移动app和云服务后台之间的标准连接方式,REST API已经得到了绝大部分开发者的认可和广泛的应用.近年来,在新兴API经济模式逐渐兴起,许多厂商纷纷将自己的后台业务能力作为REST API开放出来,给更广泛的第三方开发者使用. 但是,管理REST API并非是一件容易的工作.由于缺乏有效的接口数据schema约束,加上设计REST API时resource endpoint的安排,以及发送http请求的方式又都五花八门,REST API开发完成后,大多数情况下API开发者仍然

Swagger UI教程 API 文档神器 搭配Node使用 web api 接口文档 mvc接口文档

两种方案 一.Swagger 配置 web Api 接口文档美化 二.通过NodeJS 发布Swagger UI 配置api 文档 先说一下简单的 Swagger 配置 web Api  Swagger-UI本身只提供在线测试功能,要集成它还需要告诉它本项目提供的各种服务和参数信息.这里就需要一些工作量了,不过好在许多第三方库已经给我们完成了这一工作.我这里用的是Swashbuckle,使用它也比较简单,直接使用Nuget添加其程序包即可: 1.初始化包  PM> Install-Package

给自己的java程序生成API帮助文档

一.问题发现: 课本上提到"要学会给自己编写的程序生成API帮助文档",但又没有说明具体的操作步骤. 二.分析: API帮助文档有什么用?这么理解吧:如果想告诉别人你的类如何使用,里面有什么方法,要什么参数的话,除了现场解释,最好的方法是什么呢? 对了,就是写一份说明!一般开头可以有这么几项: /** * 项目说明 * @author 作者 * @version 版本 * @param 参数 * @return 返回值含义 * @throws 抛出异常的描述 * @deprecated

用Swashbuckle给ASP.NET Core的项目自动生成Swagger的API帮助文档

博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用Swashbuckle给ASP.NET Core的项目自动生成Swagger的API帮助文档.

swift api帮助文档中文 目录列表

欢迎来到 Swift    关于Swift    Swift之旅语言指南    基础知识    基本操作    字符串和字符    集合类型    控制流    函数    闭包    枚举    类和结构体    属性    方法     标     继承     初始化     反初始化     ARC     可选链接     类型转换     嵌套类型     扩展     协议     泛型     高级操作符 语言引用     关于语言引用     词法结构     类型     表

NSUserDefaults API中英文文档简介及使用

Overview The NSUserDefaults class provides a programmatic interface for interacting with the defaults system. The defaults system allows an application to customize its behavior to match a user's preferences. For example, you can allow users to deter

Oracle官网JDK的API离线文档下载方法

最近在学习JAVA开发,使用频率最高的工具莫过于JAVA API,当我们身边没有可连接的网络,而又急需API文档时候,很明显我们需要在我们的电脑存储一份离线文档.下面是去Oracle官网下载API Documentation的步骤: 0.在地址栏输入http://www.oracle.com/index.html 进入Oracle官网,如下图: 1.把鼠标移到Downloads那里,不要点它哦!会看到展开一系列Oracle的产品下载,注意到第一列有个叫做“Popular Downloads” 红

Openstack python api 学习文档

Openstack python api 学习文档 转载请注明http://www.cnblogs.com/juandx/p/4953191.html 因为需要学习使用api接口调用openstack,所以上一篇写了一些使用openstack的纯api调用的方法, 但是openstack还提供了更好的python的api,只需要python的包即可,感觉更好使用. 对于compute的api,包是放在了/usr/lib/python2.7/site-packages/novaclient/目录,