今天进一步了解了DDS,并且目前在多种vs版本中均已安装编译了OpenDDS,准备着手研究OpenDDS的能力,下面把今天的成果简单地描述出来。

为什么选择DDS?

1. DDS是什么?

简单地说,DDS就是数据分发服务,是一个中间件。那么中间件又是什么?在分布式系统中,中间件就是存在于系统和应用程序之间的软件层,它使得系统的各个组件更容易进行通讯和共享数据,说白了,就是DDS合理地调用了系统层的组件,很好地调用了资源,让处在非常高的速度以及非常动态,苛刻和不可预测的环境同时指定所有这些事情的情况下,应用程序依旧可以很高效的运行。
)

2. DDS做了什么?

使得系统层和应用程序层分开,使得数据的分发和管理,既不用动系统底层,也不用开发人员去为了提高性能在应用程序层绞尽脑汁,提供了java的原生接口,其他语言可以使用代码托管,跨语言调用DDS的接口

3. DDS的应用

医疗,航空(美国空军指定的分布式系统,美军战斗机处理大量设备信息的分布式用的就是DDS系统),物联网

DDS的数据结构:

module Messenger {
#pragma DCPS_DATA_TYPE "Messenger::Message"
#pragma DCPS_DATA_KEY "Messenger::Message subject_id"struct Message {string from;string subject;long subject_id;string text;long count;};
};

DCPS_DATA_TYPE 和DCPS_DATA_KEY分别表示了subject_id的类型和值,用于区分同一个topic不同的实例,如何使用ACE+TAO环境生成我们所需要的DDS接口,后续我会写教程发表到博客。

DDS开发流程

DDS特殊的数据类型以及结构,使得我们使用C++编写OpenDDS接口和数据以及我们所需要的通讯类型结构体,然后使用MPC工具使其变成DLL文件,最后通过c#调用c++生成的DLL,为我们所用。

DDS数据分发与服务相关推荐

  1. 【自动驾驶】3. DDS 数据分发服务(Data Distribution Service)

    DDS 数据分发服务(Data Distribution Service) 数据分发服务DDS(DataDistributionService)是对象管理组织(OMG)在HLA及CORBA等标准的基础 ...

  2. 数据分发服务 (DDS)及Fast DDS环境搭建

    1. 数据分发服务 (DDS) 数据分发服务 (DDS)是一种以 数据为中心的通信协议,用于分布式软件应用程序通信.它描述了支持数据提供者和数据消费者之间通信的通信应用程序编程接口 (API) 和通信 ...

  3. 一文读懂“数据分发服务DDS”(Data Distribution Service,RTPS,OMG)

    一文读懂"数据分发服务DDS"(Data Distribution Service,RTPS,OMG) https://blog.csdn.net/DDS_CSIT/article ...

  4. KY-RTI分布仿真技术:附录1 分组聊天(HLA数据分发管理的应用)

    本章从RTI开发者的角度简单地介绍HLA1.3标准中的数据分发管理(DDM,Data Distributed Management)并给出了一个具体的示例.前面介绍了基于各种程序设计语言开发的聊天程序 ...

  5. 【数据分发服务DDS】软件定义汽车【四】-行业现状

    引言 思绪乱飞导致失眠,索性打开电脑记录了下来,前几篇主要写技术,本篇主要介绍一下行业现状,介绍技术和数据是相对客观的,但是谈观点就会有我自己的主观意识在里面,所以这方面仅供大家参考,主要包含以下内容 ...

  6. 【数据分发服务DDS】软件定义汽车【一】- 概述

    摘要: 软件定义汽车(Software Defined Vehicles, SDV),软件改变着汽车的DNA,毫无疑问,软件对于汽车的重要性不言而喻,从2016年开始,自动驾驶的大潮来临之际,软件定义 ...

  7. 数据分发服务 (DDS) 内置主题

    文章目录 1 数据分发服务 (DDS) 内置主题 2 什么是内置主题? 3 内置主题中包含哪些信息? 3.1 DCPSParticipant 3.1.1 ParticipantBuiltinTopic ...

  8. 【数据分发服务DDS】软件定义汽车【二】- 面向服务的架构设计

    引言 上一篇文章主要介绍了电子电气架构.车载操作系统.基础软件平台等之间的关系,以及软件定义汽车的基本概念,本篇将继续深入,重点阐述三个问题: 智能电动汽车软件范畴 软件+硬件升级的基础 面向服务的软 ...

  9. DDS (Data Distribution Service) 数据分发服务-规范中文翻译_001

    DDS (Data Distribution Service) 数据分发服务-规范中文翻译_001 1. 概述 1.1 简介 DDS规范描述了用于分布式应用程序通信和集成的以数据为中心的发布 - 订阅 ...

最新文章

  1. 结构体对齐原理【转】
  2. python读取txt文件代码-从文本文件中读取Python代码
  3. 学习鸟哥的Linux私房菜笔记(5)——目录
  4. gzip, gunzip, zcat - 压缩或展开文件
  5. linux之cp/scp命令+scp命令详解
  6. [BUUCTF-pwn]——picoctf_2018_shellcode
  7. Java 8 SE可选,严格的方法
  8. TDAE:Hallucinating Very Low-Resolution Unaligned and Noisy Face Images by T
  9. 用c语言实现数字时钟课程设计,基于C51单片机的数字时钟课程设计(C语言,带闹钟).doc...
  10. 大数据思维的十大原理:当样本数量足够大时,你会发现其实每个人都是一模一样的
  11. 找了个阅读pdf文件语音朗读的软件
  12. 单个次序统计量的密度函数
  13. 三行代码做一辆Q弹物理自行车,骑上它去海边兜风吧!
  14. Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day33】—— 手撸算法2
  15. 状态机的编写(使用C++)
  16. Xcode No account for team . Add a new account in the Accounts preference pane or verify
  17. Typora使用总结
  18. STM32开发 -- GPS模块开发详解
  19. MySQL数据库——MySQL INSERT:插入数据(添加数据)
  20. 解决Ubuntu16.04软件商店无法加载

热门文章

  1. 小明打联盟 牛客(背包dp,多重背包)
  2. 初学C语言第一课代码
  3. PowerBI 新手入门 ---- 新建一个表(直接输入或粘贴表内容)
  4. uni-app中动态展示图片
  5. 米转经纬度;经纬度算距离
  6. 路径 URI 中的 Ant 风格
  7. 使用Fiddler抓取app访问路径
  8. DirectUI浅谈
  9. SDL介绍----2、SDL安全设计核心原则
  10. ajax_contenttype,ajax中设置contentType: application/json的作用