CN110225074A - 一种基于设备地址域的通讯报文分发系统及分发方法 - Google Patents
一种基于设备地址域的通讯报文分发系统及分发方法 Download PDFInfo
- Publication number
- CN110225074A CN110225074A CN201910165421.2A CN201910165421A CN110225074A CN 110225074 A CN110225074 A CN 110225074A CN 201910165421 A CN201910165421 A CN 201910165421A CN 110225074 A CN110225074 A CN 110225074A
- Authority
- CN
- China
- Prior art keywords
- node
- topic
- end processor
- distribution
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于设备地址域的通讯报文分发系统及分发方法,涉及电力系统数据采集领域。目前报文分发存在程序加载占内存大,程序集群扩展能力弱的情况。本发明包括通信网关集群、采集前置集群、数据入库模块,分布式消息队列模块;通信网关实现通信层的链路层功能,前置机的调度分发策略采用地址域取模分发策略,由通信网关实现分发策略,采集前置与通信网关定时心跳握手来确认双方节点是否运行正常;通信层的业务功能通过采集前置机、数据入库及消息队列三大独立功能模块共同实现;降低了程序对服务器内存配置要求,降低通信调度程序分发策略对系统档案的依赖性,提高前置系统的分布式扩展能力。
Description
技术领域
本发明涉及电力系统数据采集领域,尤其涉及一种基于设备地址域的通讯报文分发系统及分发方法。
背景技术
随着电力现场采集终端规模的不断扩大,浙江省用电采集系统采集终端数量规模达到300多万,采集用户达到2500多万,业务处理程序用于保存的终端、表计档案的内存高达50到60GB,对于单节点程序内存的管理肯定无法接受全加载档案,这就意味着业务处理程序需要集群分组,通信分发程序向业务处理程序分发报文需要采用一定策略来降低单节点内存加载并且同时具备节点高扩展性。
通信报文分发方法是为了降低处理程序集群单节点加载的内存,同时让处理集群具备分布式扩展特性。
通信报文分发方法有很多,例如按终端资产的单位代码来分配各个节点处理的终端数量,还有按终端设备地址域来分配等等。
目前报文分发存在程序加载占内存大,程序集群扩展能力弱的情况。
发明内容
本发明要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进,提供一种基于设备地址域的通讯报文分发系统及分发方法,以达到降低地服务器内存配置要求的目的。为此,本发明采取以下技术方案。
一种基于设备地址域的通讯报文分发系统,包括通信网关集群、采集前置集群、数据入库模块,分布式消息队列模块;
通信网关,用于终端各种信道的链路维护功能,链路的负载均衡功能由通信网关之前的负载均衡器实现,分发异常或分发量超过处理能力时报文本地文件缓存,gprs/cdma及光纤终端通过负载均衡器接入通信网关实现集群;
采集前置机,与网关集群相连,用于原始数据报文的分发调度,并将原始数据报文推送至分布式消息队列中;采集前置集群对报文的分发调度基于设备地址域算法实现策略分发,通过监控业务处理器集群各节点的运行状况实现分发策略的动态调整;采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态,每个节点可以通过zookeeper分布式服务系统获取各个节点运行信息;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;采集前置机收到上行报文后发现是未知终端则加载档案,通信网关的对应关系,定时更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址所对应的下行请求,下发给对应网关;通信网关定时检测采集前置机节点状态,如发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端档案信息;
数据入库模块,用于对消息队列中采集前置机推送的解析数据存储到关系型数据库;采用分布式大数据框架Hadoop和传统关系型数据库Oracle结合的方式以适应海量数据的分析和存储,解析数据包括上报任务数据和异常事件;
分布式消息队列模块,用于支撑上下行通信交互信息的时序化和持久化;采用分布式Kafka消息队列,在逻辑架构中体现数据总线的功能,通信层、应用层和数据持久层通过消息队列来进行数据交互,消息队列存放下行请求队列、上行应答队列、解析数据队列、上下行报文队列;
通信网关实现通信层的链路层功能,前置机的调度分发策略采用地址域取模分发策略,由通信网关实现分发策略,采集前置需要与通信网关定时心跳握手来确认双方节点是否运行正常;通信层的业务功能通过采集前置机、数据入库及消息队列三大独立功能模块共同实现。解决程序内存高效处理与降低内存提高系统内存回收效率之间的矛盾,降低了程序对服务器内存配置要求,降低通信调度程序分发策略对系统档案的依赖性,提高前置系统的分布式扩展能力。
作为优选技术手段:采集前置机把现场所有终端设备地址域划按一定规则划分为多个区间,设备地址按下行Topic的数量取模得到对应组地址域区间;下行Topic与地址域区间之间存在映射关系,前置业务处理器节点对地址域区间的管理,也即对下行Topic的管理;初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,将分配信息及时更新至Zookeeper分布式服务系统,以降低程序内存加载,提高程序集群扩展能力。
作为优选技术手段:A)节点新增/扩容时的分发策略为:
A01)对每个业务处理器节点所分配的Topic按照Topic编码进行排序,并计算该节点当前处理的Topic总数;
A02)对业务处理器节点根据Topic总数进行排序;
A03)计算每个业务处理器节点能处理Topic的平均值,Topic总数除以业务处理器节点总数;
A04)将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:A05)优先选择步骤A02)排序较大的业务处理器节点中Topic编码较大的Topic;
A06)将步骤A04)中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配;
A07)其他节点中删除被分配走的Topic信息。
作为优选技术手段:B)节点故障时的分发策略为:
B01)对前置业务处理器节点按照Topic数量进行排序;
B02)Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;
B03)根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;
B04)将因节点故障引起的待分发Topic按照节点新增/扩容时的分发策略的计算值依次分发给排序小的业务处理器节点。
作为优选技术手段:C)故障节点恢复时分发策略为:
C01)恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;
C02)从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。
本发明的另一个发明目的为提供一种基于面向对象的数据分发方法,其特征在于:
1)把现场所有终端设备地址域划按一定规则划分为若干区间;
2)kafka分布式消息队列下行队列设计,按组编号分对应组topic,每组按优先级再细分若干个队列;
3)初始化地址域分配策略按采集前置机数量取模,后续增加或者减少节点动态按数量取模分配,并把分配信息及时更新zookeeper分布式服务系统;
4)采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;
5)采集前置机收到上行报文后发现是未知终端则加载档案,并记录终端地址和通信网关的对应关系,并地址更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址域所属topic下优先级从高到低取下行请求,组帧后下发给对应通信网关;采集前置机发送实现多终端并行单终端串行发送策略;
6)通信网关定时检测采集前置机节状态,当发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次取模原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端地址域组档案信息。
有益效果:
一、本技术方案基于设备地址域,根据业务处理节点数量动态取模,实现报文分发,解决程序内存高效处理与降低内存提高系统内存回收效率之间的矛盾,降低了程序对服务器内存配置要求,降低通信调度程序分发策略对系统档案的依赖性,提高前置系统的分布式扩展能力。
二、本技术方案采用分布式弹性架构设计,运用流处理、消息中间件、分布式存储与并行计算等技术,重构电力数据采集系统,从存储能力、计算性能、数据处理速度和智能分析等方面进行极大地提升,为支撑用电营销智能分析、服务业务创新、拓展专业应用和提高供电服务水平等方面提供了有力保障。
三、本技术方案实现动态调整,以减少且均衡加载系统档案,降低程序对服务器内存配置要求。
海量数据存储架构重在“内存化、云化、分工专业化”,实现电能量数据集成融合和高效管理。
对海量数据的分析,采用大数据云平台通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析。
离线分析框架优选的采用Hive+Spark,Spark离线计算框架实现将原始数据导入Hive数据仓库执行海量数据的统计分析业务及数据挖掘。
对海量数据的存储,根据不同的数据使用属性将关系型数据库划分为主生产库、灾备库、历史库、数据发布库,保障采集数据安全稳定、降低生产库的数据访问压力、提升数据发布效率,并按业务和存储时限做分库策略以降低单点数据库的访问压力。
附图说明
图1为本发明结构框图。
具体实施方式
以下结合说明书附图对本发明的技术方案做进一步的详细说明。
如图1所示,一种基于设备地址域的通讯报文分发方法包括包括通信网关集群、采集前置集群、数据入库模块,分布式消息队列模块;
通信网关,用于终端各种信道的链路维护功能,链路的负载均衡功能由通信网关之前的负载均衡器实现,分发异常或分发量超过处理能力时报文本地文件缓存,gprs/cdma及光纤终端通过负载均衡器接入通信网关实现集群;
采集前置机,与网关集群相连,用于原始数据报文的分发调度,并将原始数据报文推送至分布式消息队列中;采集前置集群对报文的分发调度基于设备地址域算法实现策略分发,通过监控业务处理器集群各节点的运行状况实现分发策略的动态调整;采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态,每个节点可以通过zookeeper分布式服务系统获取各个节点运行信息;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;采集前置机收到上行报文后发现是未知终端则加载档案,通信网关的对应关系,定时更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址所对应的下行请求,下发给对应网关;通信网关定时检测采集前置机节点状态,如发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端档案信息;
数据入库模块,用于对消息队列中采集前置机推送的解析数据存储到关系型数据库;采用分布式大数据框架Hadoop和传统关系型数据库Oracle结合的方式以适应海量数据的分析和存储,解析数据包括上报任务数据和异常事件;
分布式消息队列模块,用于支撑上下行通信交互信息的时序化和持久化;采用分布式Kafka消息队列,在逻辑架构中体现数据总线的功能,通信层、应用层和数据持久层通过消息队列来进行数据交互,消息队列存放下行请求队列、上行应答队列、解析数据队列、上下行报文队列。
一种基于设备地址域的通讯报文分发方法,包括步骤:
1)把现场所有终端设备地址域划按一定规则划分为若干区间;
2)kafka分布式消息队列下行队列设计,按组编号分对应组topic,每组按优先级再细分若干个队列;
3)初始化地址域分配策略按采集前置机数量取模,后续增加或者减少节点动态按数量取模分配,并把分配信息及时更新zookeeper分布式服务系统;
4)采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;
5)采集前置机收到上行报文后发现是未知终端则加载档案,并记录终端地址和通信网关的对应关系,并地址更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址域所属topic下优先级从高到低取下行请求,组帧后下发给对应通信网关;采集前置机发送实现多终端并行单终端串行发送策略;
6)通信网关定时检测采集前置机节状态,当发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次取模原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端地址域组档案信息。
本发明用于电力采集前置系统的通信调度程序向业务处理程序集群分发报文的分发方法,解决程序内存高效处理与降低内存提高系统内存回收效率之间的矛盾,降低了程序对服务器内存配置要求,降低通信调度程序分发策略对系统档案的依赖性,提高前置系统的分布式扩展能力。总结来说,改方法经济有效。
本技术方案可采用弹性架构重构通信程序,满足不断增长用户规模和采集需求:运用大数据技术对用电信息采集系统的架构进行重新设计,采用分布式弹性架构设计:一是通信网关与采集前置机利用消息缓存作为总线,进行报文通信;二是前置机业务处理器仅对报文进行规约解析,并将数据写入消息缓存;三是存储架构重在“内存化、云化、分工专业化”,引入NOSQL存储、数据量大、存储管理能力多样,云平台流式计算和离线分析服务集群进行事件分析、数据校验、修复等操作,关系数据库根据不同的数据使用属性划分为主生产库、灾备库、历史库、数据发布库。四是所有采集数据由入库服务集群统一入库。
通信网关服务主要负责专变负控终端、配变监测终端、低压集中器等采集设备接入电力数据采集系统,并维护终端通讯链路和原始报文的收发。
采集前置服务负责原始数据报文的分发调度。
采集前置服务对报文的分发调度基于设备地址域算法实现策略分发,通过监控前置业务处理器各节点的运行状况实现分发策略的动态调整。其具体算法如下:
a.把现场所有终端设备地址域划按一定规则划分为若干区间,比如设备地址按下行Topic的数量(100个)取模得到100组地址域区间。如此,下行Topic与地址域区间之间也存在映射关系,前置业务处理器节点对地址域区间的管理也即对下行Topic的管理;
b.初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,并将分配信息及时更新至Zookeeper分布式服务系统。此分发策略目的在于降低程序内存加载,提高程序集群扩展能力;
c.节点新增(扩容)时分发策略:
1)对每个业务处理器节点所分配的Topic按照Topic编码进行排序(如:由大到小),并计算该节点当前处理的Topic总数;
2)对业务处理器节点(不含新增节点)根据Topic总数进行排序(如:由大到小);
3)计算每个业务处理器节点能处理Topic的平均值(假设该值标记为 AvgTopic):Topic总数除以业务处理器节点总数(含新增节点),小数位舍去;
4)将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:优先选择步骤2排序较大的业务处理器节点中Topic编码较大的Topic;
5)将步骤4中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配;
6)其他节点中删除被分配走的Topic信息;
d.节点故障时分发策略:
1) 对前置业务处理器节点按照Topic数量进行排序(如由大到小);
2) Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;
3) 根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;
4) 将因节点故障引起的待分发Topic按照步骤c的计算值依次分发给排序小的业务处理器节点;
e.故障节点恢复时分发策略:
1)恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;
2)从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。
前置业务处理服务负责通讯规约解析,并与分布式消息队列进行交互。即从消息队列获取下行请求并组成下行帧,将采集前置的原始数据报文进行规约解析并将解析结果推送至分布式消息队列中。
采集前置服务节点通过与业务处理器节点间定时心跳握手来获取所有业务处理器节点的运行状态,并把本节点上的终端地址按地址域算法分发给指定业务处理器节点。
实时处理集群采用大数据云平台通过基于分布式文件系统的大数据框架实现业务数据的实时计算、离线分析,为进一步深度挖掘提供技术支撑。
本技术方案可运用流处理技术,实现对采集负荷、电能示值数据进行实时检查、校验,并对问题数据进行标记,对异常负荷数据进行修复;针对问题数据通过功率估值、ARIMA算法和营销发行电量进行修复,保证数据的合理性、一致性、逻辑性,通过及时发现、标注无效和失真数据,提高系统数据质量。同时,运用流处理技术实现电能量数据、告警事件的实时监测与分析。所述流处理技术即实时计算的框架,优选的采用Hbase+Storm,Storm实时计算框架负责从消息队列中获取原始数据和报文数据入HBase分布式数据库;
本技术方案可通过分布式并行计算框架,实现海量数据准实时统计:通过大数据分布式内存并行计算框架,实现按小时对采集成功率指标、各类用户电量和负荷、线损计算、配变运行监测、移动运营商信道质量监测、终端在线率等进行统计,满足各级单位业务管控需求。准实时分析框架优选的采用Hive+Spark,Spark离线计算框架实现将原始数据导入Hive数据仓库执行海量数据的统计分析业务及数据挖掘。
本技术方案可构建灵活的数据存储策略,实现“按需存储”,满足多维度查询需求:分析不同业务数据应用需求,发挥商用数据库(Oracle)、缓存数据库(Redis)、分布式数据库(HBase)和数据仓库(Hive)长处,设计多级存储机制,提高查询性能,提升数据应用效率。
商用数据库采用Oracle12c数据库版本,结合InfiniBand高速网络和SSD(固态硬盘)存储搭建支撑高吞吐量高并发的OLTP(联机事务处理)业务的数据存储平台,主要负责存储全部业务数据、档案数据、原始数据,为系统提供基本数据支持和计算服务。关系型数据库可细分为主生产库、灾备库、历史库、数据发布库,保障采集数据安全稳定、降低生产库的数据访问压力、提升数据发布效率,并按业务和存储时限做分库策略以降低单点数据库的访问压力。
缓存数据库(Redis)是一个高性能的Key-Value数据库,性能极高 – Redis能支持超过 100K+ 每秒的读写频率。不仅仅支持简单的Key-Value类型的数据,同时还提供list、set、zset、hash等数据结构的存储。
分布式数据库HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,通过类SQL语句快速实现简单的MapReduce统计,十分适合数据仓库的统计分析。
云数据平台和关系型数据库之间的数据同步优选的采用Sqoop数据转移工具实现。
以一电力为例,采用本技术方案后,实现的性能指标:
计算耗时指标:大数据云平台各类离线计算业务在半小时内完成(如采集质量分析、行业负荷趋势分析等典型业务);各类实时流计算业务每秒处理规模达到2万笔(如负荷特性分析、终端通信状态维护等典型业务)。
通信处理指标,采集前置集群单节点TCP链路接入量最高达40万台;采集前置集群单节点每秒分发处理报文达3万条;数据存储服务整体数据入库效率达每秒6万条。
以上图1所示的一种基于面向对象的数据分发方法是本发明的具体实施例,已经体现出本发明实质性特点和进步,可根据实际的使用需要,在本发明的启示下,对其进行形状、结构等方面的等同修改,均在本方案的保护范围之列。
Claims (6)
1.一种基于设备地址域的通讯报文分发系统,其特征在于:包括通信网关集群、采集前置集群、数据入库模块,分布式消息队列模块;
通信网关,用于终端各种信道的链路维护功能,链路的负载均衡功能由通信网关之前的负载均衡器实现,分发异常或分发量超过处理能力时报文本地文件缓存,gprs/cdma及光纤终端通过负载均衡器接入通信网关实现集群;
采集前置机,与网关集群相连,用于原始数据报文的分发调度,并将原始数据报文推送至分布式消息队列中;采集前置集群对报文的分发调度基于设备地址域算法实现策略分发,通过监控业务处理器集群各节点的运行状况实现分发策略的动态调整;采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态,每个节点可以通过zookeeper分布式服务系统获取各个节点运行信息;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;采集前置机收到上行报文后发现是未知终端则加载档案,通信网关的对应关系,定时更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址所对应的下行请求,下发给对应网关;通信网关定时检测采集前置机节点状态,如发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端档案信息;
数据入库模块,与采集前置机相连,用于对消息队列中采集前置机推送的解析数据存储到关系型数据库;采用分布式大数据框架Hadoop和传统关系型数据库Oracle结合的方式以适应海量数据的分析和存储,解析数据包括上报任务数据和异常事件;
分布式消息队列模块,与采集前置机相连,用于支撑上下行通信交互信息的时序化和持久化;采用分布式Kafka消息队列,在逻辑架构中体现数据总线的功能,通信层、应用层和数据持久层通过消息队列来进行数据交互,消息队列存放下行请求队列、上行应答队列、解析数据队列、上下行报文队列。
2.根据权利要求1所述的一种基于设备地址域的通讯报文分发系统,其特征在于:采集前置机把现场所有终端设备地址域划按一定规则划分为多个区间,设备地址按下行Topic的数量取模得到对应组地址域区间;下行Topic与地址域区间之间存在映射关系,前置业务处理器节点对地址域区间的管理,也即对下行Topic的管理;初始化地址域分配策略按业务前置处理服务节点数量取模,节点新增、节点故障及故障节点恢复时分别按照“新增节点分发策略”、“节点故障时分发策略”和“故障节点恢复时分发策略”实现动态调整,将分配信息及时更新至Zookeeper分布式服务系统,以降低程序内存加载,提高程序集群扩展能力。
3.根据权利要求2所述的一种基于设备地址域的通讯报文分发系统,其特征在于:A)节点新增/扩容时的分发策略为:
A01)对每个业务处理器节点所分配的Topic按照Topic编码进行排序,并计算该节点当前处理的Topic总数;
A02)对业务处理器节点根据Topic总数进行排序;
A03)计算每个业务处理器节点能处理Topic的平均值,Topic总数除以业务处理器节点总数;
A04)将节点中Topic数量大于AvgTopic的所有业务处理器节点的多余Topic取出,取出规则:A05)优先选择步骤A02)排序较大的业务处理器节点中Topic编码较大的Topic;
A06)将步骤A04)中取出的Topic优先分配给新增的业务处理器节点,使新增节点的Topic数约平均值;若仍有未分配的Topic则对所有节点进行取模分配;
A07)其他节点中删除被分配走的Topic信息。
4.根据权利要求3所述的一种基于设备地址域的通讯报文分发系统,其特征在于:B)节点故障时的分发策略为:
B01)对前置业务处理器节点按照Topic数量进行排序;
B02)Topic总数除以当前运行的前置业务处理器节点总数,得到当前运行的每个业务处理器节点处理Topic的平均值;
B03)根据平均值计算当前运行的每个业务处理器节点可新增的Topic数量:由b计算得的均值-现有的Topic数;
B04)将因节点故障引起的待分发Topic按照节点新增/扩容时的分发策略的计算值依次分发给排序小的业务处理器节点。
5.根据权利要求4所述的一种基于设备地址域的通讯报文分发系统,其特征在于:C)故障节点恢复时分发策略为:
C01)恢复的业务处理器节点按照初始化时的分配策略加载对应的Topic;
C02)从其他业务处理器节点定时删除这些被归还给恢复节点的Topic信息。
6.采用权利要求1-5任一权利要求所述的一种基于设备地址域的通讯报文分发系统的通讯报文分发方法,其特征在于包括以步骤:
1)把现场所有终端设备地址域划按一定规则划分为若干区间;
2)kafka分布式消息队列下行队列设计,按组编号分对应组topic,每组按优先级再细分若干个队列;
3)初始化地址域分配策略按采集前置机数量取模,后续增加或者减少节点动态按数量取模分配,并把分配信息及时更新zookeeper分布式服务系统;
4)采集前置机所有节点启动后都在zookeeper分布式服务系统上注册运行状态;通信网关节点通过与采集前置机的定时心跳握手获取所有采集前置机节点运行状态,把本节点上的终端地址按地址域取模算法分发给指定采集前置机节点,分配信息保存在内存;
5)采集前置机收到上行报文后发现是未知终端则加载档案,并记录终端地址和通信网关的对应关系,并地址更新到zookeeper分布式服务器;从消息队列集群中取该终端设备地址域所属topic下优先级从高到低取下行请求,组帧后下发给对应通信网关;采集前置机发送实现多终端并行单终端串行发送策略;
6)通信网关定时检测采集前置机节状态,当发现2个心跳周期没有收到采集前置机节点心跳,则认为该节点故障,把该节点所属终端按地址域划分均衡分配给其他活动节点;通信网关发现故障节点恢复时,把上一次取模原属于该节点的终端再还给该节点,并把最新的对应信息更新内存;采集前置机需要定时清理非本节点管理终端地址域组档案信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019100090091 | 2019-01-04 | ||
CN201910009009 | 2019-01-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110225074A true CN110225074A (zh) | 2019-09-10 |
CN110225074B CN110225074B (zh) | 2023-04-14 |
Family
ID=67822384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910165421.2A Active CN110225074B (zh) | 2019-01-04 | 2019-03-05 | 一种基于设备地址域的通讯报文分发系统及分发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110225074B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110971872A (zh) * | 2019-11-14 | 2020-04-07 | 北京中盾安全技术开发公司 | 一种基于分布式集群的视频图像信息采集方法 |
CN111277672A (zh) * | 2020-03-31 | 2020-06-12 | 上海积成能源科技有限公司 | 一种基于非阻塞输入输出模型的能源物联网数据采集方法和软件网关 |
CN111355785A (zh) * | 2020-02-20 | 2020-06-30 | 浪潮软件集团有限公司 | 一种基于cmsp的ftp安全传输系统及方法 |
CN111538789A (zh) * | 2020-04-27 | 2020-08-14 | 咪咕文化科技有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN111597056A (zh) * | 2020-05-18 | 2020-08-28 | 北京思特奇信息技术股份有限公司 | 一种分布式调度方法、系统、存储介质和设备 |
CN112397193A (zh) * | 2020-11-16 | 2021-02-23 | 康键信息技术(深圳)有限公司 | 数据上报方法、装置、设备及存储介质 |
CN112422348A (zh) * | 2020-11-30 | 2021-02-26 | 国网上海市电力公司 | 一种电力信息数据采集通信系统及方法 |
CN112866342A (zh) * | 2020-12-31 | 2021-05-28 | 中冶赛迪重庆信息技术有限公司 | 一种面向钢铁行业的分布式数据采集系统及方法 |
CN113645323A (zh) * | 2021-07-29 | 2021-11-12 | 广州鲁邦通智能科技有限公司 | 一种高并发状态下防止mac地址重复写入的方法、单元和系统 |
CN114500660A (zh) * | 2020-10-23 | 2022-05-13 | 中移(苏州)软件技术有限公司 | 请求处理方法、装置、设备及计算机可读存储介质 |
CN115913809A (zh) * | 2022-09-26 | 2023-04-04 | 重庆长安汽车股份有限公司 | 数据分发通信方法、系统、计算机设备及存储介质 |
CN115913809B (zh) * | 2022-09-26 | 2024-05-03 | 重庆长安汽车股份有限公司 | 数据分发通信方法、系统、计算机设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007033363A2 (en) * | 2005-09-13 | 2007-03-22 | Ist International, Inc. | System and method for providing packet connectivity between heterogeneous networks |
CN104115469A (zh) * | 2011-09-23 | 2014-10-22 | 混合电路逻辑有限公司 | 用于分布式系统中的应用的实时迁移和自动恢复的系统 |
CN104158902A (zh) * | 2014-08-27 | 2014-11-19 | 浙江宇视科技有限公司 | 一种基于请求数的Hbase数据块分配方法及装置 |
CN104754549A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团公司 | 移动性管理方法、装置及系统,演进型基站、网关设备 |
CN105024938A (zh) * | 2015-06-11 | 2015-11-04 | 北京思源置地科技有限公司 | 一种移动负载均衡方法和系统 |
CN107105070A (zh) * | 2017-04-21 | 2017-08-29 | 上海寰创通信科技股份有限公司 | 一种动态分配网关属性方法 |
CN107567065A (zh) * | 2017-08-16 | 2018-01-09 | 南京天溯自动化控制系统有限公司 | 基于无线自组织网络的数据透明传输方法和系统 |
CN108011915A (zh) * | 2017-07-05 | 2018-05-08 | 国网浙江省电力公司 | 一种基于云通讯的采集前置系统 |
CN109120729A (zh) * | 2017-06-23 | 2019-01-01 | 中国电信股份有限公司 | 地址分配管理方法、6LoWPAN网关和系统 |
-
2019
- 2019-03-05 CN CN201910165421.2A patent/CN110225074B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007033363A2 (en) * | 2005-09-13 | 2007-03-22 | Ist International, Inc. | System and method for providing packet connectivity between heterogeneous networks |
CN104115469A (zh) * | 2011-09-23 | 2014-10-22 | 混合电路逻辑有限公司 | 用于分布式系统中的应用的实时迁移和自动恢复的系统 |
CN104754549A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团公司 | 移动性管理方法、装置及系统,演进型基站、网关设备 |
CN104158902A (zh) * | 2014-08-27 | 2014-11-19 | 浙江宇视科技有限公司 | 一种基于请求数的Hbase数据块分配方法及装置 |
CN105024938A (zh) * | 2015-06-11 | 2015-11-04 | 北京思源置地科技有限公司 | 一种移动负载均衡方法和系统 |
CN107105070A (zh) * | 2017-04-21 | 2017-08-29 | 上海寰创通信科技股份有限公司 | 一种动态分配网关属性方法 |
CN109120729A (zh) * | 2017-06-23 | 2019-01-01 | 中国电信股份有限公司 | 地址分配管理方法、6LoWPAN网关和系统 |
CN108011915A (zh) * | 2017-07-05 | 2018-05-08 | 国网浙江省电力公司 | 一种基于云通讯的采集前置系统 |
CN107567065A (zh) * | 2017-08-16 | 2018-01-09 | 南京天溯自动化控制系统有限公司 | 基于无线自组织网络的数据透明传输方法和系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110971872A (zh) * | 2019-11-14 | 2020-04-07 | 北京中盾安全技术开发公司 | 一种基于分布式集群的视频图像信息采集方法 |
CN111355785A (zh) * | 2020-02-20 | 2020-06-30 | 浪潮软件集团有限公司 | 一种基于cmsp的ftp安全传输系统及方法 |
CN111277672B (zh) * | 2020-03-31 | 2022-03-11 | 上海积成能源科技有限公司 | 一种基于非阻塞输入输出模型的能源物联网数据采集方法 |
CN111277672A (zh) * | 2020-03-31 | 2020-06-12 | 上海积成能源科技有限公司 | 一种基于非阻塞输入输出模型的能源物联网数据采集方法和软件网关 |
CN111538789A (zh) * | 2020-04-27 | 2020-08-14 | 咪咕文化科技有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN111538789B (zh) * | 2020-04-27 | 2023-08-15 | 咪咕文化科技有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN111597056B (zh) * | 2020-05-18 | 2023-06-30 | 北京思特奇信息技术股份有限公司 | 一种分布式调度方法、系统、存储介质和设备 |
CN111597056A (zh) * | 2020-05-18 | 2020-08-28 | 北京思特奇信息技术股份有限公司 | 一种分布式调度方法、系统、存储介质和设备 |
CN114500660A (zh) * | 2020-10-23 | 2022-05-13 | 中移(苏州)软件技术有限公司 | 请求处理方法、装置、设备及计算机可读存储介质 |
CN114500660B (zh) * | 2020-10-23 | 2023-11-03 | 中移(苏州)软件技术有限公司 | 请求处理方法、装置、设备及计算机可读存储介质 |
CN112397193A (zh) * | 2020-11-16 | 2021-02-23 | 康键信息技术(深圳)有限公司 | 数据上报方法、装置、设备及存储介质 |
CN112422348A (zh) * | 2020-11-30 | 2021-02-26 | 国网上海市电力公司 | 一种电力信息数据采集通信系统及方法 |
CN112866342A (zh) * | 2020-12-31 | 2021-05-28 | 中冶赛迪重庆信息技术有限公司 | 一种面向钢铁行业的分布式数据采集系统及方法 |
CN113645323A (zh) * | 2021-07-29 | 2021-11-12 | 广州鲁邦通智能科技有限公司 | 一种高并发状态下防止mac地址重复写入的方法、单元和系统 |
CN115913809A (zh) * | 2022-09-26 | 2023-04-04 | 重庆长安汽车股份有限公司 | 数据分发通信方法、系统、计算机设备及存储介质 |
CN115913809B (zh) * | 2022-09-26 | 2024-05-03 | 重庆长安汽车股份有限公司 | 数据分发通信方法、系统、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110225074B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110225074A (zh) | 一种基于设备地址域的通讯报文分发系统及分发方法 | |
CN110022226A (zh) | 一种基于面向对象的数据采集系统及采集方法 | |
CN110047014B (zh) | 一种基于负荷曲线和历史电量的用户电量数据修复方法 | |
CN109218355B (zh) | 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法 | |
CN109739919B (zh) | 一种用于电力系统的前置机和采集系统 | |
US20150106578A1 (en) | Systems, methods and devices for implementing data management in a distributed data storage system | |
CN104969213A (zh) | 用于低延迟数据存取的数据流分割 | |
CN102855284A (zh) | 一种集群存储系统的数据管理方法及系统 | |
CN103955509A (zh) | 一种海量电力计量数据的快速检索方法 | |
CN103986766A (zh) | 自适应负载均衡作业任务调度方法及装置 | |
EP3285186A1 (en) | Methods and procedures for timestamp-based indexing of items in real-time storage | |
CN108573029A (zh) | 一种获取网络访问关系数据的方法、装置及存储介质 | |
CN107220271A (zh) | 一种分布式数字资源存储处理与管理的方法及系统 | |
CN103530335B (zh) | 电力计量采集系统的入库操作方法及装置 | |
CN105975345A (zh) | 一种基于分布式内存的视频帧数据动态均衡存储管理方法 | |
Zhang et al. | Approximate clustering on distributed data streams | |
CN107818106B (zh) | 一种大数据离线计算数据质量校验方法和装置 | |
CN101702668A (zh) | 网格化负载均衡系统 | |
CN107908713A (zh) | 一种基于Redis集群的分布式动态杜鹃过滤系统及其过滤方法 | |
CN110457307A (zh) | 元数据管理系统、用户集群创建方法、装置、设备和介质 | |
KR101029416B1 (ko) | 실시간으로 대용량 랭킹을 산정하기 위한 랭킹 데이터 시스템, 랭킹 질의 시스템 및 랭킹 산정 방법 | |
CN105095224A (zh) | 一种在移动通信网络中进行olap分析的方法、装置和系统 | |
CN108696585A (zh) | 一种数据的分布式存储方法及系统 | |
CN115168042A (zh) | 监控集群的管理方法及装置、计算机存储介质、电子设备 | |
CN108363761A (zh) | Hadoop awr自动负载分析信息库、分析方法及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |