一种基于WLC算法的人防数据服务器集群制造技术

技术编号:21917442 阅读:20 留言:0更新日期:2019-08-21 13:30
一种基于WLC算法的人防数据服务器集群,属于数据通信技术领域。硬件包括集群节点服务器、负载平衡调度服务器和消息队列遥测传输协议客户端服务器;这三类服务器硬件之间通过六类屏蔽网络线物理连接用于实现高速数据交互消息发布。集群节点服务器在使用时为2到多台,当有多少个消息队列遥测传输协议客户端服务器就需要构建多少个集群节点服务器,集群节点服务器之间采用总线通讯方式通讯。每一台集群节点服务器内安装有多个软件模块。优点在于,解决了人防所数据服务器负载容量和通信不平衡及人防指挥所设备连接通信质量差的问题;采用成本低廉的普通服务器,并部署负载平衡调度器软件,就可实现性能相当的网络处理能力,同时具有灵活的扩展性、高度的兼容性和非常高的性价比。

A Cluster of Civil Air Defense Data Servers Based on WLC Algorithms

【技术实现步骤摘要】
一种基于WLC算法的人防数据服务器集群
本专利技术属于数据通信
,特别涉及一种基于WLC算法的人防数据服务器集群。
技术介绍
人防指挥所是高级的战备场所,具有非常高的安全等级,对设备的自动化通信也提出了较高的要求。人防指挥所的设备主要分两类,一类是信息化设备,用于指挥作战;另一类是人防指挥所的保障基础设备,如通风、供水、配电等。为了保障人防指挥所的正常运行,在值班室配备了自动化监控系统,对人防指挥所的所有设备进行实时控制和监测,主要包括风、水、电、门等几类设备。与普通楼宇自动化系统不同的是,人防指挥所是一个自成体系的独立系统,实现了完全的隔离运行,从而保证了战时的安全性。人防自动化系统包括三防通风系统、水循环冷热系统、配电发电系统、环境监测系统四大部分,每一部分的设备通信都有独特的运行特点。如三防通风系统的监控对象主要是阀门和风机,要求实时性高、安全及时。环境监测系统传感器数量多、种类多,要求兼容性好、扩展方便。通风系统和发电系统要求稳定可靠。人防所的现场设备与数据服务器之间的通信方式对于数据服务器非常重要。传统的通信方式一般为现场总线方式,其中包括485方式、Lon总线、DP总线、CIP总线等,这些总线均为专有系统协议,无法互相兼容,在实现数据监控时数据服务器要适应多种协议,安装多种物理接口,使用较为不便。随着物联网普及,以太网逐步占据了设备通信的主流,它将所有的自动化设备均视为物联网的节点,采用统一的数据接口和协议。物联网通信协议应用最广泛的主要有SIMPlE协议、XMPP协议和MQTT协议,其中MQTT以二进制的轻量型协议,得到了工业设备厂家的广泛支持。MQTT是一个基于发布和订阅模式的实时通信协议,网络带宽占用小,支持所有平台的部署实施。MQTT的通信机制只需要一个代理服务器和一个客户端,将人防所现场的现场总线设备转换为MQTT总线的客户端,而且实施方便且价格较低。现有的人防数据服务器一般采取主备方法保障设备之间的通信,这种数据通信方法称之为单点通信,当数据量较大或连接设备较多时,数据服务器无法及时响应处理要求,需要更高性能服务器的硬件设施,而在数据量较少时,昂贵的硬件资源低载运行,又会造成资源和资金的浪费。
技术实现思路
本专利技术的目的在于提供一种基于WLC算法的人防数据服务器集群,解决了人防所数据服务器负载容量和通信不平衡问题。基于当前人防所的设备数据服务器架构落后、适应网络负载能力差的问题,本专利技术旨在解决人防指挥所设备通信高并发连接通信质量差的问题。针对人防所的设备数据通信特点,采用了分布式的消息分发机制,能对用户的任务的运行优先级进行分配,并根据服务器的实时负载率均衡分配连接,提高消息服务器的效率,为人防所的数据安全提供有力的保障。当网络负载较轻时,系统根据算法分配少量节点执行任务,而当消息量或连接并发数急剧增加时,负载平衡系统将用户请求合理的分发至各服务器节点,减少用户的请求响应时间,提高网络数据的吞吐量。如图1所示,本专利技术硬件包括集群节点服务器1、负载平衡调度服务器2和消息队列遥测传输协议客户端服务器3,这三类服务器硬件之间通过六类屏蔽网络线物理连接用于实现高速数据交互消息发布。集群节点服务器1在使用时为2到多台,当有多少个消息队列遥测传输协议客户端服务器3就需要构建多少个集群节点服务器1,集群节点服务器1之间采用总线通讯方式通讯。每一台集群节点服务器1内安装有多个软件模块,软件模块包括:消息队列遥测传输协议消息代理服务作为MQTT数据通讯,主要功能包括发布订阅、计数重发功能、缓存等;存储和日志服务,采用Redis数据库,主要功能包括数据存储、日志记录;调度代理服务,作为消息代理实现多消息任务发布的调度管理,采用基于nginx算法执行器的调度软件,主要功能是实现集群节点服务器1之间的负载平衡;总线客户端服务,作为高速数据交互总线通讯管理,采用RocketMQ的队列服务总线服务软件,主要功能是实现节点之间的信息的实现传输。负载平衡调度服务器2内安装有调度管理软件,软件采用nginx作为算法执行器;以及Redis数据库,Redis搭建主从结构进行各节点的之间的状态同步,从而实现调度的缓存和同步。每一台人防所的现场设备均作为一个消息队列遥测传输协议客户端服务器3。人防所的数据通信与普通楼宇自控有着显著的不同,它的特殊之处在于通信设备地理的分散性和通信量不均匀性。对于人防所来说,要保证战备设施安全运行,最重要的是人防的三防设备,包括风、水、电三部分的实时监控,其次是指挥安全设备以及其他辅助环境监测设备等。所有设备的通信须及时有效,如数据服务器不能响应最紧急最重要的信息,将会造成严重的安全事故,甚至危及生命安全。传统服务器一般采取性能冗余来保证响应的及时性,但一旦发生网络拥塞,服务器无法处理设备连接造成系统宕机。本专利技术提出的数据服务集群系统将传统的数据直连方式改为分发式,彻底解决了网络拥塞的问题。人防的数据服器集群对于设备层是透明的,客户端无需知道当前有多少个集群节点,它的消息将由哪个节点来处理,这些工作由负载平衡调度器来完成。负载平衡调度器监测客户端的消息内容以及集群节点的负载情况并作出一个权值判断,然后调度一个集群节点响应客户端的连接。负载平衡调度器有两种部署方式,第一种,用一个单独的服务器节点完成调度功能,所有的数据连接先经过负载平衡调度器节点的处理,再转发给MQTT代理服务器,在这种方式下,系统性能瓶颈存在于调度器这个单点上;第二种是在每一个集群节点服务器上都部署调度代理服务软件,各节点的调度状态是高度一致的,每一个节点都有独立的连接转发功能,某个节点的故障不会引起整体的崩溃。本专利技术采用了第二种调度方法。集群系统的管理员可以根据需要增加或删除集群中的节点,经过负载平衡调度服务器的合理分配,每个节点的运行状态处于较轻的负载水平。常用的负载平衡算法有轮转法、随机散列法、最少连接法、最快响应法等。从人防所设备通信的特点来看,这些算法都不是最优的。以最常用的轮转法为例,这个算法的意图是将所有的节点视作一个队列依次分发任务,这时每个节点的任务数几乎是相同的。但问题在于,虽然每个节点的任务数相同,但每个连接内包含的主题数和消息处理时间是不同的,服务器集群还是会出现负载倾斜的情况。本专利技术提出了一种基于时间响应机制的WLC(WeightedLeast-ConnectionScheduling)算法调度机制,WLC算法是一种动态的加权分配算法,它考虑了集群中服务器节点的CPU占用率、内存百分比、网络带宽量的实际使用情况,以权重的方法对所有节点进行排队,权重值最小说明此节点的可用度最高,在WLC算法的基础上,本专利技术加入一种时间响应的机制,即在每次连接响应完成后,记录本次的消息连接处理的时间,并同步至各节点内的调度表上,根据此记录,负载调度服务器再次进行分配时在固定权重分配基础上选取一个响应最快的节点进行处理。负载调度算法的处理过程如图3所示。本专利技术提出的人防数据服务器集群,不需要采用高性能、高成本的多核巨型服务器,只需要采用成本低廉的普通服务器,并部署负载平衡调度器软件,就可实现性能相当的网络处理能力,同时具有灵活的扩展性、高度的兼容性和非常高的性价比。附图说明图1人防数据服务器集群架构图。图本文档来自技高网
...

