【ZeroMQ】感叹生命&ZeroMQ初识

耗时半年!啃烂阿四大主流中间件笔记后,成功上岸阿里 我们来想一下,要在项目中使用一个新技术,是不是应该先了解市面上都有哪些常用的框架,所以应该从技术调研开始,选择合适的框架应用于我们的项目。那都有哪些中间件可供选择呢。其实现在主流的消息中间件就4种:kafka、ActiveMQ、RocketMQ、RabbitMQ下面我们来看一下,他们之间有什么区别,他们分别应该用于什么场景关于这四份消息中间件笔记,我只能在文章中展示部分的章节内容和核心截图文中所有资料已整理打包存放网盘,有需要的朋友可以点击下方的名片自取! 阅读详情
本来是技术的博客,但是我想留一些篇幅给这些追求极致的人,他们是前人,给了我们大树.
昨晚搜索ZeroMQ的相关资料,了解到它的作者Pieter Hintjens 已于20161004选择有尊严地
离开这个他爱的世界,我一直到凌晨三四点才睡,试图搜索很多关于他的事情,看了微博上有些
人说要放弃ZeroMQ,面对众多消息队列,很少人提及ZeroMQ,有人说它根本不是消息队列,而是
一个ZeroSocket.我暂时没有对它有很深入的了解,在此我不多说什么.之后我应该会好好研究
一下它,因为我在搜索招聘信息的时候有一家做极速交易系统的公司的JD里面有写到ZeroMQ,
对于极速的追求,可能ZeroMQ真的是被低估了,也可能是曲高和寡,这还需要大家慢慢去探索,
也许就像梵高的画一样.我这么说是因为,我搜索到的ZeroMQ资料如此的少,教学视频也寥寥无几,
昨晚看了京东零售部门的高级工程师说消息队列的时候好像也完全没有提到ZeroMQ,
也许是我搜索的方式不对,但也许官网和那本书就已足够详尽.但这的确是我暂时的感受.
希望自己可以好好研究一下ZeroMQ,据说它是
C++写的,也据说作者后来用C语言写了一个nanomsg,性能据说提高了3-4倍(我需要亲自去探索一下).
上面一句话引起我的思考,语言原来可以这么影响一个程序的性能,的确是的,C语言一定是目前
速度最快性能最好的语言(当然要配合好的程序员).


Pieter Hintjens的死亡协议:
http://hintjens.com/blog:115

ZeroMQ推荐书目(资源真的有限,不像Kafka它们有那么好的生态):
《ZeroMQ:云时代极速消息通知库》  --Pieter写的应该是中文译本



摘国内的一些对ZeroMQ的零星评价:
它是一个brokerless的ms系统,文档不是一般的多(我觉得很少,探索的人也很少,可能还没找到“圈子”吧).--微博网友 【张晨Archen】
ZeroMQ中文版后半部有作者的相关论述,另外,ZeroMQ和MQ没啥关系,不如叫ZeroSocket.--微博网友【pi1ot】
zero socket定位准确 最近用它来实时传输视频 效果比大部分的流媒体服务要好很多  --微博网友【shineyear2】



相关链接
http://wiki.zeromq.org/whitepapers:amqp-analysis
https://zeromq.org/(穿墙更快,why the wall????)
https://zeromq.org/get-started/

以上 致敬





希望我们大家可以尽量好好照顾自己的身体,来这个人世间,做完自己想做的事情之后再离开它.

