[发明专利]一种多线程事件分发方法和系统在审
| 申请号: | 201710295744.4 | 申请日: | 2017-04-28 | 
| 公开(公告)号: | CN107122239A | 公开(公告)日: | 2017-09-01 | 
| 发明(设计)人: | 方敏 | 申请(专利权)人: | 武汉票据交易中心有限公司 | 
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 | 
| 代理公司: | 北京轻创知识产权代理有限公司11212 | 代理人: | 杨立,朱毅 | 
| 地址: | 430074 湖北省武汉市东*** | 国省代码: | 湖北;42 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 一种 多线程 事件 分发 方法 系统 | ||
1.一种多线程事件分发方法,其特征在于,包括以下步骤:
步骤1、客户端向连接服务器发送客户端事件;
步骤2、所述连接服务器获取所述客户端事件,当所述客户端事件为远程调用类事件,且所述连接服务器中没有所述客户端事件对应的远程调用类处理器时,将所述客户端事件发送给消息服务器;
步骤3、当应用服务器从所述消息服务器中获取所述客户端事件,处理所述客户端事件并得到对应的服务器事件时,所述连接服务器获取所述服务器事件,并按照所述服务器事件的优先级顺序对所述服务器事件进行处理,并向客户端返回处理结果。
2.根据权利要求1所述的一种多线程事件分发方法,其特征在于,所述步骤3包括:
步骤3.1、当应用服务器从所述消息服务器中获取所述客户端事件,处理所述客户端事件并得到对应的服务器事件时,所述连接服务器中的缓存引擎从所述消息服务器中监听并获取所述服务器事件;
步骤3.2、根据预注册的服务器事件优先处理消息主题,所述缓存引擎将所述服务器事件存储到不同的优先级消息队列中,所述优先级消息队列包括低优先级消息队列、普通级消息队列和高优先级消息队列;
步骤3.3、缓存引擎依次对所述高优先级消息队列、所述普通级消息队列和所述低优先级消息队列中的所述服务器事件进行处理,并向所述连接服务器中的每个会话控制模型返回缓存引擎处理结果,其中,所述会话控制模型有多个,且与客户端一一对应;
步骤3.4、所述会话控制模型处理所述缓存引擎处理结果,并向客户端返回最终处理结果。
3.根据权利要求2所述的一种多线程事件分发方法,其特征在于,所述步骤3.3包括:
步骤3.3.1、缓存引擎中的高优先级事件线程从所述高优先级消息队列中依次取出高优先级服务器事件,并将所述高优先级服务器事件依次放入每个所述会话控制模型中的优先事件队列中,所述高优先级服务器事件为直接消息事件;
则所述步骤3.4包括:
步骤3.4.1、每个所述会话控制模型中的优先更新线程从所述优先事件队列中依次取出所述高优先级服务器事件,并将所有的所述高优先级服务器事件封装为直接事件处理器,并发送所述直接事件处理器至所述会话控制模型对应的客户端。
4.根据权利要求2所述的一种多线程事件分发方法,其特征在于,所述步骤3.3还包括:
步骤3.3.2、缓存引擎中的事件线程从所述普通级消息队列中依次取出普通级服务器事件,依次将所述普通级服务器事件存储到会话控制模型事件队列中;
步骤3.3.3、所述缓存引擎中的第一会话控制模型发送线程依次将所述普通级服务器事件从所述会话控制模型事件队列中取出,并依次将所述普通级服务器事件发送至每个会话控制模型;
则步骤3.4还包括:
步骤3.4.2、每个所述会话控制模型调用其内的事件处理方法依次将所述普通级服务器事件放入到所述会话控制模型中的事件队列中;
步骤3.4.3、所述会话控制模型中的第二会话控制模型发送线程依次将所述普通级服务器事件从所述事件队列中取出,并通知所述会话控制模型中所有的视图数据模型和直接事件处理器依次处理所述普通级服务器事件;
步骤3.4.4、所述直接事件处理器还将处理得到的第一处理结果依次放入到直接返回队列中,所述会话控制模型中的更新线程依次将所述第一处理结果从所述直接返回队列中取出并封装为直接类消息返回给客户端,所述视图数据模型还将处理得到的第二处理结果发送至客户端,所述第二处理结果为视图变更内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉票据交易中心有限公司,未经武汉票据交易中心有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710295744.4/1.html,转载请声明来源钻瓜专利网。





