
FastDDS
文章平均质量分 92
数据分发服务DDS技术领域,专业解析、分享有关FastDDS体系、实现、应用开发、场景分析、源码结构等的专栏。
优惠券已抵扣
余额抵扣
还需支付
¥179.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
pony12
专注OpenDDS【应用开发】、【源码分析】、【项目咨询】、【功能定制】和【学习指导】多年
展开
-
FastDDS版本变迁图解
最完整的开源DDS中间件!eProsima Fast DDS是一个高性能的发布-订阅框架,它使用基于发布者、订阅服务器和数据主题的解耦模型在分布式系统中共享数据。eProsima Fast DDS速度惊人,在Windows和Linux中都击败了ZeroMQ和其他pub-sub中间件等替代品。让我们通过FastDDS的版本变迁史,来了解FastDDS的前世今生吧!原创 2024-01-21 21:25:15 · 398 阅读 · 0 评论 -
Fast DDS-Gen(2)通过IDL定义数据类型
介绍了可以使用IDL文件定义的数据类型,以及使用IDL文档构建数据类型的其他机制。介绍了可以使用IDL文件定义的数据类型,以及使用IDL文档构建数据类型的其他机制。原创 2023-07-06 16:09:10 · 628 阅读 · 0 评论 -
Fast DDS-Gen(1)详细使用方法
eProsima Fast DDS Gen是一个Java应用程序,它使用IDL(接口定义语言)文件中定义的数据类型生成eProsimaa Fast DDS源代码。生成的源代码可以在任何Fast DDS应用程序中使用,以便定义主题的数据类型,稍后将用于发布或订阅。eProsima Fast DDS通过两个类定义Topic中交换的数据类型:TypeSupport和TopicDataType。TopicDataType描述了发布和订阅之间交换的数据类型,即与主题相对应的数据;而TypeSupport封装了Topi原创 2023-07-06 15:59:01 · 933 阅读 · 0 评论 -
Fast DDS(1)编写一个简单的Python发布者和订阅者应用程序
详细介绍了如何使用Python API逐步创建一个简单的Fast DDS应用程序,其中包含发布者和订阅者。原创 2023-07-05 20:44:17 · 1157 阅读 · 0 评论 -
Fast DDS(1)编写一个简单的C++发布者和订阅者应用程序
详细介绍如何使用C++API逐步创建一个简单的Fast DDS应用程序,其中包含发布者和订阅者。也可以使用eProsima Fast DDS-Gen工具自行生成与本节中实现的示例相类似的示例。在构建发布/订阅应用程序中解释了这种附加方法。原创 2023-07-05 20:00:49 · 970 阅读 · 0 评论 -
Fast DDS(1)快速入门
数据分发服务(DDS)是一种以数据为中心的通信协议,用于分布式软件应用程序通信。它描述了实现数据提供者和数据消费者之间通信的通信应用程序编程接口(API)和通信语义。由于它是一个以数据为中心的发布-订阅(DCPS)模型,因此在其实现中定义了三个关键的应用程序实体:发布实体,定义信息生成对象及其属性;订阅实体,定义信息消费对象及其属性;以及配置实体,其定义作为主题传输的信息类型,并创建具有其服务质量(QoS)属性的发布者和订阅者,从而确保上述实体的正确性能。原创 2023-07-05 18:33:39 · 423 阅读 · 0 评论 -
Fast DDS(4)RTPS层
eprosima Fast DDS的较低级别RTPS层服务于RTPS标准中定义的协议的实现。与DDS层相比,该层对通信协议的内部提供了更多的控制,因此高级用户可以更好地控制库的功能。原创 2023-07-04 21:11:24 · 249 阅读 · 0 评论 -
Fast DDS(6)CMake选项
eProsima Fast DDS提供了许多CMake选项,用于更改Fast DDS的行为和配置。这些选项允许用户通过在CMake执行时将这些选项定义为ON/OFF来启用/禁用某些Fast DDS设置。本节的结构如下:1)首先,描述了Fast DDS的一般配置的CMake选项;2)然后,提出了与第三方库相关的选择;3)最后,定义了构建Fast DDS测试的可能选项。原创 2023-07-04 20:03:52 · 196 阅读 · 0 评论 -
Fast DDS(10)统计模块Statistics Module
Fast DDS Statistics(FastDDS统计)模块是Fast DDS的扩展,可重新收集有关DDS通信的数据。收集到的数据使用DDS通过统计模块内的内置DataWriters在专用主题上发布。因此,默认情况下,Fast DDS不会编译此模块,因为这可能会影响应用程序的性能。尽管如此,可以在CMake配置步骤中使用-DFASTDDS_Statistics=ON来激活统计模块。有关FastDDS编译的更多信息,请参阅Linux源代码安装和Windows源代码安装。原创 2023-07-03 21:35:50 · 508 阅读 · 0 评论 -
Fast DDS(7)Persistence Service持久化服务
eProsima Fast DDS提供了将DataWriter的历史记录配置为存储在持久数据库中的可能性,以便DataWriter可以在创建时从中加载其历史记录。此外,DataReaders可以配置为将上次通知的更改存储在数据库中,以便在创建时恢复其状态。此机制允许在启动数据分发服务时恢复以前的状态,从而在出现意外停机等情况时为应用程序增加稳健性。配置持久性服务时,DataWriters和DataReaders可以从关闭时的状态恢复其操作。原创 2023-07-03 21:10:29 · 408 阅读 · 1 评论 -
Fast DDS(13)PropertyPolicyQos属性策略选项
可以使用Fast DDS设置的PropertyPolicyQos列表:原创 2023-07-03 15:12:58 · 522 阅读 · 0 评论 -
14 动态主题类型Dynamic Topic Types
eProsima Fast DDS提供了一种动态方式来定义和使用主题类型和主题数据。我们的实现遵循用于DDS接口的OMG可扩展和动态主题类型。有关更多信息,您可以阅读DDS XTypes V1.2的规范。动态主题类型提供了在没有与IDL相关的限制的情况下通过RTPS工作的可能性。使用它们,用户可以声明他们需要的不同类型并直接管理信息,从而避免了更新IDL文件和生成C++类的额外步骤。原创 2023-07-03 14:49:57 · 280 阅读 · 0 评论 -
Fast DDS(15)典型用例Typical Use-Cases
FastDDS具有高度可配置性,允许在大量场景中使用。本次提供了处理分布式系统时的典型用例的配置示例:部署于WIFI上的FastDDS,介绍了一个案例,其中通过多播通信进行发现是一个挑战。此示例显示如何:使用远程参与者的地址端口对address-port pairs配置对等端的初始列表(请参阅配置初始对等端)。禁用多播发现机制(请参阅禁用多播查找)。配置SERVER发现机制(请参阅发现服务器)。知名的网络部署。描述预先知道整个实体网络拓扑(参与者、发布者、订阅服务器及其地址和端口原创 2023-06-25 19:04:56 · 483 阅读 · 0 评论 -
FastDDS(10)Transport Layer传输层
eProsima Fast DDS具有五种已实现的传输:UDPv4:IPv4上的UDP数据报通信。如果没有给定特定的传输配置(请参阅UDP传输),则默认情况下会在新的DomainParticipant上创建此传输。UDPv6:IPv6上的UDP数据报通信(请参阅UDP传输)。TCPv4:IPv4上的TCP通信(请参阅TCP传输)。TCPv6:IPv6上的TCP通信(参见TCP传输)。SHM:在同一主机上运行的实体之间的共享内存通信。如果没有给定特定的传输配置(请参阅共享内存传输)原创 2022-12-25 16:54:23 · 1171 阅读 · 0 评论 -
FastDDS(6)核心库综述
Fast DDS的架构如下图所示,其中可以看到具有以下不同环境的层模型。Application layer应用层。使用Fast DDS API在分布式系统中实现通信的用户应用程序。Fast DDS layer快速DDS层。DDS通信中间件的稳健实现。它允许部署一个或多个DDS域,在这些域中,同一域中的域参与者通过在域主题下发布/订阅来交换消息。RTPS layerRTPS层。实时发布订阅(RTPS)协议的实现,以实现与DDS应用程序的互操作性。该层充当传输层的抽象层。原创 2022-12-25 08:18:24 · 1132 阅读 · 0 评论 -
FastDDS(9)Security安全性
DDS安全规范包括五个安全内置插件。Authentication plugin身份验证插件、Access Control plugin访问控制插件、Cryptographic plugin加密插件、Logging plugin日志记录插件、Data Tagging数据标记原创 2022-12-25 16:25:41 · 983 阅读 · 0 评论 -
FastDDS(7)DDS层
eProsima Fast DDS公开了两个不同的API,以在不同级别与通信服务交互。主要API是数据分发服务(DDS)数据中心发布订阅(DCPS)平台独立模型(PIM)API,简称DDS DCPS PIM,由Fast DDS遵循的数据分发服务1.4版规范定义。本节旨在解释Fast DDS下此API的主要特性和使用模式,并对其分为五个模块进行深入解释:原创 2022-12-25 14:12:12 · 611 阅读 · 0 评论 -
FastDDS(5)应用开发入门
FastDDS应用开发入门,基于CMakeList.txt的机制,构建HelloWorld.idl、HelloWorldPublisher.cpp和HelloWorldSubscriber.cpp,并运行后进行发布订阅式通信。原创 2022-12-25 07:54:09 · 934 阅读 · 0 评论 -
FastDDS(3)xml配置文件详解
详细介绍了FastDDS的配置文件1. XML profiles11.1. Creating an XML profiles file11.2. DomainParticipant profiles11.3. DataWriter profiles11.4. DataReader profiles11.5. Transport descriptors11.6. Log profiles11.7. Dynamic Types profiles11.8. Common11.9. Example原创 2022-12-24 19:19:40 · 1441 阅读 · 1 评论 -
FastDDS(8)Discovery自动发现
Fast DDS作为一种数据分发服务(DDS)实现,提供了发现机制,允许跨域参与者自动查找和匹配DataWriter和DataReader,以便他们可以开始共享数据。对于所有机制,此发现分两个阶段执行。Participant Discovery Phase参与者发现阶段(PDP)和Endpoint Discovery Phase端点发现阶段(EDP)。四种发现机制,Simple Discovery简单发现、Static Discovery静态发现、Discovery Server发现服务器、Manual原创 2022-12-25 15:43:55 · 1772 阅读 · 0 评论 -
FastDDS(4)安装步骤
FastDDSv2.8.1的二进制安装方法,包括Windows平台、Linux平台原创 2022-12-25 07:21:37 · 650 阅读 · 0 评论 -
FastDDS(2)ReleaseNotes
FastDDS版本历史及发布说明,从v1.2到v2.8.1,了解FastDDS系统演进和发展脉络等。原创 2022-12-24 18:06:29 · 1182 阅读 · 0 评论 -
Fast DDS和Cyclone DDS对比性能测试
不同软件供应商提供不同的DDS实现,有必要在它们之间进行性能的比较。在本文中,eProsima对Fast DDS和Eclipse Cyclone DDS进行了性能比较,包括延迟Latency和吞吐量Throughput性能。 经过测试发现,Fast DDS比Cyclone DDS具有更低的延迟和更高的吞吐量。原创 2022-11-26 19:14:33 · 4951 阅读 · 2 评论 -
Fast DDS(1)
eProsima Fast DDS是DDS(数据分发服务)规范的C++实现,DDS是由对象管理组(OMG)定义的协议。eProsima Fast DDS库提供应用程序编程接口(API)和通信协议,用于部署以数据为中心的发布者-用户(DCPS)模型,目的是在实时系统之间建立高效可靠的信息分发。eProsima Fast DDS在资源处理方面具有可预测性、可扩展性、灵活性和高效性。https://fast-dds.docs.eprosima.com/en/latest/原创 2022-12-13 10:52:36 · 768 阅读 · 0 评论