基于.NET框架的消息通信组件ZMQ资料汇编-总目录
ZMQ是一个比较轻量级的消息通信组件,引用官方的说法: “ZMQ (以下 ZeroMQ 简称 ZMQ)是一个简单好用的传输层,像框架一样的一个 socket library,他使得 Socket 编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ 的明确目标是“成为标准网络协议栈的一部分,之后进入 Linux 内核”。现在还未看到它们的成功。但是,它无疑是极具前景的、并且是人们更加需要的“传统”BSD 套接字之上的一层封装。ZMQ 让编写高性能网络应用程序极为简单和有趣。”
ZMQ组件广泛适用于.NET开发领域,其原生版本采用C语言开发,目前已经提供了包括C语言、C++、安卓、IOS、Python、Nodejs等众多语言的版本,而.NET版本实际上是基于C++的移植版本,事实上.NET版本也有多个版本,而目前使用情况较为良好的版本为NETMQ,可以通过Nuget下载并使用,添加到项目中,会新增两个类库,一个为NetMQ.dll,另外一个为SyncIO.dll。暂时未发现.NET Core的移植版本,期待社区或外网的高手能够将其移植成.NET CORE,为社区提供助力。
目前我们公司已使用ZMQ作为核心通信组件,在后端、客户端等众多应用中使用。基于ZMQ的资料目前非常多,包括官方入门指南等,都可以作为大家入门的重要依据,除此之外,外网也有非常广泛的知识体系,不过基本上都是英语版本,因此,特意编写这个系列,其主要目的是将各类资料进行统一汇总,方便自己的同时,也期待能为其他感兴趣的朋友提供助力。
总目录的第一部分主要为官方入门指南的详细说明,而第二部分为外网相关资料、以及ZMQ高级知识的汇编,如有考虑不周,或表述不严谨之处,还望大家指出。
- 基本概念
- 接收和发送
- 接收
- 发送
- 深度阅读
- 消息
- 消息结构
- 创建multipart消息
- 读取multipart消息
- 完整实例
- 传输
- 传输协议
- TCP
- Inproc(进程通信管道)
- PGM(实际通用多播)
- 清除连接状态
- 清除
- 为什么需要清除
- 延迟关闭参数(Linger)
- 如何清除
- 测试
- 常见组件
- Poller轮询
- 轮询对象
- 应用目标1:提高效率
- 应用目标2:数据正确性校验
- 示例代码:接收消息
- 示例代码:发送消息
- 计时器
- 新增和移除socket对象和计时器对象
- 处理轮询
- 复杂示例
- 性能
- 深度阅读
- Actor行动者模型
- NetMQ行动者模型
- 什么是行动者模型
- 多线程数据共享
- 行动者模型
- 行动者模型示例
- Beacon灯塔对象
- 灯塔对象
- 示例:实现总线
- 深度阅读
- Timer计时器
- 计时器
- Queue队列
- 队列
- Proactor前摄器模型
- 前摄器
- 常见的几种模式:
- Request/Response 请求响应模式
- Request/Response说明
- 怎么用?
- 请求响应-一种阻塞的通信方式
- Pub/Sub推送订阅模式
- 推送和订阅
- 订阅的主题Topics
- 订阅顺序
- 示例
- 其他注意事项
- 高缓冲池High water mark
- 慢速订阅者Slow subscribers
- 后进订阅者Late joining subscribers
- Push/Pull 推拉模式
- 推送和拉取
- 进气门对象-Ventilator
- 工作者对象-Worker
- Sink对象
- 示例
- Router-Dealer 路由-点对点模式
- 路由和点对点
- 路由套接字
- 点对点套接字
- 示例
- XSub-XPub 超级订阅分发模式
- 超级订阅者/发布者
- 示例
基于.NET框架的消息通信组件ZMQ资料汇编-总目录的更多相关文章
- ZeroMQ——一个轻量级的消息通信组件
ZeroMQ是一个轻量级的消息通信组件,尽管名字中包含了"MQ",严格上来讲ZeroMQ并不是"消息队列/消息中间件".ZeroMQ是一个传输层API库, 更关 ...
- ZeroMQ——一个轻量级的消息通信组件 C#
ZeroMQ——一个轻量级的消息通信组件 ZeroMQ是一个轻量级的消息通信组件,尽管名字中包含了"MQ",严格上来讲ZeroMQ并不是"消息队列/消息中间件" ...
- 过年了,基于Vue做一个消息通知组件
前言 今天除夕,在这里祝大家新年快乐!!!今天在这个特别的日子里我们做一个消息通知组件,好,我们开始行动起来吧!!!项目一览 效果很简单,就是这种的小卡片似的效果. 我们先开始写UI页面,可自定义消息 ...
- 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录
ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成: ...
- 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录(转)
出处:http://www.cnblogs.com/mienreal/p/4528470.html ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视 ...
- Asp.net 面向接口可扩展框架之消息队列组件
消息队列对大多数人应该比较陌生.但是要提到MQ听说过的人会多很多.MQ就是英文单词"Message queue"的缩写,翻译成中文就是消息队列(我英语差,翻译错了请告知). PS: ...
- C++对象间通信组件,让C++对象“无障碍交流”
介绍 这是很久之前的一个项目了,最近刚好有些时间,就来总结一下吧! 推荐初步熟悉项目后阅读本文: https://gitee.com/smalldyy/easy-msg-cpp 从何而来 这要从我从事 ...
- 基于scrapy框架输入关键字爬取有关贴吧帖子
基于scrapy框架输入关键字爬取有关贴吧帖子 站点分析 首先进入一个贴吧,要想达到输入关键词爬取爬取指定贴吧,必然需要利用搜索引擎 点进看到有四种搜索方式,分别试一次,观察url变化 我们得知: 搜 ...
- 分享一个Linux C++消息通信框架TCPSHM
由于本人从事行业关系,Linux环境下的低延迟通信是我关注的技术之一.要达到极端的低延迟,当然同机器内IPC比网络通信快,而Linux IPC方式中无疑是共享内存延迟最低.不过相对于TCP这种通用的通 ...
随机推荐
- loadrunner11 下载路径+安装+破解+汉化
下载地址:http://pan.baidu.com/s/1eQs1Ynw 1.解压安装包 2.运行“setup.exe”,点击“LoadRunner完整安装程序”开始安装,另外此安装包有许多附带组件, ...
- GUI学习之八——复选框QCheckBox的学习总结
一.描述 a.QCheckBox一般用于给用户提供若干选项中多个选择时的使用 b.控件左侧有一个方框来显示控件被选中. c.复选框是有三种状态的 二.使用 1.创建 复选框的创建和常规的按钮创建方式是 ...
- [Hadoop]Hadoop章3 NameNode的ZKFC机制
基本概念 首先我们要明确ZKFC 是什么,有什么作用: zkfc是什么? ZooKeeperFailoverController 它是什么?是Hadoop中通过ZK实现FC功能的一个实用工具. 主要作 ...
- leetcode 刷题进展
最近没发什么博客了 凑个数 我的leetcode刷题进展 https://gitee.com/def/leetcode_practice 个人以为 刷题在透不在多 前200的吃透了 足以应付非算法岗 ...
- 列出cron的下几次运行时间
static void Main(string[] args) { while(true) { var corn = Console.ReadLine(); var s=getCronSchdule( ...
- dubbo入门学习 一SOA
SOA是什么?SOA全英文是Service-Oriented Architecture,中文意思是中文面向服务编程,是一种思想,一种方法论,一种分布式的服务架构(具体可以百度). 用途:SOA解决多服 ...
- Python从入门到精通之eighth!
函数式编程与内置函数 函数作用域: def test1(): print('in the test1') def test(): print('in the test') return test1() ...
- Sql Server常用数据库函数小结
查询验证存储过程是否存在 SELECT name FROM sysobjects WHERE xtype = 'P' and name = '{0}' ----------------------- ...
- poj 3468 A Simple Problem with Integers(线段树区间更新)
Description You have N integers, A1, A2, ... , AN. You need to deal with two kinds of operations. On ...
- 洛谷P1596 [USACO10OCT]湖计数Lake Counting
https://www.luogu.org/problemnew/show/P1596 连通块水题... 大体思路是找到是水坑的坐标然后就开始不断递归,往八个方向搜,把连在一起的都标记一遍直到找不到为 ...