[发明专利]一种基于统一消息队列的拟态裁决器和裁决方法有效
申请号: | 201911016346.X | 申请日: | 2019-10-22 |
公开(公告)号: | CN110781012B | 公开(公告)日: | 2020-11-24 |
发明(设计)人: | 徐虹;郭义伟;吕青松;谈满堂;宋帅康;魏亚祥;冯超;白果 | 申请(专利权)人: | 河南信大网御科技有限公司;珠海高凌信息科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 郑州德勤知识产权代理有限公司 41128 | 代理人: | 张微微 |
地址: | 450000 河南省郑州市金水区*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 统一 消息 队列 拟态 裁决 方法 | ||
1.一种基于统一消息队列的拟态裁决器,其特征在于:包括n个执行体消息接收接口、n个统一消息队列、消息读取模块、序号裁决模块、字节裁决模块以及裁决结果输出模块,每个消息接收接口对应一个唯一的统一消息队列;
所述消息接收接口,用于接收异构执行体发送的执行体消息并送入对应的统一消息队列中,所述执行体消息的指定位置存储有消息序号;
所述消息读取模块,用于同时从n个统一消息队列中读取执行体消息,并获得执行体消息的消息序号;所述统一消息队列的数据读取方式为先入先出,且每次只有一个执行体消息被读取;
所述序号裁决模块,接收所述消息读取模块输出的消息序号并对获得的所有消息序号进行判决,若超过预设比例以上的消息序号是一致的,则认为裁决成功,获得裁决序号;
所述字节裁决模块,对所述消息读取模块读取出的执行体消息中消息序号等于裁决序号的所有执行体消息进行裁决,若超过预设比例以上的消息是一致的,则认为裁决成功,并通过所述裁决结果输出模块输出裁决结果。
2.一种拟态裁决方法,其特征在于,采用权利要求1所述的拟态裁决器完成如下裁决步骤:
准备过程
S1,获取异构执行体个数,创建个数与异构执行体个数相同的统一消息队列并进行初始化;
接收过程
S2,接收每个异构执行体发送的执行体消息并存入对应的统一消息队列中,所述执行体消息的指定位置存储有消息序号;
裁决过程
S3,依次同时读取所有统一消息队列中的执行体消息,并获得每个执行体消息的消息序号,其中,每个统一消息队列中每次只有一个执行体消息被读取;
S4,对获得的所有消息序号进行判决,若超过预设比例以上的消息序号是一致的,则认为裁决成功,获得裁决序号;
S5,对读取出的执行体消息中消息序号等于裁决序号的所有执行体消息进行裁决,若超过预设比例以上的消息是一致的,则认为裁决成功;
S6,将裁决结果下发,并返回执行步骤S3。
3.根据权利要求2所述的拟态裁决方法,其特征在于:S4中,若某个执行体消息的消息序号小于其他裁决序号,则从对应的统一消息队列中取出下一个执行体消息进行比对。
4.根据权利要求2所述的拟态裁决方法,其特征在于:S4中,若某个统一消息队列为空,且根据其他统一消息队列的执行体消息已获得裁决序号,则放弃等待该统一消息队列的执行体消息,并输出反馈结果。
5.根据权利要求4所述的拟态裁决方法,其特征在于,S5中具体包括:
步骤51,通过字节对比对读取出的执行体消息中消息序号等于裁决序号的所有执行体消息进行裁决,若裁决成功刚执行步骤6,若裁决失败则执行步骤52;
步骤52,检查S4中是否存在统一消息队列未收到执行体消息的情况,若有则等待相应执行体消息,若在预设时间阈值内接收到所述执行体消息,则重新进行步骤S4,若在预设时间阈值内未接收到所述执行体消息,则等待超时则确定判决结果为失败。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河南信大网御科技有限公司;珠海高凌信息科技股份有限公司,未经河南信大网御科技有限公司;珠海高凌信息科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911016346.X/1.html,转载请声明来源钻瓜专利网。