消息通信库ZeroMQ 4.0.4安装指南

简介: 消息通信库ZeroMQ 4.0.4安装指南 一、ZeroMQ介绍 ZeroMQ是一个开源的消息队列系统,按照官方的定义,它是一个消息通信库,帮助开发者设计分布式和并行的应用程序。
消息通信库ZeroMQ 4.0.4安装指南

一、ZeroMQ介绍

ZeroMQ是一个开源的消息队列系统,按照官方的定义,它是一个消息通信库,帮助开发者设计分布式和并行的应用程序。

首先,我们需要明白,ZeroMQ不是传统的消息队列系统(比如ActiveMQ、WebSphereMQ、RabbitMQ等)。ZeroMQ可以帮助我们建立自己的消息队列系统,它只是一个库。
ZeroMQ可以运行于带x86处理器或ARM处理器的机器上,支持40多种编程语言。

消息队列,从技术的角度来讲,是以先进先出FIFO算法为基础的队列技术,它有着良好的数据结构。除此以外,还有优先级队列、双端队列等队列技术。不管怎么样,其基本思想是把数据添加到队列中,接收端准备好以后,从队列中取回数据。
采用消息队列技术可以保证无论发生了什么,消息都会被交付到目的地。
消息队列允许松耦合的组件之间进行异步通信,还提供了坚实的队列一致性。如果资源不足,会阻止你立即处理发送的数据,你可以把消息放入消息队列服务器,由消息队列服务器来存储数据,直到目的地准备好接收消息。
消息队列在大规模分布式系统和异步通信中扮演着重要的角色。

二、ZeroMQ特征

1)ZeroMQ很简单

我们可以做异步I/O操作,ZeroMQ可以在一个I/O线程中把消息队列化。ZeroMQ的I/O线程是异步的,当处理网络交通时,它可以帮助我们完成很多剩余的工作。
2)ZeroMQ相当快
Second Life网站有13.4毫秒的端到端延时和高达每秒410万条消息的处理量。ZeroMQ能使用广播传输协议——它是把数据传输到多个目的地的好方法。
3)无代理设计
与其它传统的消息队列系统不同,ZeroMQ是无代理式的。传统的消息队列系统,通常都有中央消息服务器(Broker),每个节点都连接到这个中央节点,每个节点都通过中央节点与其它节点通信,而不是节点间彼此直接通信。
而ZeroMQ是无代理式的,应用程序彼此可以直接通信,无需通过中间代理Broker。
注意:ZeroMQ不会在磁盘上存储消息。但是,可以通过使用本地交换文件的方式存储消息。设置zmq.SWAP。

三、准备条件

OS:CentOS 6.5 x64

ZeroMQ:4.0.4版

四、安装ZeroMQ

1)下载ZeroMQ

执行命令:
$ wget http://download.zeromq.org/zeromq-4.0.4.tar.gz
2)解压ZeroMQ
$ tar zvxf zeromq-4.0.4.tar.gz
$ mv zeromq-4.0.4 zeromq
$ cd zeromq
3)编译安装
$ ./configure
......
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/home/chuser/zeromq':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
提示缺少C编译器,先安装GCC。
$ sudo yum install gcc
安装OK!再次执行
$ ./configure
......
checking whether the C++ compiler works... no
configure: error: Unable to find a working C++ compiler
提示缺少C++编译器,先安装G++。
$ sudo yum install gcc-c++
安装OK!再次执行
$ ./configure
$ make
$ sudo make install
ZeroMQ安装成功!
目录
相关文章
|
4月前
|
人工智能 编解码 搜索推荐
16个AI Logo 设计工具大盘点:技术解析、Logo格式对比与实用推荐
本文介绍了品牌标志(Logo)的重要性,并盘点了多款免费且好用的 Logo 生成工具,分析其输出尺寸、格式及适用场景,帮助无设计基础的用户选择合适工具,高效制作满足不同用途的 Logo。
463 0
|
安全 Apache
CVE-2021-41773|CVE-2021-42013——Apache HTTP Server路径遍历|远程代码执行
CVE-2021-41773|CVE-2021-42013——Apache HTTP Server路径遍历|远程代码执行
1003 0
CVE-2021-41773|CVE-2021-42013——Apache HTTP Server路径遍历|远程代码执行
|
存储 Java Shell
shell学习笔记(详细整理)
这篇文章是一份详细的Shell学习笔记,涵盖了Shell的基础知识、脚本编写、变量、运算符、条件判断、流程控制、函数以及常用Shell工具的使用。
441 2
|
存储 分布式计算 数据处理
解释弹性分布式数据集(RDD)的概念
【8月更文挑战第13天】
1149 4
|
Java 数据库连接 容器
web后端-SSM快速了解和架构介绍
web后端-SSM快速了解和架构介绍
|
分布式计算 数据可视化 Hadoop
【分布式计算框架】HDFS常用操作及编程实践
【分布式计算框架】HDFS常用操作及编程实践
627 1
|
存储 缓存 监控
【Docker 专栏】Docker 容器性能调优实战
【5月更文挑战第8天】本文探讨了Docker容器的性能调优技巧,包括理解容器性能指标(如CPU、内存、网络和磁盘I/O)并进行相应调优。重点讲述了CPU和内存的限制设置,网络配置优化以及磁盘I/O性能提升方法。通过实例展示了如何解决高CPU使用率问题,强调了根据应用需求进行调优的重要性,以实现更高效、稳定的容器运行。
729 0
【Docker 专栏】Docker 容器性能调优实战
|
自然语言处理 对象存储 知识图谱
智能客服对话系统解决方案
针对问题咨询场景中出现大量相关领域的问题,PAI提供了智能客服对话系统解决方案,以降低客户等待时间和人工客服成本。本文以汽车售前咨询业务领域为例,介绍如何基于人工智能算法,快速构建智能客服对话系统。
智能客服对话系统解决方案
|
JSON 前端开发 Java
Spring Validation参数效验各种使用姿势
在日常的项目开发中,为了防止非法参数对业务造成的影响,需要对接口的参数做合法性校验,例如在创建用户时,需要效验用户的账号名称不能输入中文与特殊字符,手机号、邮箱格式是否准确。
5366 7