[关闭]
@SailorXiao 2016-08-25T16:24:10.000000Z 字数 586 阅读 2391

zeromq 学习和python实战

zeromq python


参考文档:

原理解读

zeromq只是一层针对socket的封装,介于传输层和应用层之间,并不是单独的服务或者程序,仅仅是一套组件。
zeromq使用c语言编写,相应速度非常快。

主要有以下几个部分:

- 主线程:负责相应用户的请求,比如创建zmq等
- IO线程:主要负责网络IO的调度,每个IO线程会对应一个异步poll(如select,epoll等),使用reactor模式

消息模型

有四种消息模型:

- 一对一: 最简单的1:1消息通信模型,Server只能接受一个连接,数据可以双向流动
- 请求回应:由请求端发起请求,然后等待回应端应答,一个回应端可以有多个请求端。一般请求端到回应端是单向的,类似RPC调用,只能请求端主动发起请求。
- 发布订阅模型:发布端单向发布数据,并不关系是否把信息发给订阅端。如果订阅端未连接,或者处理性能不足,消息可能被丢弃
- 推拉模型:server作为发布端,client作为pull端。多个client连接server时,server会做负载均衡

python实战

安装

从官网:http://zeromq.org/intro:get-the-software 上获取最新的包

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注