ZeroMQ 原理及其优点

来源:互联网 发布:京东联盟和淘宝联盟 编辑:程序博客网 时间:2024/05/16 14:29

简介:

ZeroMQ号称是“史上最快的消息队列”,基于c语言开发的,实时流处理sorm的task之间的通信就是用的zeroMQ。引用官方说法,“ZMQ(以下ZeroMQ简称ZMQ)是一个简单好用的传输层,像框架一样的一个socket library,他使得Socket编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ的明确目标是“成为标准网络协议栈的一部分,之后进入Linux内核”。现在还未看到它们的成功。但是,它无疑是极具前景的、并且是人们更加需要的“传统”BSD套接字之上的一 层封装。ZMQ让编写高性能网络应用程序极为简单和有趣。” 确实,它跟RabbitMQ,ActiveMQ之类有着相当本质的区别,ZeroMQ根本就不是一个消息队列服务器,更像是一组底层网络通讯库,对原有的Socket API加上一层封装,是我们操作更简便。使用时只需要引入相应的jar包即可。

工作模式:

ZeroMQ与其他MQ类似,也实现了3中最基本的工作模式:发布-订阅,请求-应答,管道

博文地址:http://www.2cto.com/kf/201606/514211.html

特点: 高到离谱的吞吐量、可自行开发持久化、支持数据量较小的持久化、不过只是保存到内存中。
除了点对点 即:请求-应答模式 是一对一 、不可有消息丢失 、其他都没有对消息丢失做强烈的保证、
官方给出的观点:我们希望消息的尽快送达、而不介意消息的丢失

zeromq的目标是成为网络协议栈的一部分、进而进军linux 内核 、所以与Rabbit Active 有着本质以及目标的区别

官方:http://zeromq.org/

扩展博客:ZeroMQ无锁队列分析

另:http://www.oschina.net/news/77769/pieter-hintjens-choose-euthanasia?p=1

        向作者致敬!
原创粉丝点击