欣赏一下官网提供的hello world勉强算是入门了吧(:

 

mq的面试题 20200908 1、如何使用 ActiveMQ 解决分布式事务? 在互联网应用中,基本都会有用户注册的功能。在注册的同时,我们会做出如下操作: 1. 收集用户录入信息,保存到数据库 2. 向用户的手机或邮箱发送验证码 等等… 如果是传统的集中式架构,实现这个功能非常简单:开启一个本地事务,往本地数据库中插入一条用户数据,发送 验证码,提交事物。 但是在分布式架构中,用户和发送验证码是两个独立的服务,它们都有各自的数据库,那么就不能通过本地事物 保证操作的原子性... 阅读详情

相关推荐

zeromq和protobuf的c++示例代码适合初学者快速了解,上手

zeromq和protobuf的示例代码适合初学者快速了解,上手,后端开发必学的protobuf protobuf版本:libprotoc 3.21.0-rc1

为什么 ZeroMQ 不应该成为你的第一选择

Tyler Treat 是一名软件开发人员,他近日发表了一篇博文《为什么ZeroMQ 不应该成为你的第一选择》。文中,Tyler Treat 对 nanomsg 和 ZeroMQ 进行了比较。nanomsg 是一个套接字库,提供了多种常见的通信协议,其目标是使网络层更快、更具扩展性、更容易使用。它用 C 进行了彻底地重写,可以说是对 ZeroMQ 的重建。它构建在 ZeroMQ 的可靠性能之上,同时又提供了若干重要的改进。而且,它还试图消除 ZeroMQ 经常出现一些怪异行为。作者从以下几个方面对二者进行了

木牛的博客 2984

[模型部署]-[LLM]昇腾部署Qwen3-Coder-30B-A3B-Instruct

摘要:本文介绍了在Ascend NPU上部署Qwen3-Coder-30B-A3B-Instruct大模型的实践过程。通过vLLM-Ascend框架,详细说明了环境准备(CANN 8.1、PyTorch-NPU 2.5.1等)、模型下载、容器启动及服务部署步骤,包括vLLM服务的启动参数配置和接口测试方法。测试结果显示在当前2卡910B3配置下性能表现仅为8token/s(1并发),并指出流式调用时存在无法输出usage信息的问题。该方案为Ascend平台私有化部署大模型推理服务提供了参考实现。

1672

ZeroMQZeroMQ研究与应用分析

1 ZeroMQ概述ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。2 系统架构2.1总体架构ZeroMQ几乎所有的I/O操作都是异步的,主线程不会被阻塞。ZeroMQ会根据用户调用zmq_init函数时传入的接口参数,创建对应数量的I/O Thread。每个I/O Thread都有与之绑

木牛的博客 1136

Quartus (Quartus Prime 18.1)的安装及仿真步骤

前两天做计组的课设需要用到Quartus 这个软件,但安装有点麻烦,在网上搜了很多教程,发现都是旧版本的,最后弄了好半天才把环境搭建好。所以,分享一下它的搭建过程。 因为我不经常用它,所以安装的版本是精简版的其他版本的也应该差不多以下是需要下载的安装包: 准备: Quartus Prime 精简版,最新发布: v18.1 1. QuartusLiteSetup-18.1.0.625-wi...

weixin_41082948的博客 8万+

(数字ic验证)从零开始的apb_watchdog验证模块搭建(一、功能介绍与环境搭建)

apb_watchdog验证模块搭建(一)文章目录 文章目录apb_watchdog验证模块搭建(一)文章目录前言一、apb_watchdog简单功能介绍二、测试平台环境搭建1.测试所用模板介绍2.tb与interface2.env与watchdog_pkg3.test与base_sequence4.Makefile总结——当前验证结构 前言 本文介绍了apb_watchdog验证模块的搭建过程与其具体代码,主要包括其中验证环境的构建,测试序列的发送与回归测试收集。主要运用systemvorilog与u

peop1e的博客 9739

为什么需要使用zeromq

现在的许多应用是包括跨越不同网络的组件,LAN或者Internet。因此许多应用做了消息机制。另一些开发人员使用消息队列产品,但是大多数时候他们自己写,使用TCP或者UDP。这些协议并不难用,但是从A发送几个字节到B和一个可靠的消息机制有很大的区别。 让我们看看我们将面临什么问题,当我们开始使用TCP时的一些经典问题。任何可重复使用的消息层都需要解决部分和全部。 - 我们如何处理I/O?难度我们

john_crash的专栏 1790

Pixhawk变砖自救指南:从DFU模式到固件重刷全流程(附2.4.8实测)

本文详细介绍了Pixhawk飞控变砖后的自救方法,从DFU模式进入、固件重刷到高级恢复技巧全流程。特别针对国产版本boot0引脚未引出的特殊情况提供了解决方案,帮助用户通过QGC或Mission Planner地面站工具恢复飞控功能,适用于2.4.8等常见固件版本。

weixin_29168813的博客 338

浅析ZeroMQ

ZeroMQ号称是“史上最快的消息队列”,基于c语言开发的,实时流处理sorm的task之间的通信就是用的zeroMQ。 引用官方说法,“ZMQ(以下ZeroMQ简称ZMQ)是一个简单好用的传输层,像框架一样的一个socket library,他使得Socket编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ的明确目标是“成为标准网络协议栈的一部...

AudiFashion的博客 2万+

NXP S32k3 MCAL EMIOS PWM配置

NXP s32k 配置 EMIOS PWM

Leon_0125的博客 2703

22、狭义相对论与曲线坐标空间相关知识解析

本文深入解析了狭义相对论与曲线坐标空间的核心概念,涵盖能量-动量张量的定义与守恒、曲线坐标系下的度量张量与基向量性质、协变与逆变张量的变换规则,并介绍了克里斯托费尔符号与协变导数的计算方法。进一步探讨了在弯曲空间中进行微积分运算的基础理论及其在广义相对论中的关键应用,如爱因斯坦场方程如何描述物质-能量对时空曲率的影响,为理解黑洞等引力现象提供了理论框架。

lambda的博客 116

ZeroMQ: 一款高性能、异步、轻量级的消息传输库

ZeroMQ是一款高性能异步消息传输库,提供REQ/REP、PUB/SUB、PUSH/PULL等多种通信模式,支持跨网络/进程/线程通信。相比传统消息队列,它无中心节点、延迟低至微秒级,但缺乏持久化功能。安装可通过包管理器或源码编译,核心组件包括Context和Socket。典型应用场景包括RPC调用、实时推送和任务分发。使用时需注意套接字类型匹配和线程安全问题,适合对实时性要求高但不需要强持久化的分布式系统。

红军不怕远征难,万水千山只等闲 3841

使用FPGA实现MIPI DSI接口

通过使用FPGA,我们可以实现MIPI DSI接口,并在FPGA上生成相应的时序和电平转换电路。通过使用FPGA,我们可以实现MIPI DSI接口,并在FPGA上生成相应的时序和电平转换电路。在本文中,我们将探讨如何使用FPGA实现MIPI DSI接口,并提供相应的源代码。根据不同的发送状态,我们设置相应的输出信号。请注意,这只是一个基本的示例,用于说明如何使用FPGA实现MIPI DSI接口的发送功能。请注意,这只是一个基本的示例,用于说明如何使用FPGA实现MIPI DSI接口的发送功能。

ZdqDeveloper的博客 1704

常用消息中间件选择

文章目录一、ActiveMQ二、RabbitMQ三、RocketMQ四、Kafka五、ZeroMQ六、主要消息中间件的比较 有哪些主流的消息中间件? 当前业界比较流行的开源消息中间件包括:ActiveMQ、RabbitMQ、RocketMQ、Kafka、ZeroMQ等。 其中应用最为广泛的要数RabbitMQ、RocketMQ、Kafka 这三款。 Redis在某种程度上也可以是实现类似 “Queue” 和“ Pub/Sub” 的机制,严格意义上不算消息中间件。 一般的业务系统要引入 MQ,最早大家都用 A

wang_luwei的博客 6822

XRoboToolkit —— 基于 PICO 4 Ultra 的机器人遥操作方案(一)

视觉-语言-动作模型(Vision-Language-Action models)的快速发展催生了对大规模、高质量机器人演示数据集的迫切需求。尽管遥操作是数据采集的主要方法,但现有方法存在可扩展性有限、设置流程复杂以及数据质量不佳等问题。本文提出XRoboToolkit,这是一个基于OpenXR标准的跨平台扩展现实(XR)机器人遥操作框架。该系统具备低延迟立体视觉反馈、基于优化的逆运动学算法,并支持多种跟踪模态,包括头部、控制器、手部及辅助运动追踪器。

2506_90492529的博客 3312

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

消息中间件(RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ等)的定义、组成、特点、优缺点、应用场景&面试题

大家都参与过网上电商平台的秒杀活动吧,一般的秒杀活动辄几百万的参与人数,而“双十一”的参与人数更是已“亿”为计量单位。那么这些电商平台的系统架构是怎样的,它们是如何做到承担每秒几万、几十万的并发访问请求的,所有的请求都是直接落到数据库的吗?当然,数据库不可能承担如此高的负载请求,那这些系统架构引入了哪些“大杀器”呢?这篇文章将讲解其中的关键技术之一消息中间件,并在文章中进一步对消息中间件做详细的讲解。 1. 消息队列 1.1什么是消息队列 消息队列(Message queue,简称MQ),是指利用

Allenzyg的博客 2万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Kafak、RocketMQ、ZeroMq的对比

敖丙—消息队列 "明明JDK已经有不少的队列实现了,我们还需要消息队列中间件呢?"其实很简单,JDK实现的队列种类虽然有很多种,但是都是简单的内存队列。为什么我说JDK是简单的内存队列呢?下面我们来看看要实现消息队列(中间件)可能要考虑什么问题。 首先是下面三个应用场景,异步,解耦,削峰 其次是 消息队列还能解决,高可用(集群分布,消息队列肯定不能是单机的。试着想一下,如果是单机的消息队列,万一这台机器挂了,那我们整个系统几乎就是不可用了)、数据丢失等问题我们之前的场景里面有很多步骤都是在一个流程里面需要

S_ZaiJiangHu的博客 1160

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

为什么顶尖系统架构师都在用ZeroMQ?C++跨语言通信的秘密揭晓

掌握高效跨语言通信方案,从ZeroMQ开始。2025全球C++及系统软件技术大会:ZeroMQ实现跨语言通信的C++配置,深入解析其在微服务、分布式系统中的实战应用,揭示低延迟、高并发的架构秘诀,提升系统集成效率,值得收藏。

CodeWhim的博客 718

【Qt 学习之路】在 Qt 使用 ZeroMQ

今天是大年初一,先给大家拜个年,祝各位阖家欢乐,身体安康,万事如意。言归正传,最近调研了很多消息中间件,推荐一款比较好用的中间件 ZeroMQ,今天也把在 Qt 上如何使用 ZeroMQ 分享下。ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。

沙师弟专栏 5105

ZeroMQ研究与应用分析

1  ZeroMQ概述 ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。 2  系统架构 2.1 总体架构 ZeroMQ几乎所有的I/O操作都是异

kobejayandy的专栏 3516

zeromq浅析

zeromq对传统的⽹络接⼝进⾏再次封装,提供了⼀个跨语⾔的库,⽀持任意语⾔使⽤统⼀的接⼝。ZMQ不是单独的服务,⽽是⼀个嵌⼊式库,它封装了⽹络通信、消息队列、线程调度等功能,向上层提供简洁的API,应⽤程序通过加载库⽂件,调⽤API函数来实现⾼性能⽹络通信。简单来说,zeromq就是实现了消息队列的一个库。这里只简单介绍一下zeromq线程间的交互与四个模型的实现。 主线程与IO线程 ZMQ根据⽤户调⽤zmq_init函数时传⼊的参数,创建对应数量的I/O线程。每个I/O线程都有与之绑定的Poller,P

m0_65931372的博客 1909

2024年C C++最新一文带你入门了解“零之禅“消息队列ZeroMQ(1),终于有人把C C++程序员必学知识点全整理出来了

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新如果你需要这些资料,可以戳这里获取 网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加戳这里获取一个人可以走的很快,但一群人才能走的更远!不论你是正从事

2401_84976318的博客 1275

常用MQ消息中间件Kafka、ZeroMQ和RabbitMQ对比及RabbitMQ详解

了解常用MQ消息中间件Kafka、ZeroMQ和RabbitMQ的基础知识,对三者特性进行对比,选取合适的MQ。着重讲解RabbitMQ详解。

欧特GO 2452

2025年最值得学习的C++通信技术:ZeroMQ跨平台配置实战详解

掌握ZeroMQ实现跨语言通信的C++配置方法,解决系统间高效交互难题。适用于微服务、分布式系统等场景,支持多平台部署,具备低延迟、高并发优势。结合2025全球C++及系统软件技术大会最新实践,详解配置步骤与性能优化技巧,值得收藏。

LiteTrans的博客 982

ZeroMQ:高性能异步消息库

ZeroMQ是一个高性能异步消息库,专为分布式/并发应用设计

倔强老吕的博客 2900

ZeroMQ基础入门

mq是消息队列(message queue)的简称,目前有多种消息队列可用,包括RabbitMQ、Kafka等,它们各有特色,可以结合具体的项目需求使用。 ZeroMQ简称Zmq,或者0mq,核心引擎由c++编写,是轻量级消息通信库,在对传统的标准socket接口扩展的基础上形成的特色消息通信中间件。 Zmq提供了异步消息队列的抽象,具有多种消息通信模式,能够实现消息过滤,能够无缝对接多种传输协议。 简言之,使用socket时,需要显式地建立连接、销毁连接、选择协议(TCP/UDP)和处理错误等,而Z

顺其自然~专栏 7161
上一篇: 【Redis-6.0.8】初识Redis
下一篇: 【Nginx】如何高效地均衡应用层负载
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值