The invention relates to the technical fields of communication, operation and maintenance, process optimization and data transmission optimization. The embodiment of the application provides a method to improve the throughput of the business system based on the disruptor, including: obtaining the insurance data generated by the application program, extracting the key data in the insurance data, the key data including: insurance type, insurance period, insurance transaction deadline, beneficiary information The key data is encapsulated into the event type corresponding to the key data type by the disruptor, and the key data encapsulated into the event type is stored in the ring queue cache. It reduces the time for the server to acquire data, makes the server mainly use internal resources for data processing, improves the stability of data processing, avoids the server consuming more resources for data reading and writing, and improves the data throughput of the system server. Avoid repeatedly traversing the data in the cache, and improve the efficiency of data processing in the insurance system.
【技术实现步骤摘要】
基于disruptor提高业务系统吞吐量方法、装置及介质、服务器
本专利技术涉及通信、运维、过程优化、数据传输优化
,具体涉及一种基于disruptor提高业务系统吞吐量方法、装置及介质、服务器。
技术介绍
在大规模的数据处理中,为了实现高性能(低延迟、低资源耗用等)系统,如电子商务系统,金融交易系统等。工程师们设计多任务、多线程的架构。目前系统中是应用服务器直接操作数据库,当用户请求量比较大的时候(写数据的操作比较大),还会导致后台服务容易出现假死状态,进一步地导致用户响应时间长。在资源有限的情况下,为了避免资源争夺抢占,常常采用相应的锁,使得资源使用过程安全有序,然而该操作会降低系统的吞吐量,且在资源利用过程中,系统内的单个事件只能被一个消费者消费,导致无法实现系统内资源的共享。
技术实现思路
为克服以上技术问题,特别是目前用户请求量较大,采用锁导致系统吞吐量下降的问题,特提出以下技术方案:本专利技术实施例提供的一种基于disruptor提高业务系统吞吐量方法,包括:获取应用程序产生的保险数据,提取所述保险数据中的关键数据,所述关键数据包括:保险类型、保险期限、保险交易截止期限、受益人信息;基于所述关键数据类型的不同,通过disruptor将不同类型的所述关键数据封装成不同类型的事件类型;将封装成事件类型的所述关键数据存储在环形队列缓存中。可选地,所述基于所述关键数据类型的不同,通过disruptor将不同类型的所述关键数据封装成不同类型的 ...
【技术保护点】
1.一种基于disruptor提高业务系统吞吐量方法,其特征在于,包括:/n获取应用程序产生的保险数据,提取所述保险数据中的关键数据,所述关键数据包括:保险类型、保险期限、保险交易截止期限、受益人信息;/n基于所述关键数据类型的不同,通过disruptor将不同类型的所述关键数据封装成不同类型的事件类型;/n将封装成事件类型的所述关键数据存储在环形队列缓存中。/n
【技术特征摘要】
1.一种基于disruptor提高业务系统吞吐量方法,其特征在于,包括:
获取应用程序产生的保险数据,提取所述保险数据中的关键数据,所述关键数据包括:保险类型、保险期限、保险交易截止期限、受益人信息;
基于所述关键数据类型的不同,通过disruptor将不同类型的所述关键数据封装成不同类型的事件类型;
将封装成事件类型的所述关键数据存储在环形队列缓存中。
2.根据权利要求1所述的基于disruptor提高业务系统吞吐量方法,其特征在于,所述基于所述关键数据类型的不同,通过disruptor将不同类型的所述关键数据封装成不同类型的事件类型之前,包括:
获取所述保险数据中的保险单号,通过disruptor监听同一所述保险单号的所述关键数据。
3.根据权利要求2所述的基于disruptor提高业务系统吞吐量方法,其特征在于,所述将封装成事件类型的所述关键数据存储在环形队列缓存之后,包括:
依据预设事件类型与重要等级之间的关联关系,确定同一保险单号对应的不同重要等级的所述事件类型;
根据所述事件类型对应重要等级,对确认能直接发送到服务器的所述事件类型,将所述事件类型发送到服务器;
对确认不能直接发送到服务器的所述事件类型,将所述事件类型按照预设周期发送到服务器。
4.根据权利要求2所述的基于disruptor提高业务系统吞吐量方法,其特征在于,所述将封装成事件类型的所述关键数据存储在环形队列缓存,包括:
判断同一所述保险单号的所述事件类型是否完整,当所述事件类型不完整时,将当前缓存到所述环形队列缓存中的所述事件类型形成第一缓存事件类型;
监听同一所述保险单号的缓存到所述环形队列的第二缓存事件类型;
判断所述第一缓存事件类型和所述第二缓存事件类型构成的所述事件类型是否完整;
若完整,则将所述第一缓存事件类型和所述第二缓存事件类型构成的所述事件类型发送至服务器;若不完整,则重复监听同一所述保险单号的缓存到所述环形队列的第二缓存事件类型步骤。
5...
【专利技术属性】
技术研发人员:张健,
申请(专利权)人:中国平安人寿保险股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。