【技术保护点】
1.一种基于WLC算法的人防数据服务器集群,其特征在于,硬件包括集群节点服务器(1)、负载平衡调度服务器(2)和消息队列遥测传输协议客户端服务器(3),这三类服务器硬件之间通过六类屏蔽网络线物理连接,用于实现高速数据交互消息发布;集群节点服务器(1)在使用时为2到多台,当有多少个消息队列遥测传输协议客户端服务器(3)就需要构建多少个集群节点服务器(1),集群节点服务器(1)之间采用总线通讯方式通讯;每一台集群节点服务器(1)内安装有软件模块,消息队列遥测传输协议消息代理服务作为MQTT数据通讯,功能包括发布订阅、计数重发功能、缓存;存储和日志服务采用Redis数据库,功能包括数据存储、日志记录;调度代理服务,作为消息代理实现多消息任务发布的调度管理,采用基于nginx算法执行器的调度软件,功能是实现集群节点服务器(1)之间的负载平衡;总线客户端服务作为高速数据交互总线通讯管理,采用RocketMQ的队列服务总线服务软件,功能是实现节点之间的信息的实现传输;负载平衡调度服务器(2)内安装有调度管理软件,软件采用nginx作为算法执行器;以及Redis数据库,Redis搭建主从结构进行各节点的之间的状态同步,从而实现调度的缓存和同步;每一台人防所的现场设备均作为一个消息队列遥测传输协议客户端服务器(3)。...

