zope.server的ZooKeeper注册包装器
项目描述
zc.zkzopeserver 为zope.server WSGI运行器提供了一个包装器,该包装器会注册到ZooKeeper。通过注册到ZooKeeper,您可以让操作系统分配端口,并让客户端通过查看ZooKeeper来找到您的服务器。
基本用法
该包装器用于已部署的配置文件
[server:main] use = egg:zc.zkzopeserver zookeeper = zookeeper.example.com:2181 path = /fooservice/providers
该包装器支持以下选项
- zookeeper
必需的ZooKeeper连接字符串
- 路径
必需的路径,用于注册您的服务器
通过将具有服务器地址的ZooKeeper临时节点添加到路径的子节点,以注册您的服务器。
- 主机
监听的主机名或IP地址,默认为空
- 端口
监听的端口,默认为0
- session_timeout
以毫秒为单位的ZooKeeper会话超时
- threads
线程池的大小,默认为1
- monitor_server
一个zc.monitor服务器地址。
值是一个形式为HOST:PORT的地址。见下面的监控服务器。(主机可以为空以监听所有接口。)
- loggers
日志配置。
这可以是以下之一
一个日志级别名称(CRITICAL、ERROR、WARNING、INFO或DEBUG),或者
一个ZConfig日志器定义字符串。
如果配置中包含格式字符串,您需要使用双美元符号而不是%,如下所示
format $$(message)s
这是由于Paste Deployment配置语法中使用了字符串格式。
监控服务器
“zc.monitor”包提供了一个简单的可扩展命令服务器,用于收集监控数据或提供对服务器的运行时控制。如果“zc.monitor”包含在Python路径中,“zc.zkzopeserver”可以启动一个监控服务器,并将其地址作为服务器临时端口的“monitor”属性提供。要了解它是如何工作的,让我们更新之前的示例
[server:main] use = egg:zc.zkzopeserver zookeeper = zookeeper.example.com:2181 path = /fooservice/providers monitor_server = 127.0.0.1:0
当我们的Web服务器运行时,“/fooservice/providers”节点看起来可能如下
/providers /1.2.3.4:61181 monitor = u'127.0.0.1:61182' pid = 4525
关于监控服务器的一些说明
除非您已注册一些命令插件,否则监控服务器将没有用处。
“zc.monitor”不是“zc.zkzopeserver”的依赖项,除非您安装它,否则它不会包含在Python路径中。
“zc.zservertracslog”集成
“zc.zservertracelog”包扩展了zope.server,以提供对“trace”日志的支持,这些日志在请求通过各个阶段时包含多个日志条目。
如果您想与“zc.zkzopeserver”一起使用“zc.zservertraeslog”,请确保“zc.zservertracelog”包含在您的Python路径中,并在服务器部分包含“zservertracelog”选项
[server:main] use = egg:zc.zkzopeserver zookeeper = zookeeper.example.com:2181 path = /fooservice/providers monitor_server = 127.0.0.1:0 zservertracelog = true
变更历史
0.3.0 (2012-02-02)
添加了日志配置支持。
修复:服务器使用socket.getsockname()返回的主机信息进行注册,这是无用的。
修复:终止服务器(使用SIGTERM)不会干净地关闭ZooKeeper连接,导致注册的临时节点移除延迟。
0.2.0 (2012-01-18)
添加了使用zc.zservertracelog生成跟踪日志的可选支持。
0.1.0 (2011-12-11)
首次发布
项目详情
zc.zkzopeserver-1.3.2.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 4ffa3c3cd58a5af75b82ccfe76cd51cd6d58bae8336ed7f35050a5c93003ab71 |
|
MD5 | 9f8d715299672a589f0081c8e3c88e1f |
|
BLAKE2b-256 | 928f2ed93ed87da087d0df2bc857d410f5df1fc2c5a35b817a507fce31b56451 |