[发明专利]分布式异步事件的处理方法及系统有效
申请号: | 201310476116.8 | 申请日: | 2013-10-12 |
公开(公告)号: | CN103530255B | 公开(公告)日: | 2017-01-11 |
发明(设计)人: | 左文建;王东洋 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F13/38 | 分类号: | G06F13/38;G06F9/44 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙)11276 | 代理人: | 宋菲,刘云贵 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 异步 事件 处理 方法 系统 | ||
1.一种分布式异步事件的处理方法,包括:
以日志方式对每一应用服务器中的要处理的事件进行处理,为每个要处理的事件创建第一日志消息,并且传输第一日志消息,所述第一日志消息至少包括消息类别和消息内容;
将接收的所述第一日志消息存储到中心服务器中的消息队列中;
根据各个订阅服务器向所述中心服务器登记的要处理的消息的消息类别,将所述中心服务器的消息队列中的与所登记的消息类别相对应的消息分别传送至相应的订阅服务器;
所述订阅服务器对所述消息进行处理,并向所述中心服务器返回消息处理结果;以及
将接收的第一日志消息和消息处理结果进行对比,补偿处理失败或丢失的事件。
2.根据权利要求1所述的处理方法,其中,所述订阅服务器对所述消息进行处理,并向所述中心服务器返回消息处理结果,包括:
所述订阅服务器以日志方式对消息处理结果进行处理以生成第二日志消息,并将所述第二日志消息传输到所述中心服务器。
3.根据权利要求1或2所述的处理方法,其中,所述第一日志消息和所述第二日志消息包括下列中的一个或多个:事件生成的时间、生成事件的主机信息、事件类别、事件名、事件标识和事件内容。
4.根据权利要求1所述的处理方法,所述将接收的第一日志消息和消息处理结果进行对比,补偿处理失败或丢失的事件,包括:
从所述中心服务器读取N个时间单位内所接收的第一日志消息中包含的数据,N为正整数;
将读取到的所述数据存储在数据库中;
读取N+M个时间单位内订阅服务器返回的消息处理结果,并将消息处理结果与所述数据库中存储的数据进行对比,如果所述数据库中存在消息处理结果中未包含的事件,则将该事件记录为处理失败或丢失的事件,将所述事件进行处理以生成第一日志消息,并将第一日志消息存储到中心服务器中的消息队列中,其中,M为正整数。
5.根据权利要求4所述的处理方法,其中,所述时间单位为小时,M的值为1。
6.根据权利要求1或4或5所述的处理方法,其中,将所述第一日志消息存储到中心服务器中的消息队列中,包括:
从所述第一日志消息中提取出要处理的事件;
根据事件配置原则对与提取出的事件对应的第一日志消息进行打包和/或消重处理,然后存储到消息队列中。
7.根据权利要求6所述的处理方法,其中,所述对与提取出的事件对应的第一日志消息进行消重处理,包括:
将要处理的日志消息存储于第一缓存器;
查找所述第一缓存器中是否存储有第一日志消息,如果不存在,则将所述第一日志消息缓存于所述第一缓存器中,并输出至所述消息队列中,如果存在,则不将所述第一日志消息存储于所述第一缓存器中,也不将其传输至所述消息队列中;
其中,所述对与提取出的事件对应的第一日志消息进行打包处理,包括:缓存要处理的日志消息,当所缓存的要处理的日志消息数量达到预设的最大值后,将所缓存的日志消息合成一条日志消息,并输出到所述消息队列中。
8.根据权利要求7所述的处理方法,该方法还包括:
定时触发而清除所述第一缓存器中的数据;和/或
在缓存的日志消息数量没有达到所述预设的最大值的情况下,定时触发而将缓存的日志消息合成一条日志消息,并输出到所述消息队列中。
9.一种分布式异步事件的处理系统,包括:
一个或多个应用服务器,每个应用服务器适于以日志方式对要处理的事件进行处理,为每个要处理的事件创建第一日志消息,并且传输第一日志消息,所述第一日志消息至少包括消息类别和消息内容;
中心服务器,适于接收第一日志消息,将所述第一日志消息存储到所述中心服务器的消息队列中;接收来自每个订阅服务器的消息处理结果,将第一日志消息和消息处理结果进行对比,补偿处理失败或丢失的事件;以及
一个或多个订阅服务器,每个订阅服务器适于向所述中心服务器登记要处理的消息的消息类别,接收所述中心服务器所传输的、所述消息队列中与所登记的消息类别相对应的消息,对所述消息进行处理,并且向所述中心服务器返回消息处理结果。
10.根据权利要求9所述的处理系统,其中,所述一个或者多个应用服务器中的每个应用服务器包括:
事件生成器,适于以日志方式生成与要处理的事件相对应的第一日志消息;
第一日志传输单元,适于在所述事件生成器生成第一日志消息时,将所生成的第一日志消息传输至所述中心服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310476116.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种治疗不孕不育症的中药组合物
- 下一篇:真空冷冻干燥玫瑰花浆粉的制备方法