CN113051083A - 一种用于金融资产交易的高并发消息系统 - Google Patents
一种用于金融资产交易的高并发消息系统 Download PDFInfo
- Publication number
- CN113051083A CN113051083A CN201911377949.2A CN201911377949A CN113051083A CN 113051083 A CN113051083 A CN 113051083A CN 201911377949 A CN201911377949 A CN 201911377949A CN 113051083 A CN113051083 A CN 113051083A
- Authority
- CN
- China
- Prior art keywords
- message
- sending
- channel
- strategy
- sent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 63
- 230000007246 mechanism Effects 0.000 claims abstract description 14
- 238000007726 management method Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 34
- 238000012795 verification Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 21
- 230000001960 triggered effect Effects 0.000 claims description 12
- 238000012423 maintenance Methods 0.000 claims description 6
- 238000010200 validation analysis Methods 0.000 claims description 6
- 230000005856 abnormality Effects 0.000 claims description 3
- 238000002955 isolation Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于金融资产交易的高并发消息系统,包括:消息生成模块,用于从消息表中查询待发送消息,从数据库中获取待发送的汇总消息,并对消息进行解析、验证和拆分明细;内部管理模块,用于维护基础参数和数据字典,提供发送消息页面入口,提供消息发送查询入口;消息处理模块,用于从消息队列服务器中获取待发送消息明细,调用具体类型的消息发送接口进行消息发送,并且提供接口供内部第三方系统调用。本发明的消息系统基于消息队列服务器异步机制,支持高并发的消息发送,系统根据业务实际并发量对服务器进行横行扩展,可根据消息发送失败率动态切换消息通道,实现高效发送短信、站内信、邮件、APP Push和服务号等五种常用的消息类型。
Description
技术领域
本发明属于通信技术领域,具体涉及一种用于金融资产交易的高并发消息系统。
背景技术
随着互联网技术的发展,互联网金融也逐渐兴起,但同时面对安全性差、业务扩展能力不强,维护成本高以及在高并发的情况下的系统故障等问题。随着通信技术的不断发展和成熟,移动业务逐渐覆盖到各行各业的信息化应用中,在互联网金融中,通过通信技术提高了金融企业中业务平台和运营商之间的有效交互,进而提高了金融企业的业务效率。一般情况下,企业消息平台都有短信、服务号推送、站内信、APP推送、邮件等消息发送需求,企业就需要构建维护自己的消息信息业务系统。
随着移动通信业务中的消息信息业务日益普及,其业务量迅速发展,所以消息的应用系统必须在当前的硬件基础措施上,有效利用软件系统资源来推送消息信息业务,但在硬件基础措施一定的情况下,如何使用软件系统把大量的消息信息在最短的时间内推送到手机用户并和相关运营商完成信息交互成为消息信息应用实时性的关键。
应用消息信息业务系统的互联网分布式系统架构的设计中,必须要考虑的技术因素之一是如何实现高并发,高并发通常指通过设计,保证系统能够同时并行处理大量请求。高并发相关常用的指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。理论上,实现高并发的方法主要有两种:垂直扩展(Scale Up)与水平扩展(Scale Out)。垂直扩展是指提升单机处理的能力。垂直扩展的方式有两种:(1)增强单机硬件性能,例如:增加CPU核数、升级更好的网卡、升级更好的硬盘、扩充硬盘容量和扩充系统内存;(2)提升单机架构性能,例如:使用异步来增加单服务吞吐量。水平扩展是指,只增加服务器的数量,就能线性扩充系统的性能。高并发的设计在不同的企业中可根据实际应用场景提出不同的方案。
在实际短信发送场景的应用中,企业用户使用的手机号码归属各运营商的比重不一,在移动、电信和联通这几家运营商都有各企业的用户。同时,有的企业与消息服务运营商开通了全网通协议,有的仅开通了本网通协议。在这种情况下,企业消息平台需根据企业用户使用的手机号码类型的比重,对应选择与运营商消息对接的消息通道数、消息通道流量的比重。目前,有的企业的消息平台根据路由算法、消息通道压力、消息发送效率、消息通道流量、消息通道发送消息类型和消息通道服务协议,智能选择消息发送通道进行消息发送,从而提升消息平台处理性能及运维的自动化管理,但由于技术的限制,消息平台的通道切换的方案仍需根据实际应用场景不断完善。
发明内容
本发明基于上述背景和现有技术存在的问题,拟设计一种用于金融资产交易的高并发消息处理系统,其能够基于消息队列服务器(MQ)异步机制,支持异步处理高并发的消息发送。本发明还有一个目的是通过动态切换消息通道的方法,提高消息发送的效率,以便实现消息高并发。
为了实现本发明的这些目的和其它优点,提供了一种用于金融资产交易的高并发消息系统,其组成如下:
消息生成模块,其包含n个子系统,数量n根据需要设定,用于从消息表中查询待发送消息,以及从数据库中获取待发送的汇总消息,并对消息进行解析(解析是指对表中的一条消息记录进行处理,得出真实的消息内容)、验证和拆分明细后发送到消息队列服务器;
内部管理模块,其包含n个子系统,用于维护基础参数、数据字典(系统的配置参数)和MQ,提供发送消息的页面入口,提供消息发送的查询入口,内部管理模块内部配置消息通道,使用自定义签名和约定签名两种模式,根据消息业务类型选择对应模式的消息发送通道;
消息处理模块,其包含n个子系统,用于从MQ中获取待发送的消息明细情况,调用消息发送API(接口)进行消息发送,内部第三方消息需求系统调用API,在所述内部管理模块上获取待发送消息,并根据消息类型调用对应的消息API,发送消息;
其中,所述三大模块,都包括消息高并发处理系统,其采用异步处理MQ机制(消息系统接收第三方系统发送消息请求后,将请求记录存入数据库,然后给第三方系统回复接收成功的响应结果,然后再实际执行发送消息),用于高并发的消息发送,根据业务实际并发量对服务器进行横行扩展;包括消息队列服务器服务器,用于缓存待发送的消息;还包括消息通道切换系统,其用于对接多个消息通道,并根据消息发送失败率动态切换消息通道;所述消息通道切换系统还包括可达性验证机制,用于实现通道智能管理。
优选的是,其中,内部管理模块维护的基础参数包括:消息类型、模板、用户群组、黑名单等涉及维护过程的关键信息,MQ使用主从(Master-Slave)模式,当MQ性能不能满足要求时,通过增加MQ节点,部署集群(Cluster)模式解决性能问题;通过在内部管理子系统的页面上发送消息;消息生成模块实时查询待发送消息;消息处理模块实时从MQ中获取待发送的消息,并根据消息类型调用对应的消息API进行消息发送;消息生成模块和消息处理模块采用横向扩展模式,根据实际业务量部署节点。
进一步地,除了通过在内部管理模块的内部管理子系统的页面上发送消息,也可以通过系统提供的API进行联机发送,消息发送请求接收后,进行数据校验,然后存入数据库,后续的消息发送的过程为异步处理的过程,提高了第三方API调用的响应速度和系统整体的TPS(吞吐量);消息生成模块实时查询待发送消息:消息生成模块的消息生成子系统启动定时任务,实现实时从数据库中获取待发送的消息,对消息做解析后发送到MQ中。消息处理模块实时从MQ中获取待发送的消息:消息处理模块的消息处理子系统实时从数据库中获取消息,根据消息的类型选择对应的消息发送程序,进行消息发送,消息处理子系统根据并发情况进行横向扩展,部署满足业务量要求数量的节点。一般而言,消息消费的速度要小于消息接收的速度,所以,消息处理子系统的节点要多于消息生成子系统的节点。实现不同类型的消息处理,每种类型的消息使用同一个MQ,实现各种消息类型的隔离性与高可用性,避免了因个别类型的消息发送问题造成其他消息类型不可用的情况。消息生成子系统根据并发情况,进行横向扩展部署节点,这样既能保证高可用,避免单点问题,又提高了系统的性能。
进一步地,实现高并发处理消息的过程,包括如下步骤:
1.1实现消息发送异步:消息生成子系统实时从消息表中查询待发送消息,并将消息发送到MQ;
1.2 MQ接收待发送消息,并缓存待发送的消息;
1.3消息处理子系统实时从MQ中获取待发送消息,并根据消息类型调用对应消息API,进行消息发送;
1.4消息生产子系统和消息处理子系统支持横向扩展,根据实际业务量部署节点。
本发明实现动态切换消息通道的目的还可以进一步由配置相关策略来实现,配置的策略包括:配置预警策略,实现最近单元时间消息发送和定时消息发送;配置策略生效策略,用于将当前消息通道切换到另一个消息通道;配置定时或定频扫描策略,定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置(对应配置是指驱动策略,即当系统运行时触发了触发条件,会执行该策略配置的执行动作),完成消息通道动态切换。用通道动态切换的方法实现在金融资产交易的过程中,根据各消息通道的实际发送成功率动态调整切换策略,通过数据库和MQ实现异步消息发送。实现动态切换消息通道的实现方法包括:
2.1在内部管理模块中配置消息通道,消息通道的数量根据业务量设置;
2.2配置预警策略,用于最近单位时间消息发送和定时消息发送;
2.3配置消息通道切换策略,用于将当前消息通道切换到另一个消息通道;
2.4配置定时或定频策略,用于定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置的生效策略,完成消息通道动态切换;
2.5根据各消息通道的实际发送成功率,动态调整切换策略。
进一步地,所述消息通道切换系统中,根据配置动态切换消息发送的策略,消息发送策略由三部分组成:触发条件、执行策略和驱动策略。具体实现步骤如下:
3.1触发条件定义触发执行的具体方式,包括按单条消息发送失败、最近时间段消息发送失败率和过去消息数发送失败率三种消息触发条件,配置触发条件后,系统启动对应的程序进行处理,并判断当前的触发条件情况。其中,最近时间段消息发送失败率和最近具体条数消息发送失败率,用于配置最近时间段内的消息失败率的触发条件;
3.2执行策略,包括通知提醒、通过当前消息通道进行消息重发、通过切换通道进行消息重发和整体切换通道进行消息重发四种策略,用于及时发现消息通道异常并执行事先维护的驱动策略:
1)通知提醒策略,包括使用邮件、APP(应用端)进行消息推送,发送通知消息至提前维护端(提前维护端属于消息策略发送系统,实现系统的运维维护);
2)通过当前消息通道进行消息重发策略,用于使用消息当前的通道重发消息;
3)通过切换通道进行消息重发策略,用于切换另外一个消息通道进行消息重发;
4)整体切换通道进行消息重发策略,用于把当前的消息发送通道换至其他通道,后续使用此新通道发送消息。当消息通道出现严重问题时,再整体切换到其他通道进行消息重发。
3.3驱动策略连接了触发条件和执行策略,由触发条件、执行策略和优先级构成:当系统运行触发了触发条件时,执行该驱动策略配置的执行策略;系统扫描消息发送表使用定频和定时两种模式,然后计算消息发送失败率,判断是否达到触发条件;消息通道切换系统中配置m个驱动策略,每个策略对应一个优先级,当同一时刻触发m个触发条件时,根据配置执行优先级高的触发条件下的任务。
所述可达性验证机制用于消息通道切换系统中,动态实现切换消息通道的过程中的定时任务,包括步骤如下:
4.1消息处理模块预置三个通道的身份识别智能(SIM)卡,用于接收通过消息系统中的消息生成模块发出的验证消息;
4.2消息处理模块接收到验证消息后,将验证消息的属性(包括包括消息接收时间、接收方通道、发送方名称、消息内容等)发送给内部管理模块;
4.3内部管理模块根据此验证消息的属性,实时计算该通道的可达性,生成基础数据(基础参数),包括消息通道、接收方通道、消息是否可达判断和消息送达时间间隔;
4.4内部管理模块根据此基础数据计算消息通道的可用性评分,此评分就是消息可达性验证的结果。
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。本发明至少包括的有益效果:本发明的消息系统实现发送短信、站内信(系统内的消息)、邮件、APP Push(应用消息推送)和服务号等五种常用的信息类型,短信类型的消息采用自定义签名和约定签名两种模式,实现签名的灵活性。本发明的系统中的消息发送通过MQ实现异步消息发送,实现高并发的消息发送,根据业务实际并发量对服务器进行横行扩展,对接多个消息通道,通过接口调用和内部管理模块批量发送两种发送消息,可根据消息发送失败率动态切换消息通道,保证了系统的高可用和高性能。消息通道重发策略配置灵活能够及时发现消息通道异常并执行事先维护的具体策略,减少了由于某个消息通道异常造成的影响。
附图说明
图1为本发明的系统实现高并发消息处理的机制图;
图2为本发明实现高并发处理消息的流程图;
图3为本发明实现消息发送策略动态切换的原理图;
图4为本发明的可达性验证机制图。
具体实施方式
为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面将与附图结合,具体实施方式对本发明的技术加以详细说明,以令本领域技术人员参照说明书文字能够据以实施。
图1示出了本发明的系统实现高并发消息处理的机制图,示出了消息生成模块、内部管理模块和消息处理模块三大模块对于处理消息的协调交互的原理。一种用于金融资产交易的高并发消息处理系统,其组成如下:
消息生成模块,其包含n个子系统,数量n根据需要设定,用于从消息表中查询待发送消息,以及从数据库中获取待发送的汇总消息,并对消息进行解析、验证和拆分明细后发送到消息队列服务器;
内部管理模块,其包含n个子系统,用于维护基础参数、数据字典和MQ,提供发送消息的页面入口,提供消息发送的查询入口,内部管理模块内部配置消息通道,此消息通道的数量根据具体业务量配置。使用自定义签名和约定签名两种模式,根据消息业务类型选择对应模式的消息发送通道;
消息处理模块,其包含n个子系统,用于从MQ中获取待发送的消息明细情况,调用消息发送API(接口)进行消息发送,内部第三方消息需求系统调用API,在所述内部管理模块上获取待发送消息,并根据消息类型调用对应的消息API,发送消息;
其中,所述三大模块,都包括消息高并发处理系统,其采用异步处理MQ机制,用于高并发的消息发送,根据业务实际并发量对服务器进行横行扩展;包括消息队列服务器服务器,用于缓存待发送的消息;还包括切换消息通道系统,其用于对接多个消息通道,并根据消息发送失败率动态切换消息通道;所述消息通道切换系统还包括可达性验证机制,用于实现通道智能管理。
其中,内部管理模块维护的基础参数包括:消息类型、模板、用户群组、黑名单等涉及维护过程的关键信息,MQ使用主从(Master-Slave)模式,MQ可以缓存大量的消息,性能较高,例如当主MQ出现异常,从MQ自动接管,提供消息读写服务,可以保证高可用。当MQ性能不能满足要求时,通过增加MQ节点,部署集群(Cluster)模式解决性能问题;通过在内部管理子系统的页面上发送消息;消息生成模块实时查询待发送消息。消息处理模块实时从MQ中获取待发送的消息,并根据消息类型调用对应的消息API进行消息发送;消息生成模块和消息处理模块采用横向扩展模式,根据实际业务量部署节点。
除了通过在内部管理模块的内部管理子系统的页面上发送消息,也可以通过系统提供的接口进行联机发送,消息发送请求接收后,进行数据校验,然后存入数据库,后续的消息发送处理的过程为异步处理的过程,提高了第三方API调用的响应速度和系统整体的TPS;消息生成模块实时查询待发送消息:消息生成模块的消息生成子系统启动定时任务,实现实时从数据库中获取待发送的消息,对消息做解析后发送到MQ中。消息处理模块实时从MQ中获取待发送的消息:消息处理模块的消息处理子系统实时从数据库中获取消息,根据消息的类型选择对应的消息发送程序,进行消息发送,消息处理子系统根据并发情况进行横向扩展,部署满足业务量要求数量的节点,例如当业务量为m,则部署m个节点。一般而言,消息处理的速度要小于消息接收(获取)的速度,所以,消息处理子系统的节点要多于消息生成子系统的节点。实现不同类型的消息处理,每种类型的消息使用同一个队列,实现各种消息类型的隔离性与高可用性,避免了因个别类型的消息发送问题造成其他消息类型不可用。消息生成子系统根据并发情况可以进行横向扩展部署多个节点,这样既能保证高可用,避免单点问题,又提高了系统的性能。
2.图2为本发明实现高并发处理消息的过程,包括如下步骤:
1.1实现消息发送异步:消息生成子系统实时从消息表中查询待发送消息,并将消息发送到MQ;
1.2 MQ接收待发送消息,并缓存待发送的消息;
1.3消息处理子系统实时从MQ中获取待发送消息,并根据消息类型调用对应消息API,进行消息发送;
1.4 MQ能够缓存海量消息;
1.5消息生产子系统和消息发送子系统支持横向扩展,根据实际业务量部署节点。
3.图3为本发明实现消息通道动态切换的原理图,本发明实现动态切换消息通道的目的还可以进一步由配置相关策略的方法来实现,配置的策略包括:配置预警策略,实现最近单元时间消息发送,例如以最近1分钟、3分钟、10分钟为间隔,定时消息发送,例如以每1分钟、3分钟、10分钟为间隔;配置策略生效策略,用于将当前消息通道切换到另一个消息通道;配置定时或定频扫描策略,定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置(对应配置是指驱动策略,即当系统运行时触发了触发条件,会执行该策略配置的执行动作),进而完成消息通道动态切换。实现动态切换消息通道的实现方法或策略包括:
2.1在内部管理模块中配置多个消息通道,消息通道的数量根据业务量设置;
2.2配置预警策略,用于最近单位时间消息发送和定时消息发送;
2.3配置消息通道切换策略,用于将当前消息通道切换到另一个消息通道;
2.4配置定时或定频策略,用于定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置的生效策略,完成消息通道动态切换;
2.5根据各消息通道的实际发送成功率,动态调整切换策略。
其中,用通道动态切换的方法实现在金融资产交易的过程中,根据各消息通道的实际发送成功率动态调整切换策略,通过数据库和MQ实现异步消息发送。此系统根据配置进行动态切换消息发送策略,消息发送策略由三部分组成:触发条件、执行策略和驱动策略,具体实现动态切换消息发送策略的步骤如下:
3.1触发条件定义触发执行的具体方式,包括按单条消息发送失败、最近时间段消息发送失败率和过去消息数发送失败率三种消息触发条件,配置触发条件后,系统启动对应的程序进行处理,并判断当前触发条件的情况。其中,最近时间段消息发送失败率和最近具体条数消息发送失败率,用于配置最近一段时间内的消息失败率的触发条件;
3.2执行策略,包括通知提醒、通过当前消息通道进行消息重发、通过切换通道进行消息重发和整体切换通道进行消息重发四种策略,用于及时发现消息通道异常并执行事先维护的策略:
a)通知提醒策略,包括使用邮件、APP(应用端)进行消息推送,发送通知消息至提前维护端;
b)通过当前通道进行消息重发策略,用于使用消息当前的通道重发消息;
c)通过切换通道进行消息重发策略,用于切换另外一个消息通道进行重发;
d)整体切换通道进行消息重发策略,用于把当前的消息发送通道换至其他通道,后续使用此新通道发送消息。当消息通道出现严重问题时,整体切换到其他通道进行消息重发。
3.3驱动策略连接了触发条件和执行策略,由触发条件、执行策略和优先级构成:当系统运行触发了触发条件时,执行该驱动策略配置的执行策略;系统扫描消息发送表使用定频和定时两种模式,然后计算消息发送失败率,判断是否达到触发条件;消息通道切换系统中配置m个驱动策略,每个策略对应一个优先级,当同一时刻触发m个触发条件时,根据配置执行优先级高的触发条件下的任务。
4.图4为本发明的可达性验证机制用于消息通道切换系统中,实现动态切换消息通道的过程中的定时任务,采用这种方案具有实现信息通道智能管理的有利之处。其工作方式为:
4.1消息处理模块预置三个通道(例如移动运营商或者移动运营商的代理商提供消息发送技术通道)的SIM(身份识别智能卡)卡,用于接收通过消息系统中的消息生成模块发出的验证消息;
4.2消息处理模块接收到验证消息后,将验证消息的属性(例如消息接收时间、接收方通道、发送方名称、消息内容等)发送给内部管理模块系统;
4.3内部管理模块根据此验证消息的属性,实时计算该通道的可达性,生成基础数据(基础参数),包括消息通道、接收方通道、消息是否可达和消息送达时间间隔;
4.4内部管理模块根据此基础数据计算消息通道的可用性评分,此评分就是消息可达性验证的结果。
这里说明的模块数量和处理规模是用来简化本发明的说明的。对本发明的信息处理系统的应用、修改和变化对本领域的技术人员来说是显而易见的。
如上所述,根据本发明,由于应用高并发的消息处理系统,并且配置可达性验证机制于消息通道切换系统中,实现动态切换消息通道,因此具有消息通道智能和高效管理的效果。
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。
Claims (7)
1.一种用于金融资产交易的高并发消息系统,其特征在于,包括:
消息生成模块,其包含n个子系统,数量n根据需要设定,用于从消息表中查询待发送消息,以及从数据库中获取待发送的汇总消息,并对消息进行解析、验证和拆分明细后发送到消息队列服务器;
内部管理模块,其包含n个子系统,用于维护基础参数和数据字典,提供发送消息的页面入口,提供消息发送的查询入口,内部管理模块内部配置消息通道,使用自定义签名和约定签名两种模式,根据消息业务类型选择对应模式的消息发送通道;
消息处理模块,其包含n个子系统,用于从消息队列服务器中获取待发送的消息明细情况,调用消息发送接口进行消息发送,内部第三方消息需求系统调用接口,在所述内部管理模块上获取待发送消息,并根据消息类型调用对应的消息接口,发送消息;
其中,所述三大模块,都包括消息高并发处理系统,其采用异步处理消息队列服务器机制,用于高并发的消息发送,根据业务实际并发量对服务器进行横行扩展;包括消息队列服务器服务器,用于缓存待发送的消息;还包括消息通道切换系统,其用于对接多个消息通道,并根据消息发送失败率动态切换消息通道;所述消息通道切换系统还包括可达性验证机制,用于实现通道智能管理。
2.根据权利要求1所述的用于金融资产交易的高并发消息系统,其特征在于,其内部管理模块维护的基础参数包括:消息类型、模板、用户群组、黑名单等涉及维护过程的关键信息;消息队列服务器使用主从模式,当消息队列服务器性能不能满足要求时,通过增加消息队列服务器节点,部署集群模式恢复解决性能问题;通过在内部管理子系统的页面上发送消息;消息生成模块实时查询待发送消息;消息处理模块实时从消息队列服务器中获取待发送的消息,并根据消息类型调用对应的消息接口进行消息发送;消息生成模块和消息处理模块采用横向扩展模式,根据实际业务量部署节点。
3.根据权利要求2所述的用于金融资产交易的高并发消息系统,其特征在于,除了通过在内部管理模块的内部管理子系统的页面上发送消息,也可以通过系统提供的接口进行联机发送,消息发送请求接收后进行数据校验,然后存入数据库,后续的消息发送的过程为异步处理的过程;消息生成模块实时查询待发送消息:消息生成模块的消息生成子系统启动定时任务,实现实时从数据库中获取待发送消息,对消息做解析后发送到消息队列服务器中;消息处理模块实时从消息队列服务器中获取待发送的消息:消息处理模块的消息处理子系统实时从数据库中获取消息,根据消息的类型选择对应的消息发送程序,进行消息发送,消息处理子系统根据并发情况进行横向扩展,部署满足业务量要求数量的节点;每种类型的消息使用同一个消息队列服务器,实现各种消息类型的隔离性与高可用性。
4.根据权利要求1所述用于金融资产交易的高并发消息系统,其特征在于,实现高并发处理消息的过程,包括如下步骤:
1.1实现消息发送异步:消息生成子系统实时从消息表中查询待发送消息,并将消息发送到消息队列服务器;
1.2消息队列服务器接收待发送消息,缓存待发送的消息;
1.3消息处理子系统实时从消息队列服务器中获取待发送消息,并根据消息类型调用对应消息接口,进行消息发送;
1.4消息生成子系统和消息处理子系统支持横向扩展,根据实际业务量部署节点。
5.根据权利要求1所述用于金融资产交易的高并发消息系统,其特征在于,所述消息通道切换系统中,实现通道动态切换的方法还包括配置相关策略:配置预警策略,实现最近单元时间消息发送和定时消息发送;配置策略生效策略,用于将当前消息通道切换到另一个消息通道;配置定时或定频扫描策略,定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置,完成消息通道动态切换;用通道动态切换的方法实现在金融资产交易的过程中,根据各消息通道的实际发送成功率动态调整切换策略,通过数据库和消息队列服务器实现异步消息发送。实现动态切换消息通道的实现方法包括:
2.1在内部管理子系统中配置多个消息通道,消息通道的数量根据业务量设置;
2.2配置预警策略,用于最近单位时间消息发送和定时消息发送;
2.3配置消息通道切换策略,用于将当前消息通道切换到另一个消息通道;
2.4配置定时或定频策略,用于定时或定频扫描消息发送记录,当触发特定预警策略时,执行对应配置的生效策略,完成消息通道动态切换;
2.5根据各消息通道的实际发送成功率,动态调整切换策略。
6.根据权利要求1或5所述的用于金融资产交易的高并发消息系统,其特征在于,所述消息通道切换系统中,根据配置动态切换消息发送策略,消息发送策略由三部分组成:触发条件、执行策略和驱动策略;具体实现步骤如下:
3.1触发条件定义触发执行的具体方式,包括按单条消息发送失败、最近时间段消息发送失败率和过去消息发送失败率三种消息触发条件,配置触发条件后,系统可启动对应的程序对消息进行处理,并判断当前的触发条件的情况;其中,最近时间段消息发送失败率和最近具体条数消息发送失败率,用于配置最近时间段内的消息失败率的触发条件;
3.2执行策略,包括通知提醒、通过当前消息通道进行消息重发、通过切换通道进行消息重发和整体切换通道进行消息重发四种策略,用于及时发现消息通道异常并执行事先维护的策略:
1)通知提醒策略,包括使用邮件、应用端进行消息推送,发送通知消息至提前维护端;
2)通过当前消息通道进行消息重发策略,用于根据消息所在的当前通道重发消息;
3)通过切换通道进行消息重发策略,用于切换其他消息通道进行消息重发;
4)整体切换通道进行消息重发策略,用于把当前的消息发送通道换至其他通道,后续使用此新通道发送消息;当消息通道出现严重问题时,再整体切换到其他通道进行消息重发。
3.3驱动策略,由触发条件、执行策略和优先级构成:当系统运行时触发了触发条件,执行该驱动策略配置的执行策略;系统扫描消息发送表使用定频和定时两种模式,然后计算消息发送失败率,判断是否达到触发条件;消息通道切换你系统配置m个驱动策略,每个策略对应一个优先级,当同一时刻触发m个触发条件时,根据配置执行优先级高的触发条件下的任务。
7.根据权利要求1所述用于金融资产交易的高并发消息系统,其特征在于,所述可达性验证机制用于消息通道切换系统中,实现动态切换消息通道的过程中的定时任务,包括步骤如下:
4.1消息处理模块预置三个通道的身份识别智能卡,用于接收通过消息系统中的消息生成模块发出的验证消息;
4.2消息处理模块接收到验证消息后,将验证消息的属性发送给内部管理模块;
4.3内部管理模块根据此验证消息的属性,实时计算该通道的可达性,生成基础参数,包括消息通道、接收方通道、消息是否可达判断和消息送达时间间隔;
4.4内部管理模块根据此基础数据计算消息通道的可用性评分,此评分就是消息可达性验证的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377949.2A CN113051083A (zh) | 2019-12-27 | 2019-12-27 | 一种用于金融资产交易的高并发消息系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377949.2A CN113051083A (zh) | 2019-12-27 | 2019-12-27 | 一种用于金融资产交易的高并发消息系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113051083A true CN113051083A (zh) | 2021-06-29 |
Family
ID=76506598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911377949.2A Pending CN113051083A (zh) | 2019-12-27 | 2019-12-27 | 一种用于金融资产交易的高并发消息系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113051083A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150264412A1 (en) * | 2012-10-18 | 2015-09-17 | Zte Corporation | Fusion device, system and method for implementing internet protocol television service |
US20150365358A1 (en) * | 2014-03-28 | 2015-12-17 | Futurewei Technologies, Inc. | Context-Aware Dynamic Policy Selection for Messaging Behavior |
CN108076098A (zh) * | 2016-11-16 | 2018-05-25 | 北京京东尚科信息技术有限公司 | 一种业务处理方法及系统 |
-
2019
- 2019-12-27 CN CN201911377949.2A patent/CN113051083A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150264412A1 (en) * | 2012-10-18 | 2015-09-17 | Zte Corporation | Fusion device, system and method for implementing internet protocol television service |
US20150365358A1 (en) * | 2014-03-28 | 2015-12-17 | Futurewei Technologies, Inc. | Context-Aware Dynamic Policy Selection for Messaging Behavior |
CN108076098A (zh) * | 2016-11-16 | 2018-05-25 | 北京京东尚科信息技术有限公司 | 一种业务处理方法及系统 |
Non-Patent Citations (1)
Title |
---|
杨云松;庞添尹;: "基于有线电视网络的智能消息发布系统建设", 中国有线电视, no. 04 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102915374A (zh) | 一种控制数据库资源访问的方法、装置及系统 | |
CN109361525B (zh) | 重启分布式部署多服务的方法、装置、控制终端及介质 | |
CN101207522B (zh) | 一种实现配置任务调度的方法和设备 | |
CN101848107B (zh) | Snmp网元及snmp网元与私有协议网元通信的方法 | |
CN101383839A (zh) | 基于数据服务器的数据分发系统及其实现方法 | |
CN106603711B (zh) | 通信方法、系统及消息服务器 | |
US20220166842A1 (en) | Data distribution method and electronic device | |
US10268532B2 (en) | Application message processing system, method, and application device | |
WO2017036238A1 (zh) | 一种业务节点的调整方法、装置及设备 | |
CN113051083A (zh) | 一种用于金融资产交易的高并发消息系统 | |
CN112671636B (zh) | 群组消息推送方法、装置、计算机设备和存储介质 | |
CN113596105B (zh) | 内容的获取方法、边缘节点及计算机可读存储介质 | |
CN115664992A (zh) | 网络运行数据的处理方法、装置、电子设备及介质 | |
CN108781215B (zh) | 网络服务实现方法、服务控制器及通信系统 | |
WO2017193798A1 (zh) | 一种垃圾信息监控方法、装置及通信系统 | |
CN105912477B (zh) | 一种目录读取的方法、装置及系统 | |
CN110134547B (zh) | 一种基于中间件的重复数据删除方法和相关装置 | |
CN112671883A (zh) | 多功能消息通知系统设计方法 | |
CN106407194A (zh) | 一种信息查询方法及装置 | |
CN105025449B (zh) | 一种短消息接收状态重置方法、装置及系统 | |
CN113315875B (zh) | 通话信息同步方法、装置、通话信息同步设备和存储介质 | |
CN113301136B (zh) | 业务请求处理方法及装置 | |
CN111371573B (zh) | 消息交互方法及装置 | |
CN117811833B (zh) | 一种基于发布订阅模式的网络密码机统一管理系统及方法 | |
CN112953856B (zh) | 通信设备及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Jiang Jingmin Inventor after: Ying Ji Inventor after: Yan Daqiang Inventor before: Jiang Jingmin Inventor before: Zhang Peng Inventor before: Ying Ji Inventor before: Yan Daqiang |