CN101170448A - 处理电信网管系统拓扑界面大量上报消息的系统和方法 - Google Patents
处理电信网管系统拓扑界面大量上报消息的系统和方法 Download PDFInfo
- Publication number
- CN101170448A CN101170448A CNA2007101880827A CN200710188082A CN101170448A CN 101170448 A CN101170448 A CN 101170448A CN A2007101880827 A CNA2007101880827 A CN A2007101880827A CN 200710188082 A CN200710188082 A CN 200710188082A CN 101170448 A CN101170448 A CN 101170448A
- Authority
- CN
- China
- Prior art keywords
- message
- performance element
- module
- sign
- described message
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种处理电信网管拓扑界面大量上报消息的系统,包括:消息源模块、消息队列模块、消息处理线程模块和消息处理模块。采用该系统处理上报消息的方法,包括:消息源模块产生上报消息,并将其封装成带有级别标识的消息执行单元后发送给消息队列模块;消息队列模块根据消息执行单元的级别标识将其放入对应的队列中或将其丢弃;消息处理线程接收到消息处理模块向其发送的处理完成通知消息或到了监听周期时,监听消息队列模块中是否有队列需要处理,如有,则对其进行处理;所述消息处理模块接收到消息执行单元,将其放入用户界面线程中进行相应的处理。本发明为一种更加简单、实用且不需要考虑繁琐的线程锁机制问题的方法,提高了客户端的处理效率。
Description
技术领域
本发明涉及通信领域,尤其涉及一种处理电信网管系统拓扑界面大量上报消息的系统和方法。
背景技术
在电信网管系统中,随着需管理的网元越来越集中、数目越来越多,对界面处理的性能就有了更高的要求。对于一个网管系统,体现网络拓扑结构以及告警的大数据量处理都是很占用资源的。对于拓扑图来说,在一个图中显示上万个网元是可能的,在这种情况,如果上报消息来得非常频繁,界面的呈现或者处理性能将受到极大的影响。
对于这种上报消息的处理,一般有两种方式:一种是在接收到上报消息后,在前台部署一同步的消息线程管理器进行管理,将上报消息放到线程中进行处理。执行消息队列时,申请写锁;界面操作时,需要申请读锁。但采用这种方式存在的问题是上报消息处理涉及到界面的处理,在以后涉及到界面处理的线程中都需要添加同步,否则界面会出现异常,而且对于系统触发的用户界面线程,例如刷新,则无法添加同步标识,界面容易出错;另外一种方式就是将收到的上报消息都放到用户界面线程中进行处理,这样的处理方式可以避免界面出现异常,但带来的后果是如果用户界面线程占用时间过长,界面会出现长时间灰屏现象。这两个方法还有一个缺点就是在前台界面退出时,有可能还有消息上报需要处理,这时不好控制处理逻辑,有可能前台已经退出,可线程还在运行。
发明内容
本发明要解决的技术问题是提供一种处理电信网管系统拓扑界面大量上报消息的系统和方法,以避免现有技术中繁琐的线程锁机制问题。
本发明采用的技术方案是:
本发明提供了一种处理电信网管拓扑界面大量上报消息的系统,包括:消息源模块、消息队列模块、消息处理线程模块和消息处理模块;
所述消息源模块用于产生上报消息后将其封装成带有级别标识的消息执行单元,并将所述消息执行单元发送给所述消息队列模块;
所述消息队列模块用于根据所述消息执行单元的级别标识,将所述消息执行单元放到对应的队列中或将其丢弃;
消息处理线程模块用于创建并启动消息处理线程;
消息处理模块用于在接收到所述消息执行单元时,将其放入用户界面线程中进行相应的处理。
进一步地,所述消息处理线程用于在接收到所述消息处理模块向其发送的处理完成通知消息或到了监听周期时,开始监听所述消息队列模块中是否有队列需要处理,如有,则对其进行处理。
进一步地,所述级别标识包括前台标识、后台数据标识、最高级别刷新标识或自动刷新标识。
进一步地,所述消息执行单元是被封装的消息上报单元,在前台退出时,辨别自己是否应该继续运行或者被调度或者结束命周期。
本发明还提供了一种使用权利要求1所述系统处理电信网管拓扑界面大量上报消息的方法,包括以下步骤:
a、消息源模块产生上报消息,并将所述上报消息封装成带有级别标识的消息执行单元后发送给消息队列模块;
b、所述消息队列模块根据所述消息执行单元的级别标识将其放入对应的队列中或将其丢弃;
c、消息处理线程接收到所述消息处理模块向其发送的处理完成通知消息或到了监听周期时,其开始监听所述消息队列模块中是否有队列需要处理,如有,则对其进行处理;
d、如果所述消息处理模块接收到所述消息执行单元,则将其放入用户界面线程中进行相应的处理。
进一步地,所述消息处理线程由消息处理线程模块创建并启动,所述消息处理线程根据所述监听周期对所述消息队列模块进行监听。
进一步地,步骤a中,所述级别标识包括前台标识、后台数据标识、最高级别刷新标识或自动刷新标识。
进一步地,步骤b具体为:所述消息队列模块判断与所述消息执行单元的级别标识对应的队列中是否已包含一刷新标识的消息执行单元或者该队列中的消息执行单元数是否等于预先设定的阀值,如果是,则将所述消息执行单元丢弃,且将等于所述阀值的队列中的所有消息执行单元的级别标识均置为自动刷新标识;否则,将所述消息执行单元放到所述对应的队列中
进一步地,步骤c中,所述消息处理线程对所述队列中的消息执行单元的处理,具体包括以下步骤:所述消息处理线程如判断所述队列中的消息执行单元中有所述最高级别刷新标识,则将所述消息执行单元发送给所述消息处理模块;如果有所述自动刷新标识,则所述消息处理线程休眠一预设时间后判断休眠的总时间是否超过了预设的等待阀值,如果是,将所述消息执行单元发送给所述消息处理模块;如果有所述前台标识或者后台数据标识,则所述消息处理线程从消息队列中取出所述消息执行单元并发送给所述消息处理模块。
进一步地,步骤d中,所述消息处理模块对接收到的消息执行单元进行处理,具体包括以下步骤:如果所述消息执行单元含有刷新标识,则所述消息处理模块将刷新操作放入用户界面线程中执行,执行完成后,向所述消息处理线程发送一处理完成通知消息;如果所述消息执行单元含有前台标识或后台数据标识,则所述消息处理模块将所述消息执行单元放到所述用户界面线程中进行相应的处理。
与现有技术相比,本发明为一种更加简单、实用且不需要考虑繁琐的线程锁机制问题的方法,提高了客户端的处理效率。
附图说明
图1为本发明实施例中处理电信网管系统拓扑界面大量上报消息的系统框架结构图;
图2为本发明实施例中处理电信网管系统拓扑界面大量上报消息的方法流程图;
图3是本发明实施例中消息处理线程处理消息执行单元的流程图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
首先说明与本实施例相关的一些消息执行单元的分类。消息执行单元是被封装的上报消息,是事件处理队列中的基本元素,在前台退出时,它会进行自我辨别,辨别自己是否应该继续运行或者被调度还是结束它的生命周期。
在本实施例中,消息执行单元中包含的级别标识分为:刷新标识、前台标识和后台数据标识,其中刷新标识又分为最高级别刷新标识和自动刷新标识。
最高级别刷新标识:含有该标识的消息执行单元为前台刷新消息执行单元中级别最高的。前台产生该消息执行单元后,立即触发,从后台重新获取数据到前台呈现;
自动刷新标识:含有该标识的消息执行单元为前台刷新消息中级别最低的,其为上报消息累积产生的刷新操作,不立即执行,有一定的延迟机制,避免数据风暴时,系统不停执行刷新,加重前台和后台的负担;
前台标识:含有该标识的消息执行单元只更新前台渲染需要的一些消息,例如只更新前台的状态信息或者告警信息等;
后台数据标识:含有该标识的消息执行单元可以对拓扑数据进行增、删、改操作。
如图1所示,本实施例中处理电信网管系统拓扑界面大量上报消息的系统包括:消息源模块、消息队列模块、消息处理线程模块和消息处理模块。
消息源模块用于产生各种上报消息后,分别将其封装成带有上述级别标识的消息执行单元并发送给消息队列模块;其中,消息执行单元是被封装的上报消息单元,是事件处理队列中的基本元素,在前台退出时,它会进行自我辨别,辨别自己是否应该继续运行或者被调度还是结束它的生命周期;
消息队列模块用于根据接收到的消息执行单元的级别标识,将该消息执行单元放到对应的队列中或将其丢弃;
消息处理线程模块用于创建并启动消息处理线程;消息处理线程用于在接收到消息处理模块向其发送的处理完成通知消息或到了监听周期时,开始监听消息队列模块中是否有队列需要处理,如有,则对其进行处理;
消息处理模块用于在接收到消息执行单元时,将其放入用户界面线程中进行相应的处理。
本实施例中,处理电信网管系统拓扑界面大量上报消息的方法,如图2所示,包括以下步骤:
步骤一:消息处理线程模块创建并启动消息处理线程,消息处理线程开始每隔一监听周期向消息队列模块发起轮询(此步骤不限于在步骤一中执行,其也可以在下述步骤二、三之前的任意一步执行);
步骤二:消息源模块产生上报消息后,将这些上报消息分别封装成消息执行单元并发送给消息队列模块,消息执行单元中包括该上报消息的级别标识;
步骤三:消息队列模块判断接收到的消息执行单元的级别标识类型,如果为刷新标识(包括最高级别刷新标识或自动刷新标识),则判断与该级别标识相对应的队列中是否已有一个包含刷新标识的消息执行单元,如果是,则将该消息执行单元丢弃;否则,将该消息执行单元放到上述队列中去。如果接收到的消息执行单元的级别标识为前台标识或者为后台数据标识,则判断与该级别标识相对应的队列中的消息执行单元的数目是否等于预先设定的消息处理阀值,如果是,则将该消息执行单元丢弃,且将该队列中的消息执行单元的级别标识均置为自动刷新级别;否则,将该消息执行单元放到该队列中;
其中,只要消息源模块中存在上报消息,则循环执行步骤二、三。
步骤四:消息处理线程对消息执行单元的处理过程,如图3所示,包括以下步骤:如消息处理线程接收到消息处理模块向其发送的处理完成通知消息或到了监听周期时,消息处理线程开始监听消息队列模块中是否有队列需要处理,如有,则进行处理,具体包括以下步骤(如果没有,则重新执行步骤四):
消息处理线程如判断队列中的消息执行单元中有最高级别刷新标识,则将该消息执行单元发送给消息处理模块;
如果有自动刷新标识,则消息处理线程休眠一预设时间后判断休眠的总时间是否超过了预设的等待阀值,如果是,将消息执行单元发送给消息处理模块;否则,执行步骤四;
如果有前台标识或者后台数据标识,则消息处理线程从消息队列中取出该消息执行单元并发送给消息处理模块;
如果消息处理线程没接收到消息处理模块向其发送的处理完成通知消息且没到监听周期时,重新执行步骤四;
步骤五:如果消息处理模块接收到含有刷新标识的消息执行单元,则将刷新操作放入用户界面线程中执行,执行完成后,向消息处理线程发送一处理完成通知消息;如果消息处理模块接收到含有前台标识或后台数据标识的消息执行单元,则其将这些消息执行单元放到用户界面线程中进行相应的处理,在此过程中,消息处理线程一直处于休眠状态。每处理完一个含有前台标识或后台数据标识的消息执行单元,消息处理模块都需访问一次消息队列模块,判断其中是否含有刷新标识的消息执行单元,如有,则不再处理后面的消息执行单元,直接退出用户界面线程,且向消息处理线程发送一处理完成通知消息消息;
步骤六:重新执行步骤四。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (10)
1.一种处理电信网管拓扑界面大量上报消息的系统,其特征在于,包括:消息源模块、消息队列模块、消息处理线程模块和消息处理模块;
所述消息源模块用于产生上报消息后将其封装成带有级别标识的消息执行单元,并将所述消息执行单元发送给所述消息队列模块;
所述消息队列模块用于根据所述消息执行单元的级别标识,将所述消息执行单元放到对应的队列中或将其丢弃;
消息处理线程模块用于创建并启动消息处理线程;
消息处理模块用于在接收到所述消息执行单元时,将其放入用户界面线程中进行相应的处理。
2.如权利要求1所述的系统,其特征在于,
所述消息处理线程用于在接收到所述消息处理模块向其发送的处理完成通知消息或到了监听周期时,开始监听所述消息队列模块中是否有队列需要处理,如有,则对其进行处理。
3.如权利要求1所述的系统,其特征在于,
所述级别标识包括前台标识、后台数据标识、最高级别刷新标识或自动刷新标识。
4.如权利要求1所述的系统,其特征在于,
所述消息执行单元是被封装的消息上报单元,在前台退出时,辨别自己是否应该继续运行或者被调度或者结束命周期。
5.一种使用权利要求1所述系统处理电信网管拓扑界面大量上报消息的方法,其特征在于,包括以下步骤:
a、消息源模块产生上报消息,并将所述上报消息封装成带有级别标识的消息执行单元后发送给消息队列模块;
b、所述消息队列模块根据所述消息执行单元的级别标识将其放入对应的队列中或将其丢弃;
c、消息处理线程接收到所述消息处理模块向其发送的处理完成通知消息或到了监听周期时,其开始监听所述消息队列模块中是否有队列需要处理,如有,则对其进行处理;
d、如果所述消息处理模块接收到所述消息执行单元,则将其放入用户界面线程中进行相应的处理。
6.如权利要求5所述的方法,其特征在于,
所述消息处理线程由消息处理线程模块创建并启动,所述消息处理线程根据所述监听周期对所述消息队列模块进行监听。
7.如权利要求5所述的方法,其特征在于,
步骤a中,所述级别标识包括前台标识、后台数据标识、最高级别刷新标识或自动刷新标识。
8.如权利要求7所述的方法,其特征在于,
步骤b具体为:所述消息队列模块判断与所述消息执行单元的级别标识对应的队列中是否已包含一刷新标识的消息执行单元或者该队列中的消息执行单元数是否等于预先设定的阀值,如果是,则将所述消息执行单元丢弃,且将等于所述阀值的队列中的所有消息执行单元的级别标识均置为自动刷新标识;否则,将所述消息执行单元放到所述对应的队列中。
9.如权利要求8所述的方法,其特征在于,
步骤c中,所述消息处理线程对所述队列中的消息执行单元的处理,具体包括以下步骤:所述消息处理线程如判断所述队列中的消息执行单元中有所述最高级别刷新标识,则将所述消息执行单元发送给所述消息处理模块;如果有所述自动刷新标识,则所述消息处理线程休眠一预设时间后判断休眠的总时间是否超过了预设的等待阀值,如果是,将所述消息执行单元发送给所述消息处理模块;如果有所述前台标识或者后台数据标识,则所述消息处理线程从消息队列中取出所述消息执行单元并发送给所述消息处理模块。
10.如权利要求9所述的方法,其特征在于,
步骤d中,所述消息处理模块对接收到的消息执行单元进行处理,具体包括以下步骤:如果所述消息执行单元含有刷新标识,则所述消息处理模块将刷新操作放入用户界面线程中执行,执行完成后,向所述消息处理线程发送一处理完成通知消息;如果所述消息执行单元含有前台标识或后台数据标识,则所述消息处理模块将所述消息执行单元放到所述用户界面线程中进行相应的处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710188082A CN100589417C (zh) | 2007-11-22 | 2007-11-22 | 处理电信网管系统拓扑界面大量上报消息的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710188082A CN100589417C (zh) | 2007-11-22 | 2007-11-22 | 处理电信网管系统拓扑界面大量上报消息的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101170448A true CN101170448A (zh) | 2008-04-30 |
CN100589417C CN100589417C (zh) | 2010-02-10 |
Family
ID=39390927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710188082A Expired - Fee Related CN100589417C (zh) | 2007-11-22 | 2007-11-22 | 处理电信网管系统拓扑界面大量上报消息的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100589417C (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102739452A (zh) * | 2012-06-28 | 2012-10-17 | 浪潮(北京)电子信息产业有限公司 | 资源监控方法和系统 |
CN109087487A (zh) * | 2018-10-23 | 2018-12-25 | 安徽工程大学 | 一种支持多级延时的报警消息推送方法 |
CN111625322A (zh) * | 2019-02-27 | 2020-09-04 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统及设备 |
CN114691318A (zh) * | 2022-02-24 | 2022-07-01 | 深圳震有科技股份有限公司 | 一种数据排队处理方法、装置、终端及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104954586A (zh) * | 2014-03-28 | 2015-09-30 | 中国电信股份有限公司 | 移动用户获取好友状态的方法与装置 |
-
2007
- 2007-11-22 CN CN200710188082A patent/CN100589417C/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102739452A (zh) * | 2012-06-28 | 2012-10-17 | 浪潮(北京)电子信息产业有限公司 | 资源监控方法和系统 |
CN109087487A (zh) * | 2018-10-23 | 2018-12-25 | 安徽工程大学 | 一种支持多级延时的报警消息推送方法 |
CN111625322A (zh) * | 2019-02-27 | 2020-09-04 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统及设备 |
CN111625322B (zh) * | 2019-02-27 | 2024-03-29 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统及设备 |
CN114691318A (zh) * | 2022-02-24 | 2022-07-01 | 深圳震有科技股份有限公司 | 一种数据排队处理方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100589417C (zh) | 2010-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100589417C (zh) | 处理电信网管系统拓扑界面大量上报消息的系统和方法 | |
CN107872396B (zh) | 具有超时控制的通信方法、处理设备、终端设备和服务器 | |
CN109347757A (zh) | 消息拥塞控制方法、系统、设备及存储介质 | |
CN102902583A (zh) | 在挂起状态和执行状态下管理进程 | |
CN101917303B (zh) | 告警防抖动的处理方法及装置 | |
EP2819015B1 (en) | Method, terminal, and server for synchronizing terminal mirror | |
WO2020238989A1 (zh) | 一种调度任务处理实体的方法及装置 | |
CN101477386B (zh) | 一种定时器实现方法和装置 | |
CN112650575B (zh) | 资源调度方法、装置和云端服务系统 | |
CN102999384A (zh) | 在挂起状态和执行状态下管理进程 | |
CN102263670A (zh) | 一种告警消息的上报处理方法及装置 | |
CN113190427B (zh) | 卡顿监控方法、装置、电子设备及存储介质 | |
CN110647392A (zh) | 一种基于容器集群的智能弹性伸缩方法 | |
CN106569917B (zh) | 一种数据备份方法及移动移动终端 | |
CN102055644A (zh) | 分布式目录服务系统中负载管理的方法、装置和系统 | |
CN102457578A (zh) | 一种基于事件机制的分布式网络监控方法 | |
CN105068844A (zh) | 一种解决Android终端不开机的方法及装置 | |
CN103595566A (zh) | 一种检测空闲ip地址的方法及装置 | |
CN109144787A (zh) | 一种数据恢复方法、装置、设备及可读存储介质 | |
CN112035839B (zh) | 一种竞态条件漏洞利用的检测方法及装置 | |
CN113783913A (zh) | 一种消息推送管理方法和装置 | |
CN110888739A (zh) | 延迟任务的分布式处理方法与装置 | |
CN105264499B (zh) | 一种共享队列中的消息处理方法、装置及接收核 | |
CN113220554B (zh) | 检测程序代码的性能的方法和设备 | |
CN112988417B (zh) | 消息处理方法、装置、电子设备及计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100210 Termination date: 20171122 |