autobahn python的组件运行程序集合
autobahn-python-runners的Python项目详细描述
opendna autobahn python runners包提供了许多脚本 可用于启动Autobahn Python组件并将其连接到WAMP 路由器。
目录
- 安装
- 用法
- 命令行参数
- 扭曲流道
- 异步运行程序
- 异步多通道
- 路线图
安装
pip install autobahn-python-runners
安装包时,它将在 python环境的脚本路径:
- run_twisted_component
- run_asyncio_component
- run_asyncio_components
或者,您可以使用pip install uvloop来增强事件循环性能 异步运行程序。为此,需要安装libuv。
用法
可通过以下两种方法之一使用:
- 执行在安装过程中创建的一个脚本
- 使用标准的python -m方法执行其中一个模块
命令行参数
所有运行程序都支持以下命令行参数 包含在这个包中:
所需参数:
- -c或--component是指向高速公路Python的完全限定路径 组件类,例如some_org.some_package.some_module.SomeClass。可以是 或者使用WAMP_COMPONENTenvironment变量指定
- -u或--url是WAMP路由器连接到的URL 例如ws://localhost:8080。也可以使用 WAMP_URL环境变量
- -r或--realm是您正在连接的WAMP路由器上的一个域。例如。 my.realm.name。也可以使用^{tt19}指定$ 环境变量
可选参数:
- -e或--extra-file是将加载的json文件的路径,并且 通过 类构造函数方法
- -s或--use-ssl是将转换为布尔值并用于 指定是否应将ssl用于ws连接。这个 参数通常是不必要的,因为使用ssl的决定通常是 由WAMP路由器URL的WS协议选择决定。它是制造出来的 此处仅为完整起见提供
- -l或--loglevel用于指定运行程序使用的日志记录级别。 默认为info,其他允许值为critical,error, warning和debug
- --serializers是指向高速公路Python序列化程序的完全限定路径 上课可以多次指定此参数
扭曲流道
扭曲转轮由^{tt32}提供$ 模块,可用于运行从 autobahn.twisted.ApplicationSession类。
异步运行程序
异步运行程序由^{tt34}提供$ 模块,可用于运行从 autobahn.asyncio.ApplicationSession类。
异步多通道
异步多运行程序由^{tt36}提供$ 模块,可用于运行从 autobahn.asyncio.ApplicationSession类在单个python进程中。
这些组件将在单个事件循环中运行,但每个组件将 建立到wamp路由器的单独ws连接。
Asyncio Multi Runner对参数选项进行以下更改:
- -c/--component可以多次传递以指定 多个组件类。每个类实例都将连接到同一个 使用相关参数指定的WAMP路由器和领域
- -e/--extra-file仍然可以使用,但在 它希望json文件包含一个普通对象,其中 key是使用-c/--component参数指定的组件类 与每个键相关联的值是要提供的数据的纯对象 到相关组件类ins通过 类构造函数方法
- -n/--necromancy用于启用传输恢复功能。什么时候? 启用多通道将定期检查wamp连接 组件和路由器之间发生故障。如果检测到故障,则 将创建一个新的组件实例并尝试连接到路由器
- --necromancy-sleep接受整数,默认为10。这个参数 指定将如何定期检查失败的wamp连接
路线图
完成时间:
- 扭曲流道
- 异步运行程序
- 异步多通道
- 基本文档
- 对异步运行程序的uvloop支持
- 多个跑步者可以透明地重新启动崩溃的组件
待办事项:
- 测试
可能:
- 扭曲多流道