0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于LabVIEW的zeromq通信研究与应用分析

LabVIEW逆向工程高级编程 来源:LabVIEW逆向工程高级编程 作者:LabVIEW逆向工程高级 2021-03-12 17:58 次阅读

zeroMQ被称之为"sockets on steroids",该库使得计算机之间通信极为简单。zeroMQ通信协议具有跨平台的统一通信标准。基于LabVIEW的zeroMQ的发布,使得LabVIEW在不同语言之间,不同计算机之间无延时通信变得很容易。这个库在windows 系统,32位和64位测试都是可以正常运行的,通过VIPM进行安装。

<请求应答模式>

由请求端发起请求,然后等待回应端应答。一个请求必须对应一个回应,从请求端的角度来看是发-收配对,从回应端的角度是收-发对。跟一对一结对模型的区别在于请求端可以是1~N个。该模型主要用于远程调用及任务分配等。Echo服务就是这种经典模型的应用。

这种模式类似HTTP的webService

这里提供了一个说”word”的服务,服务端在等待请求,接收到请求后,回复world。

客户端发送“hello”后等待服务端的回复,如下图所示。

<发布订阅模式>

发布端单向分发数据,且不关心是否把全部信息发送给订阅端。如果发布端开始发布信息时,订阅端尚未连接上来,则这些信息会被直接丢弃。订阅端未连接导致信息丢失的问题,可以通过与请求回应模型组合来解决。订阅端只负责接收,而不能反馈,且在订阅端消费速度慢于发布端的情况下,会在订阅端堆积数据。该模型主要用于数据分发。这种模式类似于LabVIEW的产生事件、通知等形式。

范例提供了简单的发布者例子,如下所示。

7845b556-82ee-11eb-8b86-12bb97331649.png

订阅者:

787c3964-82ee-11eb-8b86-12bb97331649.png

<性能分析>

目前,市面上类似的产品不少,主要有4种:MSMQ(微软产品)、ActiveMQ(Java)、RabbitMQ(Erlang)、ZeroMQ(C++)。除ZeroMQ外,其它3款产品都是一个单独服务或者进程,需要单独安装和运行,且对环境有一定依赖。其中,MSMQ在非Windows平台下安装非常复杂,ActiveMQ需要目标机器上已经安装了Java,RabbitMQ需要Erlang环境。而ZeroMQ是以库的形式存在,由应用程序加载、运行即可。但是ZeroMQ仅提供非持久性的消息队列。

下图来自于Internet的性能测试数据。显示的是每秒钟发送和接受的消息数。整个过程共产生1百万条1K的消息,测试环境为Windows10。从测试数据可以看出,ZeroMQ的性能远远高于其它3个MQ。

但是测试数据仅供参考,因为缺少必须的环境参数和性能指标,比如:CPU参数、内存参数、消息模型、通信协议、极限时消耗CPU百分比、极限时消耗内存百分比等。

原文标题:基于LabVIEW的zeromq通信

文章出处:【微信公众号:LabVIEW逆向工程高级编程】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • LabVIEW
    +关注

    关注

    1959

    文章

    3651

    浏览量

    321927
  • 通信
    +关注

    关注

    18

    文章

    5947

    浏览量

    135771

原文标题:基于LabVIEW的zeromq通信