【技术特征摘要】
1.一种基于WLC算法的人防数据服务器集群,其特征在于,硬件包括集群节点服务器(1)、负载平衡调度服务器(2)和消息队列遥测传输协议客户端服务器(3),这三类服务器硬件之间通过六类屏蔽网络线物理连接,用于实现高速数据交互消息发布;集群节点服务器(1)在使用时为2到多台,当有多少个消息队列遥测传输协议客户端服务器(3)就需要构建多少个集群节点服务器(1),集群节点服务器(1)之间采用总线通讯方式通讯;每一台集群节点服务器(1)内安装有软件模块,消息队列遥测传输协议消息代理服务作为MQTT数据通讯,功能包括发布订阅、计数重发功能、缓存;存储和日志服务采用Redis数据库,功能包括数据存储、日志记录;调度代理服务,作为消息代理实现多消息任务发布的调度管理,采用基于nginx算法执行器的调度软件,功能是实现集群节点服务器(1)之间的负载平衡;总线客户端服务作为高速数据交互总线通讯管理,采用RocketMQ的队列服务总线服务软件,功能是实现节点之间的信息的实现传输;负载平衡调度服务器(2)内安装有调度管理...

【专利技术属性】
技术研发人员:李卓卿何明星王丽娜
申请(专利权)人:冶金自动化研究设计院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1