Opendds概念介绍

news/2024/7/24 12:30:16 标签: opendds

刚学习opendds,需要建立几个概念。

答:opendds是消息中间件。

答:opendds是一款消息中间件,开发者利用opendds在不同节点之间进行数据通信或者交互时无需考虑通信的细节,仅聚焦业务即可,opendds框架可以帮助开发实现数据的交互。

答:OpenDDS或者https://github.com/OpenDDS/OpenDDS下载

  • opendds应该如何开始学习?

答:从我个人的观点来看,首先阅读官网的文档,对opendds有一个感性的概念,然后编译opendds程序,将opendds提供的example程序运行起来,从example入手去学习,首先要学会使用,然后感兴趣的话可以从自己感兴趣的模块入手学习源码。

  • opendds框架有哪些比较重要的特性(个人观点)

答:(1)opendds支持两种发现机制,通俗的说一种是中心发现机制,即启动一个应用程序,该应用程序可以独立部署,但是通信节点之间网络是互通的,该应用程序的功能就是维护发送者或者订阅者的一些信息;第二种方式是基于rtps的发现机制,这种发现机制基于rtps协议来是实现,并没有中心发现机制那种第一个独立的程序作为媒介。

(2)opendds定义数据类型一般情况下可以通过idl文件来完成,订阅者和发送者都是通过这个结构进行通信;另外一种方式是opendds也可以通过动态数据结构来实现订阅者和发送者之间的数据交互。

(3)idl方式定义通信的数据结构一般情况下需要指定主题(@topic)、关键字(@key)也可以不指定,idl文件定义的数据类型可以基本数据类型,如(int float 等),也可以是数组、序列、结构体或者联合体,还可以定义枚举和接口,接口的定义需要重点关注下。

(4)opendds中关键字key可以决定instance的个数,每个主题发出的数据称为一个样本(sample),每个样本根据key的不同会区分为不同的实例,每个实例下也可以配置保存多个样本。如果在结构中不配置key成员,则该主题下只会有一个instance,该instance下有多少样本可以调整qos策略来实现。默认只保存最新的样本。

(5)opendds支持一次读取一个样本数据,同时也支持一次读取多个样本数据,目的是提高读取数据的效率;一般情况下opendds读取样本数据是通过single copy的方式,即拷贝一个副本的方式读取;还在一种更有效率的读取样本方式,即zero-copy(零拷贝),通过引用计数的方式来实现零拷贝,但是需要注意的是通过官方测试,得出的结论是如果样本数据小于8K不建议使用零拷贝甚至还有可能还有性能损失。

(6)opendds支持多种的方式的互联互通,典型的是部署于分布式系统不同节点之间的通信;还有一种部署方式是一台计算机之间的多个进程之间的通信,第一种方式通过网络通信的方式来实现,第二种方式opendds未采用网络通信的方式进行通信,而是采用shared memory的方式来实现通信。

(7)opendds中idl接口可以实现远程调用,探索在opendds下是否存在同步调用或者异步调用的方法。


http://www.niftyadmin.cn/n/4986329.html

相关文章

九、适配器模式

一、什么是适配器模式 适配器模式(Adapter)的定义如下:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。 适配器模式(Adapter)包含以下主要角色&…

Positive Technologies:五分之四的网络攻击具有针对性

Positive Technologies 对 2023 年第二季度的相关网络威胁进行了分析。报告显示,自今年年初以来,有针对性的攻击数量增加了 10%,目前占 78%。专家们注意到利用漏洞的大规模攻击和大量用户个人数据的泄露。此外,在此期间&#xff0…

在线问答和智能问答的区别在哪儿?如何搭建问答库?

在线问答和智能问答是两个不同的概念,虽然它们都是用来回答用户提出的问题,但在实现方式、功能和应用场景上有一些区别。 在线问答系统是一种基于互联网的问答服务,提供给用户一个平台,让他们可以提问问题并获取答案。在线问答系…

数字孪生智慧工厂:电缆厂 3D 可视化管控系统

近年来,我国各类器材制造业已经开始向数字化生产转型,使得生产流程变得更加精准高效。通过应用智能设备、物联网和大数据分析等技术,企业可以更好地监控生产线上的运行和质量情况,及时发现和解决问题,从而提高生产效率…

无涯教程-Android - List View函数

Android ListView 是垂直滚动列表中显示的视图,使用 Adapter 从列表(如数组或数据库)中获取内容的列表项会自动插入列表中。 适配器(Adapter)实际上是UI组件和将数据填充到UI组件中的数据源之间的桥梁,适配器保存数据并将数据发送到适配器视图&#xff0…

华为 连接OSPF和RIP网络---OSPF和RIP网络相互引入

路由引入简介 不同路由协议之间不能直接共享各自的路由信息,需要依靠配置路由的引入来实现。 获得路由信息一般有3种途径:直连网段、静态配置和路由协议。可以将通过这3种途径获得的路由信息引入到路由协议中,例如,把直连网段引入…

IIR滤波器

IIR滤波器原理 IIR的特点是:非线性相位、消耗资源少。 IIR滤波器的系统函数与差分方程如下所示: 由差分方程可知IIR滤波器存在反馈,因此在FPGA设计时要考虑到有限字长效应带来的影响。差分方程中包括两个部分:输入信号x(n)的M节…

linux脚本执行时工作目录和存放路径

概述 一般咋子linux中写脚本的时候大多都会指定绝对路径,但是有时候需求就是需要在相对路径上执行一些脚本或者命令,这个时候通常会"./xxx.sh" 那么此时这个"./"代表的是工作目录。 "xxx.sh"位于~/aaa/目录下面&#x…