一种分布式事件异步处理系统的制作方法

文档序号:35501690发布日期:2023-09-20 13:21阅读:27来源:国知局
一种分布式事件异步处理系统的制作方法

本发明涉及移动互联网、数据处理,更具体的说是涉及一种分布式事件异步处理系统。


背景技术:

1、目前,随着企业系统的复杂性日益增加,对数据集成和系统整合的需求也相应提高。尽管corba、dcom、rmi等rpc中间件技术应运而生,但由于采用rpc同步处理技术,这意味着发送者在向接收者发送消息后,必须等待接收者的响应。如果接收者处理速度较慢或者接收者发生故障,发送者可能会长时间地被阻塞,从而导致系统性能下降、健壮性降低和可扩展性限制。

2、系统集成的困难:尽管rpc技术可以实现不同系统之间的通信,但它们通常需要大量的配置和编程工作,这使得系统集成变得复杂和耗时。

3、并发处理的问题:在rpc同步处理模型中,通常很难有效地处理并发请求,因为发送者在等待接收者响应期间不能进行其他操作。

4、消息传递的限制:在同步处理模型中,消息只能直接从发送者传递给接收者。这种一对一的通信方式限制了消息的传播范围,而且无法实现发送者向多个接收者同时发送消息。

5、因此,如何提高系统的性能、健壮性和可扩展性,简化系统集成,处理并发请求,以及提高消息传递的效率和灵活性;是本领域技术人员亟需解决的问题。


技术实现思路

1、有鉴于此,本发明提供了一种分布式事件异步处理系统,可解决企业系统性能、健壮性、可扩展性限制问题;以及可解决系统集成困难、难以并发处理和消息传递限制的问题。

2、为了实现上述目的,本发明采用如下技术方案:

3、一种分布式事件异步处理系统,包括:

4、启停控制模块,用于控制系统的自动启停,以及用于所有模块的依赖注入;

5、生产者模块,用于负责系统的事件生产;

6、消费者模块,用于负责系统的事件消费;

7、调度中心模块,用于负责整个消费集群的注册发现,以及各个消费节点的消费事件分配;

8、监控模块,用于负责整个系统的监控和异常告警。

9、在一个实施例中,所述启停控制模块,其配置为通过spring提供的smartlifecycle机制扫描系统内所有的事件生产者和消费者信息,并将生产者和对应的消费者一一绑定后,向消费者模块注册,以及启动调度中心模块、监控模块和消费者模块。

10、在一个实施例中,所述消费者模块,具体用于为初始化所有事件队列信息,并创建一条主线程以轮询检查所有事件队列状态,以及创建一个线程池负责消费已就绪事件队列。

11、在一个实施例中,所述消费者模块,配置为支持同步消费和异步消费;其中,异步消费支持按事件id分片,同分片下顺序消费,不同分片并发消费;同分片下,同id严格的顺序消费。

12、在一个实施例中,所述消费者模块,还配置为支持单点消费和集群的多节点消费。

13、在一个实施例中,所述调度中心模块,具体配置为向redis发送心跳,注册当前消费节点信息,同时获取到分布式环境下其他消费节点信息,并通过一致性hash算法,获取当前消费节点负责消费的事件队列。

14、在一个实施例中,所述调度中心模块,还配置为将负责的事件队列状态修改为就绪状态,通知消费者模块开始消费,未分配的事件队列状态修改为待停止状态,通知消费者模块停止对其的消费行为。

15、在一个实施例中,所述监控模块,具体配置为周期性地检查所有事件队列中待消费的事件数量,高于阈值时,则发出告警。

16、经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种分布式事件异步处理系统,包括:启停控制模块,用于控制系统的自动启停,以及用于所有模块的依赖注入;生产者模块,用于负责系统的事件生产;消费者模块,用于负责系统的事件消费;调度中心模块,用于负责整个消费集群的注册发现,以及各个消费节点的消费事件分配;监控模块,用于负责整个系统的监控和异常告警。该分布式事件异步处理系统,具有性能高、可扩展、健壮性强、易于集成和使用、服务可用性高等优势。



技术特征:

1.一种分布式事件异步处理系统,其特征在于,包括:

2.根据权利要求1所述的一种分布式事件异步处理系统,其特征在于,所述启停控制模块,其配置为通过spring提供的smartlifecycle机制扫描系统内所有的事件生产者和消费者信息,并将生产者和对应的消费者一一绑定后,向消费者模块注册,以及启动调度中心模块、监控模块和消费者模块。

3.根据权利要求1所述的一种分布式事件异步处理系统,其特征在于,所述消费者模块,具体用于为初始化所有事件队列信息,并创建一条主线程以轮询检查所有事件队列状态,以及创建一个线程池负责消费已就绪事件队列。

4.根据权利要求2所述的一种分布式事件异步处理系统,其特征在于,所述消费者模块,配置为支持同步消费和异步消费;其中,异步消费支持按事件id分片,同分片下顺序消费,不同分片并发消费;同分片下,同id严格的顺序消费。

5.根据权利要求4所述的一种分布式事件异步处理系统,其特征在于,所述消费者模块,还配置为支持单点消费和集群的多节点消费。

6.根据权利要求5所述的一种分布式事件异步处理系统,其特征在于,所述调度中心模块,具体配置为向redis发送心跳,注册当前消费节点信息,同时获取到分布式环境下其他消费节点信息,并通过一致性hash算法,获取当前消费节点负责消费的事件队列。

7.根据权利要求6所述的一种分布式事件异步处理系统,其特征在于,所述调度中心模块,还配置为将负责的事件队列状态修改为就绪状态,通知消费者模块开始消费,未分配的事件队列状态修改为待停止状态,通知消费者模块停止对其的消费行为。

8.根据权利要求7所述的一种分布式事件异步处理系统,其特征在于,所述监控模块,具体配置为周期性地检查所有事件队列中待消费的事件数量,高于阈值时,则发出告警。


技术总结
本发明公开了一种分布式事件异步处理系统,包括:启停控制模块,用于控制系统的自动启停,以及用于所有模块的依赖注入;生产者模块,用于负责系统的事件生产;消费者模块,用于负责系统的事件消费;调度中心模块,用于负责整个消费集群的注册发现,以及各个消费节点的消费事件分配;监控模块,用于负责整个系统的监控和异常告警。该分布式事件异步处理系统,具有性能高、可扩展、健壮性强、易于集成和使用、服务可用性高等优势。

技术研发人员:孙建,杭建,郑亚腾,高铭骏
受保护的技术使用者:北京涌乐科技有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1