文章出处:【微信号:gh_63f7cd07072a,微信公众号:LabVIEW逆向工程高级编程】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是labview?labview编写的程序由哪几部分组成?

    ,简称NI)公司开发。它主要用于数据采集、仪器控制、数据分析和自动化测试等领域。LabVIEW通过图形化编程界面,使得工程师和科学家能够快速开发和部署复杂的测量和自动化系统。 LabVIEW编写的程序
    的头像 发表于 09-04 16:04 438次阅读

    labview字符串的四种表示各有什么特点

    LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化编程语言,广泛用于数据采集、仪器控制、数据分析和自动化测试等领域
    的头像 发表于 09-04 15:40 345次阅读

    跨网段 IP 地址通信故障分析

    本文深入探讨了在网络环境中,跨网段 IP 地址通信故障的原因,重点阐述了路由设置不正确所引发的无法正常通信问题。通过实际案例分析和理论研究,详细介绍了故障的表现、影响及有效的解决策略,
    的头像 发表于 07-29 13:52 219次阅读
    跨网段 IP 地址<b class='flag-5'>通信</b>故障<b class='flag-5'>分析</b>

    通信及光纤通信中的光谱分析

    通信及光纤通信中的光谱分析  光通信及光纤通信是一种用于传输数据的重要技术。在光通信系统中,光
    的头像 发表于 01-19 10:32 1233次阅读

    labview队列有什么实际作用

    LabVIEW队列是一种数据结构,常用于解决多任务并发处理的问题。它被广泛应用于科学研究、工程项目和自动化控制等领域。在LabVIEW中,队列提供了一种高效、方便的方式来处理不同任务之间的数据
    的头像 发表于 01-05 16:42 1443次阅读

    Labview怎么用三菱MX显示多个地址

    LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是国际上广泛应用的一个虚拟仪器软件平台,可用于数据采集、分析处理、仪器控制
    的头像 发表于 01-05 14:52 914次阅读

    labview生成exe后报表不能用

    LabVIEW是一款流程化的编程语言和开发环境,广泛应用于工业自动化、实验室研究、仪器仪表等领域。通过LabVIEW开发的程序可以生成可执行文件(.exe),方便用户在没有安装LabVIEW
    的头像 发表于 01-04 15:59 1949次阅读

    labview声音采集与处理

    LabVIEW是一种用于数据采集与处理的编程语言和开发环境。它具有强大的声音采集和处理功能,可以帮助用户实现声音信号的采集、分析和处理。本文将详细介绍LabVIEW在声音采集与处理方面的应用。 首先
    的头像 发表于 01-04 10:48 2102次阅读

    labview can通讯例程

    LabVIEW是一种用于控制、测量和监测系统的图形化化编程环境。它在科学研究、工程设计和制造过程等领域中广泛应用。本文将介绍LabVIEW中用于CAN通信的例程,并详细探讨CAN
    的头像 发表于 01-04 09:30 4229次阅读

    labview怎么添加设备驱动

    、型号、通信协议等等。这些信息对于确定驱动程序的选择和配置非常重要。 第一步:确定设备驱动需求 在添加设备驱动之前,您需要确定所需驱动的类型。LabVIEW支持几种常见的设备驱动,例如VISA、DAQmx、Modbus等。根据设备的通信
    的头像 发表于 01-02 16:10 2111次阅读

    labview向程序发送命令时出现问题怎么解决

    通信协议是否配置正确。如果使用网络连接,请确保IP地址和端口号设置正确。如果使用串口通信,请检查串口设置是否正确。 检查命令格式:确保LabVIEW发送的命令格式与目标程序所需的格式相匹配。读取目标程序的文档或手册,了解正确的
    的头像 发表于 12-28 11:08 1173次阅读

    labview视觉开发模块认识及应用

    LabVIEW视觉开发模块是NI公司推出的一款功能强大的图形化编程软件,专门用于图像处理和视觉应用开发。它提供了丰富的视觉函数和工具,能够实现图像采集、处理、分析和测量,支持多种视觉算法和技术,使
    的头像 发表于 12-28 11:00 1369次阅读

    labview的opc生成配置文件

    LabVIEW 是一款非常强大的图形化编程软件,它在工业自动化领域应用广泛。而 OPC(OLE for Process Control)是一种用于工业自动化系统的标准通信协议,它能够实现不同设备之间
    的头像 发表于 12-26 17:57 1637次阅读

    labview读取excel数据中的每个数据

    LabVIEW 是一种基于图形化编程的开发环境,主要用于测量、控制和监视各种类型的设备和系统。它强大的图形编程功能使得数据处理和分析变得更加简单和高效。在本文中,我们将详细介绍
    的头像 发表于 12-26 11:19 3390次阅读

    LabVIEW进行癌症预测模型研究

    效果。 LabVIEW在此研究中的应用展示了其在处理复杂医学数据和开发高效预测模型方面的独特优势,特别是在癌症早期诊断和治疗策略的研究中。通过使用LabVIEW
    发表于 12-13 19:04