基于数据流转发实时数据交换系统设计.doc

基于数据流转发实时数据交换系统设计.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于数据流转发实时数据交换系统设计

基于数据流转发实时数据交换系统设计   摘要:针对传统的基于全量转发机制的消息中间件应用于电力信息系统大规模数据交换时效率低的问题,设计并实现了基于数据流转发的实时数据交换中间件。基于队列缓冲技术,实现了消息型数据的异步发送与批量确认;设计了流式数据转发机制,消除数据在传输节点上的缓存延迟与缓存资源代价,提高了数据传输的及时性与并发性;结合分布式与数据路由思想,实现了对第三方系统透明的节点组网与数据路由功能。通过模拟某省电力信息系统数据交换场景,验证了系统性能,数据交换能力达3000并发,千兆带宽环境下系统传输速度达980MB/s,交换延迟在毫秒级。   关键词:消息中间件;队列缓冲;数据交换;数据流;数据路由;异步传输   中图分类号: TP311.1 文献标志码:A   0引言   随着电网的技术进步与业务发展,智能电网支撑系统不断细化,涉及的内容越来越多,随之而来的是信息系统“信息孤岛”“大数据交换”现象渐渐浮现。电力信息化系统分布于发电、输电、配电、用电各个环节,系统分布性强,纵向跨越多个分级机构[1-2],系统间数据集成的技术复杂度较高。通信技术作为智能电网的重要技术组成[3],在应用层建设统一的数据交换系统,跨越多级机构在广域网范围组建高效的数据传输通道需求越发强烈。   针对电力系统分级机构多、数据集成规模大、数据类型多样、需要跨越多个局域网组网传输等特点,本文提出一种基于数据流转发的可分布式组网部署的数据交换中间件技术与实现,用于在广域网环境下部署多个运行节点,组建应用层数据交换网络,对分布在不同地理位置的应用系统间数据集成提供数据路由、数据分发功能,实验证实了系统的性能。   1消息中间件研究   消息中间件(MessageOriented Middleware, MOM)常作为企业应用系统间通信总线使用,其实现了一种面向消息型数据的异步分发机制,通过屏蔽底层平台之间的异构性,简化应用之间的数据传输实现,利用高效的消息传递机制为分布式应用提供解耦和透明的通信服务[4-5]。消息中间件通信模式主要分为点对点(PointtoPoint, PTP)和发布/订阅(publish/subscribe)两种[6],PTP模式实现了一对一的消息通信模式,publish/subscribe模式实现了一对多的消息通信模式。如图1所示,发送端(Producer)只需指明接收端(Consumer)逻辑名称即可通过代理节点(Broker)将数据路由转发到接收端,Broker可以分布式部署形成网络,数据在Broker间进行转发传输。   主流的MOM产品在消息队列缓存设计上大多数采用集中式设计,消息交由集中的发布/订阅服务器进行统一缓存与管理,在大规模消息数据处理的情况下,集中式的服务器容易产生性能瓶颈,数据分发延迟大大提高。文献[7]针对此问题进行了一定的改良,但其原理上存在局限性,不适合在规模较大的网络环境下运行,会导致消息泛洪。   消息中间件大多实现了消息路由功能,但只局限于单个Broker内的队列间路由,缺乏Broker间的路由机制,虽然使用集群功能可以实现Broker间路由的替代方案,但由于其主要用于实现高可靠或负载均衡,其原理上采用以消息本身为最小粒度的全量转发机制。以主流消息中间件RabbitMQ[8]为例,Broker需接收到消息的全部内容后才进行下一步转发,导致数据在Broker上中转缓存用时较大,特别是在多Broker级联转发的情况下,转发延迟成倍增大,不能实现对低延迟数据的高效分发。电网应用系统具有在地理位置上分布广和分级分区部署的特点[9-10],交换系统不适合集中部署,需要进行级联部署,并组网互联互通进行低延迟通信,传统消息中间件在电网应用中常出现消息阻塞延迟高问题。   传统消息中间件设计上主要用于消息型数据的处理,对大文件转发支持不足,往往借助Broker所在服务器内存进行缓存提高速度,受限于内存以及存储块的大小限制,需要约定消息的最大大小,例如Apache ActiveMQ[11]默认最大消息大小为32MB,虽然大多消息中间件支持将数据写入硬盘,但这大大降低了中转速度。然而,大文件分发具有很强的应用场景,在电网应用中存在着大量的拓扑模型文件、视频文件、系统日志文件等非结构化数据,这些数据往往以文件形式存在并且很大,需要一种类似消息中间件的机制进行大文件分发交换。   本系统并非是MOM思想的标准实现,设计上借鉴了主流消息中间件部分特性,但更侧重于实现支持大规模Broker组网,并能够在Broker间高效低延迟路由数据的应用层数据交换系统。针对电网领域数据集成数据量大、要求低延迟特点取消了传统集中式消息队列缓存,将缓存分布到Producer与Consumer端,简化Broker

您可能关注的文档

文档评论(0)

fangsheke66 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档