为什么使用ZeroMQ作为消息队列

1 基本优点

1.1 简单
  1. 仅仅提供24个API接口,风格类似于BSD Socket。
  2. 处理了网络异常,包括连接异常中断、重连等。
  3. 改变TCP基于字节流收发数据的方式,处理了粘包、半包等问题,以msg为单位收发数据,结合Protocol Buffers,可以对应用层彻底屏蔽网络通信层。
  4. 对大数据通过SENDMORE/RECVMORE提供分包收发机制。
  5. 通过线程间数据流动来保证同一时刻任何数据都只会被一个线程持有,以此实现多线程的“去锁化”。
  6. 通过高水位HWM来控制流量,用交换SWAP来转储内存数据,弥补HWM丢失数据的缺陷。
  7. 服务器端和客户端的启动没有先后顺序。
1.2 灵活
  1. 支持多种通信协议,可以灵活地适应多种通信环境,包括进程内、进程间、机器间、广播。
  2. 支持多种消息模型,消息模型之间可以相互组合,形成特定的解决方案。
1.3 跨平台

支持Linux、Windows、OS X等。

1.4 多语言

可以绑定C、C++、Java、.NET、Python等30多种开发语言。

1.5 高性能

相对同类产品,性能卓越。

2 业务考虑

  1. 支持多种消息模型,交叉式收发,可以在程序中使用zmq给消息做标识,仅在匹配的机器上运行
  2. 性能卓越,可能有机器收不到信息,但对于分布式集群来说不算什么
  3. 轻量级,不会给程序带来巨大的负担
  4. 支持多种通信协议(进程内,进程间,机器间,广播)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值