CN116627681B - 业务请求处理方法、装置、计算机设备、介质和程序产品 - Google Patents
业务请求处理方法、装置、计算机设备、介质和程序产品 Download PDFInfo
- Publication number
- CN116627681B CN116627681B CN202310912686.0A CN202310912686A CN116627681B CN 116627681 B CN116627681 B CN 116627681B CN 202310912686 A CN202310912686 A CN 202310912686A CN 116627681 B CN116627681 B CN 116627681B
- Authority
- CN
- China
- Prior art keywords
- service
- request
- service processing
- module
- processing
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 309
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000004590 computer program Methods 0.000 claims abstract description 40
- 230000008569 process Effects 0.000 claims description 19
- 238000011084 recovery Methods 0.000 claims description 8
- 238000007726 management method Methods 0.000 description 46
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
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/547—Remote procedure calls [RPC]; Web services
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种业务请求处理方法、装置、计算机设备、存储介质和计算机程序产品。该方法包括:通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求;通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及所述业务数据生成业务处理任务,所述业务处理任务用于微服务模块处理,其中所述请求接收模块、所述管理模块以及所述微服务模块是独立部署和更新的。采用本方法能够不停机进行微服务部署。
Description
技术领域
本申请涉及业务处理技术领域,特别是涉及一种业务请求处理方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
在企业信息化建设中,系统会频繁出现因业务功能上线或系统的缺陷修复而进行系统的停机更新。但系统又对接了关键业务功能导致不能长时间停机更新服务,为降低给用户带来的影响必须在凌晨流量少的时候去做停机更新操作。或者是通过对系统的业务功能拆分,创建多个可独立更新且底层服务依赖少的模块达到不停机更新服务。
然而,目前的微服务框架下,只是做到了功能的解耦。服务之间还是会有存在相互调用的情况,并不满足服务可停机独立部署,依旧会对业务操作依旧会产生影响。
发明内容
基于此,有必要针对上述技术问题,提供一种能够不停机进行微服务部署的业务请求处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供一种业务请求处理方法,所述方法包括:
通过请求接收模块接收业务接口调用请求,所述业务接口调用请求是在业务接口接收到业务处理请求时生成的,且所述业务接口调用请求携带有所述业务处理请求;
通过所述请求接收模块将所述业务处理请求发送至消息队列中,并将所述业务处理请求对应的业务数据存储至存储对象;
通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,所述业务处理任务用于微服务模块处理,其中所述请求接收模块、所述管理模块以及所述微服务模块是独立部署和更新的。
在其中一个实施例中,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障的信息时,将所述业务处理请求发送至内存队列。
在其中一个实施例中,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障恢复的信息时,从内存队列获取到所述业务处理请求,并将所述业务处理请求存储至所述消息队列中。
在其中一个实施例中,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障的信息时,生成告警信息,并将所述告警信息发送至对应的用户终端。
在其中一个实施例中,所述将所述业务处理请求对应的业务数据存储至存储对象之后,还包括:
获取所述业务数据的存储路径,将所述存储路径存储至所述消息队列中;
所述通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,包括:
通过管理模块从所述消息队列中获取到业务处理请求,并根据所述存储路径从所述存储对象中获取到对应的业务数据。
在其中一个实施例中,所述基于所述业务处理请求以及所述业务数据生成业务处理任务之后,包括:
接收微服务模块的任务处理请求;
基于所述任务处理请求获取到对应的业务处理任务,并将所述业务处理任务发送至对应的微服务模块,以使得所述微服务模块处理所述业务处理任务。
第二方面,本申请还提供一种业务请求处理装置,所述装置包括:
接收模块,用于通过请求接收模块接收业务接口调用请求,所述业务接口调用请求是在业务接口接收到业务处理请求时生成的,且所述业务接口调用请求携带有所述业务处理请求;
存储模块,用于通过所述请求接收模块将所述业务处理请求发送至消息队列中,并将所述业务处理请求对应的业务数据存储至存储对象;
业务处理模块,用于通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,所述业务处理任务用于微服务模块处理,其中所述请求接收模块、所述管理模块以及所述微服务模块是独立部署和更新的。
第三方面,本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的任意一个实施例中的方法的步骤。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
第五方面,本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
上述业务请求处理方法、装置、计算机设备、存储介质和计算机程序产品,所有的业务处理请求均转发至请求接收模块,这样即使后续微服务更新等,也不会影响请求接收模块,后续请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象,从而管理模块可以从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,这样待微服务更新完成后,即可以处理业务处理任务,请求接收模块、管理模块以及微服务模块都是独立部署和更新的,互不影响,系统停机或更新对用户无感知。
附图说明
图1为一个实施例中业务请求处理方法的应用环境图;
图2为一个实施例中业务请求处理方法的流程示意图;
图3为一个实施例中业务请求处理方法的系统架构图;
图4为一个实施例中业务请求处理装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的业务请求处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
其中,终端102可以发送业务处理请求至服务器104,从而服务器104可以调用各个微服务模块进行业务处理请求的处理。为此本申请在服务器104中引入了请求接收模块以及管理模块,其中终端102发送的业务处理请求由对应的业务接口接收,并在业务接口接收到业务处理请求后,调用请求接收模块,请求接收模块接收业务接口调用请求通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务模块处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
上述业务请求处理方法,所有的业务处理请求均转发至请求接收模块,这样即使后续微服务更新等,也不会影响请求接收模块,后续请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象,从而管理模块可以从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,这样待微服务更新完成后,即可以处理业务处理任务,请求接收模块、管理模块以及微服务模块都是独立部署和更新的,互不影响,系统停机或更新对用户无感知。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种业务请求处理方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
S202:通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求。
业务处理请求是终端发送至服务器的,例如发送至服务器的对应的业务接口的。其中服务器中可以包括多个业务接口,例如不同类型的业务对应不同的业务接口,从而通过不同的业务接口接收终端发送的业务处理请求。其中业务处理请求可以包括业务处理标识以及业务数据,其中业务处理标识用于唯一的表征该业务处理请求,例如可以通过终端标识、用户标识以及业务类型等等来生成业务处理标识,业务数据则是对应待处理的数据,例如视频等等。
业务接口调用请求是业务接口接收到业务处理请求后调用请求接收模块产生的,其中所有的业务接口最后都统一调用请求接收模块,可选地,请求接收模块可以包括多个线程,从而不同的线程由不同的业务接口调用,以避免所有的业务都被一个线程调用,造成业务堵塞。
在实际应用中,终端发送业务处理请求至对应的业务接口,业务接口接收到该业务处理请求后,则调用请求接收模块对应的线程,从而由对应的线程来处理该业务处理请求。
S204:通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象。
消息队列可以是指MQ队列,其中消息队列可以包括多个,不同的业务类型对应不同的消息队列,在该实施例中,请求接收模块将业务处理请求按照时间顺序依次存入对应的消息队列中,可选地,当业务处理请求存在优先级时,则根据优先级将业务处理请求存储至对应的消息队列中,也就是说优先级的处理层级高于时间顺序的处理层级。需要说明的一点是,消息队列中存储的是业务处理请求的业务处理标识,而对于业务数据则存储至对应的存储对象中,例如OSS中,或者是存储至数据库中,或者是存储至缓存中,以便于后续的调用。
其中消息队列可能会进行更新,但由于消息队列与请求接收模块是独立部署的,因此其并不会影响请求接收模块接收业务处理请求。此外,可选地,当消息队列进行更新时,请求接收模块可以将接收的业务处理请求存储至内存队列中,以避免消息队列更新造成的影响。
实际应用中,请求接收模块的对应的线程与对应的消息队列对应,例如一个线程对应一个消息队列,或者是多个线程对应一个消息队列,或者是一个线程对应多个消息队列,其中对应关系可以是根据业务处理请求的类型以及业务处理请求的数量来确定,这样可以保证处理的效率。请求接收模块的对应的线程将业务处理请求存储至对应的消息队列,并将对应的业务数据存储至存储对象中。
S206:通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务模块处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
管理模块是用于生成业务处理任务的,其中管理模块可以监听消息队列的消息,当消息队里中存在业务处理请求时,则从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,以便于后续微服务的处理。
其中微服务的处理可以是基于负载均衡的,其中负载均衡模块可以基于管理模块生成的业务处理任务进行负载均衡,以将对应的业务处理任务分配至对应的微服务模块,从而微服务模块对分配的业务处理任务进行处理,并将处理结果反馈至请求接收模块,例如反馈至请求接收模块的内存队列中。
其中请求接收模块、管理模块以及微服务模块是独立部署和更新的,这样当微服务模块进行更新或者宕机时,不会影响请求接收模块、管理模块的工作,请求接收模块、管理模块依旧正常接收业务处理请求,从而在微服务模块恢复正常后再对业务处理任务进行处理,这样的方式对于终端的用户是无感的。
上述业务请求处理方法,所有的业务处理请求均转发至请求接收模块,这样即使后续微服务更新等,也不会影响请求接收模块,后续请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象,从而管理模块可以从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,这样待微服务更新完成后,即可以处理业务处理任务,请求接收模块、管理模块以及微服务模块都是独立部署和更新的,互不影响,系统停机或更新对用户无感知。
在其中一个实施例中,上述业务处理方法还包括:当请求接收模块接收到消息队列故障的信息时,将业务处理请求发送至内存队列。
具体地,消息队列故障,这样请求接收模块则无法将接收到的业务处理请求发送至消息队列,从而导致业务处理缓慢,虽然终端用户无感,但是当大量的业务处理请求堆积在消息队列时,则会导致请求处理模块故障,为此,当消息队列故障时,请求处理模块将业务处理请求发送至内存队列中存储。这样请求处理模块可以通知管理模块,从而管理模块从内存队列中读取业务处理请求以生成业务处理任务,若是管理模块也故障,则请求处理模块可以通知微服务模块,从而微服务模块可以直接从内存队列中读取业务处理请求进行处理,这样也保证了业务处理请求的处理效率。
在其中一个实施例中,上述业务处理方法还包括:当请求接收模块接收到消息队列故障恢复的信息时,从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中。
其中,由于在消息队列故障时,业务处理请求被存储至内存队列中,为此当消息队列故障恢复时,则从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中,具体地,请求处理模块可以开辟一故障处理线程,在该线程中可以从内存队列中读取业务处理请求,并基于业务处理请求的类型将各个业务处理请求存储至对应的消息队列中,可选地先根据业务处理请求的优先级进行存储,后续根据业务处理请求的时间先后顺序来进行存储,这样保证了在中间件故障时的业务处理请求并不会丢失,在中间件故障恢复后,全部都存储至中间件中,保证了业务处理的完整性。且由于引入内存队列,对系统问题的排查增加了时间、对系统的故障排查减少了中间件的因素。
在其中一个实施例中,上述业务处理方法还包括:当请求接收模块接收到消息队列故障的信息时,生成告警信息,并将告警信息发送至对应的用户终端。
具体地,服务配置邮件接收人,当服务接收到MQ连接阻塞事件(ConnectionBlockedEvent)时。系统将发送一封告警邮件到配置的人员邮箱中。提醒处理人员系统出现故障,及时处理。
上述实施例中告警机制让系统维护人员对系统故障能及时响应处理。
在其中一个实施例中,将业务处理请求对应的业务数据存储至存储对象之后,还包括:获取业务数据的存储路径,将存储路径存储至消息队列中;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,包括:通过管理模块从消息队列中获取到业务处理请求,并根据存储路径从存储对象中获取到对应的业务数据。
具体地,结合图3所示,图3为一个实施例中的业务处理方法的系统架构图,在该实施例中服务器被划分为请求处理模块、管理模块、消息队列、存储对象以及微服务模块,其中可选地,还可以包括负载均衡模块。
其中请求处理模块用于接收各个业务接口的调用,以将业务处理请求存储至对应的消息队列中,将业务数据存储至对应的存储对象中例如oss中,若是消息队列故障,则将业务处理请求存储至内存队列中,其中请求处理模块还获取业务数据的存储路径,将存储路径存储至消息队列中。这样管理模块监听消息队列中的消息,若是监听到存在新的业务处理请求,则拉取存储对象中存储的业务数据,并生成业务处理任务,从而微服务模块可以处理该业务处理任务。
在其中一个实施例中,基于业务处理请求以及业务数据生成业务处理任务之后,包括:接收微服务模块的任务处理请求;基于任务处理请求获取到对应的业务处理任务,并将业务处理任务发送至对应的微服务模块,以使得微服务模块处理业务处理任务。
具体地,其中负载均衡模块用于提供加解密服务以及进行业务处理任务的分配,当微服务模块更新完成后,则获取到任务处理任务,并进行任务处理。如图3中的生成视频的服务,其中微服务模块分布式调用以获取到业务处理任务,并生成视频存储至数据库中,并告知请求处理模块任务处理完成,从而请求处理模块可以根据任务处理完成的消息去数据库中读取到任务处理结果,并通过对应的业务接口发送至终端。
在实际应用中,以可回溯系统为例进行说明,可回溯系统现有服务为单体服务,所有功能都集中在一个服务上。当系统更新或者中间件更新时需要进行服务停机,但可回溯系统为互联网应用且有些投保业务对该系统进行了强依赖,所以当系统停机时会对互联网用户产生不可投保的情况。针对此种情况,本实施例中针对可回溯系统的业务进行分析,对前端SDK所有使用的接口进行模块独立拆分。可回溯SDK依赖于后端两个接口(录制接口,增加操作打点接口),所以拆分出optrace-facade模块。optrace-facade模块只提供可回溯SDK的接口调用。其他系统功能再进一步拆分出模块。
optrace-facade模块(对应于请求处理模块)接收可回溯SDK的接口(录制接口或打点操作)调用。该服务处理可回溯SDK请求并组装MQ消息发送到MQ中。同时该服务上传可回溯SDK传输的视频资源信息到oss存储中,并把OSS存放路径一起存入MQ消息中。
optrace-admin模块(对应于管理模块)负责监听MQ消息。当服务监听到到消息时,服务拉取OSS中存放的资源进行分析和转储。同时该模块提供前端后管中的接口调用。其他模块为系统的扩展功能。主要对系统的特有功能进行处理。
其中optrace-facade模块服务配置邮件接收人,当服务接收到MQ连接阻塞事件(ConnectionBlockedEvent)时。系统将发送一封告警邮件到配置的人员邮箱中。提醒处理人员系统出现故障,及时处理。
此外optrace-facade模块通过对业务接口的分析,optrace-facade模块去除对数据库的依赖以此来减少数据库故障时对服务的影响。
第三,optrace-facade模块的服务增加DISRUPTER高速内存队列的使用。当optrace-facade模块的服务接收到MQ连接阻塞事件(ConnectionBlockedEvent)时,optrace-facade模块的服务发送消息自动切换为使用DISRUPTER来保存前端SDK请求的消息。当optrace-facade模块的服务接收到接触阻塞事件(ConnectionUnblocked)故障恢复后,系统自动切换为使用MQ发送消息,定时任务将处理存放在DISRUPTER内存队列中的消息发送到MQ中。通过该方式以此来增加故障排查时间,减少服务故障对业务产生的影响。
通过以上方式,当系统更新或者中间件更新时只需对optrace-admin模块进行停机更新应用。拆分后的optrace-facade模块无需进行停机。系统依然可以接收互联网用户的访问请求达到系统更新不停机的目的对互联网用户的访问无感知。系统增加的告警机制和容错率对系统的可维护性得到提高和对系统的故障能及时响应处理。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的业务请求处理方法的业务请求处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个业务请求处理装置实施例中的具体限定可以参见上文中对于业务请求处理方法的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种业务请求处理装置,包括:接收模块401、存储模块402和业务处理模块403,其中:
接收模块401,用于通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求;
存储模块402,用于通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;
业务处理模块403,用于通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
在其中一个实施例中,上述业务请求处理装置还可以包括:
发送模块,用于当请求接收模块接收到消息队列故障的信息时,将业务处理请求发送至内存队列。
在其中一个实施例中,上述业务请求处理装置还可以包括:
转存模块,用于当请求接收模块接收到消息队列故障恢复的信息时,从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中。
在其中一个实施例中,上述业务请求处理装置还可以包括:
告警模块,用于当请求接收模块接收到消息队列故障的信息时,生成告警信息,并将告警信息发送至对应的用户终端。
在其中一个实施例中,上述存储模块402还用于获取业务数据的存储路径,将存储路径存储至消息队列中;
上述转存模块还用于通过管理模块从消息队列中获取到业务处理请求,并根据存储路径从存储对象中获取到对应的业务数据。
在其中一个实施例中,上述业务请求处理装置还可以包括:
微服务调用模块,用于接收微服务模块的任务处理请求;基于任务处理请求获取到对应的业务处理任务,并将业务处理任务发送至对应的微服务模块,以使得微服务模块处理业务处理任务。
上述业务请求处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储业务数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种业务请求处理方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求;通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务模块处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,将业务处理请求发送至内存队列。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当请求接收模块接收到消息队列故障恢复的信息时,从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,生成告警信息,并将告警信息发送至对应的用户终端。
在一个实施例中,处理器执行计算机程序时所实现的将业务处理请求对应的业务数据存储至存储对象之后,还包括:获取业务数据的存储路径,将存储路径存储至消息队列中;处理器执行计算机程序时所实现的通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,包括:通过管理模块从消息队列中获取到业务处理请求,并根据存储路径从存储对象中获取到对应的业务数据。
在一个实施例中,处理器执行计算机程序时所实现的基于业务处理请求以及业务数据生成业务处理任务之后,包括:接收微服务模块的任务处理请求;基于任务处理请求获取到对应的业务处理任务,并将业务处理任务发送至对应的微服务模块,以使得微服务模块处理业务处理任务。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求;通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务模块处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,将业务处理请求发送至内存队列。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障恢复的信息时,从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,生成告警信息,并将告警信息发送至对应的用户终端。
在一个实施例中,计算机程序被处理器执行时所实现的将业务处理请求对应的业务数据存储至存储对象之后,还包括:获取业务数据的存储路径,将存储路径存储至消息队列中;计算机程序被处理器执行时所实现的通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,包括:通过管理模块从消息队列中获取到业务处理请求,并根据存储路径从存储对象中获取到对应的业务数据。
在一个实施例中,计算机程序被处理器执行时所实现的基于业务处理请求以及业务数据生成业务处理任务之后,包括:接收微服务模块的任务处理请求;基于任务处理请求获取到对应的业务处理任务,并将业务处理任务发送至对应的微服务模块,以使得微服务模块处理业务处理任务。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:通过请求接收模块接收业务接口调用请求,业务接口调用请求是在业务接口接收到业务处理请求时生成的,且业务接口调用请求携带有业务处理请求;通过请求接收模块将业务处理请求发送至消息队列中,并将业务处理请求对应的业务数据存储至存储对象;通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,基于业务处理请求以及业务数据生成业务处理任务,业务处理任务用于微服务模块处理,其中请求接收模块、管理模块以及微服务模块是独立部署和更新的。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,将业务处理请求发送至内存队列。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障恢复的信息时,从内存队列获取到业务处理请求,并将业务处理请求存储至消息队列中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当请求接收模块接收到消息队列故障的信息时,生成告警信息,并将告警信息发送至对应的用户终端。
在一个实施例中,计算机程序被处理器执行时所实现的将业务处理请求对应的业务数据存储至存储对象之后,还包括:获取业务数据的存储路径,将存储路径存储至消息队列中;计算机程序被处理器执行时所实现的通过管理模块从消息队列中获取到业务处理请求,并从存储对象中获取到对应的业务数据,包括:通过管理模块从消息队列中获取到业务处理请求,并根据存储路径从存储对象中获取到对应的业务数据。
在一个实施例中,计算机程序被处理器执行时所实现的基于业务处理请求以及业务数据生成业务处理任务之后,包括:接收微服务模块的任务处理请求;基于任务处理请求获取到对应的业务处理任务,并将业务处理任务发送至对应的微服务模块,以使得微服务模块处理业务处理任务。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (9)
1.一种业务请求处理方法,其特征在于,所述方法包括:
通过请求接收模块接收业务接口调用请求,所述业务接口调用请求是在业务接口接收到业务处理请求时生成的,且所述业务接口调用请求携带有所述业务处理请求;
通过所述请求接收模块将所述业务处理请求发送至消息队列中,并将所述业务处理请求对应的业务数据存储至存储对象;其中,所述业务数据为与所述业务处理请求对应的待处理数据;
通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,所述业务处理任务用于微服务模块处理,其中所述请求接收模块、所述管理模块以及所述微服务模块是独立部署和更新的。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障的信息时,将所述业务处理请求发送至内存队列。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障恢复的信息时,从内存队列获取到所述业务处理请求,并将所述业务处理请求存储至所述消息队列中。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述请求接收模块接收到所述消息队列故障的信息时,生成告警信息,并将所述告警信息发送至对应的用户终端。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述将所述业务处理请求对应的业务数据存储至存储对象之后,还包括:
获取所述业务数据的存储路径,将所述存储路径存储至所述消息队列中;
所述通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,包括:
通过管理模块从所述消息队列中获取到业务处理请求,并根据所述存储路径从所述存储对象中获取到对应的业务数据。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述基于所述业务处理请求以及所述业务数据生成业务处理任务之后,包括:
接收微服务模块的任务处理请求;
基于所述任务处理请求获取到对应的业务处理任务,并将所述业务处理任务发送至对应的微服务模块,以使得所述微服务模块处理所述业务处理任务。
7.一种业务请求处理装置,其特征在于,所述装置包括:
接收模块,用于通过请求接收模块接收业务接口调用请求,所述业务接口调用请求是在业务接口接收到业务处理请求时生成的,且所述业务接口调用请求携带有所述业务处理请求;
存储模块,用于通过所述请求接收模块将所述业务处理请求发送至消息队列中,并将所述业务处理请求对应的业务数据存储至存储对象;其中,所述业务数据为与所述业务处理请求对应的待处理数据;
业务处理模块,用于通过管理模块从所述消息队列中获取到业务处理请求,并从所述存储对象中获取到对应的业务数据,基于所述业务处理请求以及所述业务数据生成业务处理任务,所述业务处理任务用于微服务模块处理,其中所述请求接收模块、所述管理模块以及所述微服务模块是独立部署和更新的。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310912686.0A CN116627681B (zh) | 2023-07-25 | 2023-07-25 | 业务请求处理方法、装置、计算机设备、介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310912686.0A CN116627681B (zh) | 2023-07-25 | 2023-07-25 | 业务请求处理方法、装置、计算机设备、介质和程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116627681A CN116627681A (zh) | 2023-08-22 |
CN116627681B true CN116627681B (zh) | 2023-10-17 |
Family
ID=87597640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310912686.0A Active CN116627681B (zh) | 2023-07-25 | 2023-07-25 | 业务请求处理方法、装置、计算机设备、介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116627681B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239380A (zh) * | 2017-05-10 | 2017-10-10 | 杭州铭师堂教育科技发展有限公司 | 一种基于zabbix的消息队列监控方法 |
CN108347476A (zh) * | 2018-01-22 | 2018-07-31 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置以及服务器 |
CN108848037A (zh) * | 2018-05-31 | 2018-11-20 | 平安医疗科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
CN110048892A (zh) * | 2019-04-22 | 2019-07-23 | 携程旅游信息技术(上海)有限公司 | 通讯平台故障隔离方法及系统 |
CN112306655A (zh) * | 2020-10-29 | 2021-02-02 | 平安信托有限责任公司 | 任务审核方法、装置、计算机设备及存储介质 |
CN112711488A (zh) * | 2021-01-06 | 2021-04-27 | 许昌许继软件技术有限公司 | 基于微服务和消息队列的设备初始化方法和系统 |
CN113010283A (zh) * | 2021-03-03 | 2021-06-22 | 北京嘀嘀无限科技发展有限公司 | 线上服务方法、装置、电子设备和可读存储介质 |
CN113420076A (zh) * | 2021-06-02 | 2021-09-21 | 浪潮软件股份有限公司 | 一种政务服务平台的服务调度方法及调度模型系统 |
CN113553153A (zh) * | 2021-07-21 | 2021-10-26 | 中国工商银行股份有限公司 | 业务数据处理方法、装置及微服务架构系统 |
WO2021213004A1 (zh) * | 2020-04-22 | 2021-10-28 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
WO2021238287A1 (zh) * | 2020-05-29 | 2021-12-02 | 苏州浪潮智能科技有限公司 | 一种分布式系统主动推送的方法、系统、设备及介质 |
CN114116202A (zh) * | 2021-10-29 | 2022-03-01 | 北京思特奇信息技术股份有限公司 | 一种基于微服务框架下的并行计算方法及系统 |
CN114463135A (zh) * | 2021-12-24 | 2022-05-10 | 上海金仕达软件科技有限公司 | 股权管理方法、系统、装置、设备、存储介质和程序产品 |
CN115129491A (zh) * | 2022-07-08 | 2022-09-30 | 盐城金堤科技有限公司 | 微服务请求消息跟踪方法、生成方法、装置、介质及设备 |
CN116048673A (zh) * | 2023-02-09 | 2023-05-02 | 珠海金山数字网络科技有限公司 | 业务处理方法及平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11922235B2 (en) * | 2021-11-10 | 2024-03-05 | International Business Corporation Machines | Coordinating asynchronous communication among microservices |
-
2023
- 2023-07-25 CN CN202310912686.0A patent/CN116627681B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239380A (zh) * | 2017-05-10 | 2017-10-10 | 杭州铭师堂教育科技发展有限公司 | 一种基于zabbix的消息队列监控方法 |
CN108347476A (zh) * | 2018-01-22 | 2018-07-31 | 广东欧珀移动通信有限公司 | 跨机房数据同步方法、装置以及服务器 |
CN108848037A (zh) * | 2018-05-31 | 2018-11-20 | 平安医疗科技有限公司 | 业务请求处理方法、装置、计算机设备和存储介质 |
CN110048892A (zh) * | 2019-04-22 | 2019-07-23 | 携程旅游信息技术(上海)有限公司 | 通讯平台故障隔离方法及系统 |
WO2021213004A1 (zh) * | 2020-04-22 | 2021-10-28 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
WO2021238287A1 (zh) * | 2020-05-29 | 2021-12-02 | 苏州浪潮智能科技有限公司 | 一种分布式系统主动推送的方法、系统、设备及介质 |
CN112306655A (zh) * | 2020-10-29 | 2021-02-02 | 平安信托有限责任公司 | 任务审核方法、装置、计算机设备及存储介质 |
CN112711488A (zh) * | 2021-01-06 | 2021-04-27 | 许昌许继软件技术有限公司 | 基于微服务和消息队列的设备初始化方法和系统 |
CN113010283A (zh) * | 2021-03-03 | 2021-06-22 | 北京嘀嘀无限科技发展有限公司 | 线上服务方法、装置、电子设备和可读存储介质 |
CN113420076A (zh) * | 2021-06-02 | 2021-09-21 | 浪潮软件股份有限公司 | 一种政务服务平台的服务调度方法及调度模型系统 |
CN113553153A (zh) * | 2021-07-21 | 2021-10-26 | 中国工商银行股份有限公司 | 业务数据处理方法、装置及微服务架构系统 |
CN114116202A (zh) * | 2021-10-29 | 2022-03-01 | 北京思特奇信息技术股份有限公司 | 一种基于微服务框架下的并行计算方法及系统 |
CN114463135A (zh) * | 2021-12-24 | 2022-05-10 | 上海金仕达软件科技有限公司 | 股权管理方法、系统、装置、设备、存储介质和程序产品 |
CN115129491A (zh) * | 2022-07-08 | 2022-09-30 | 盐城金堤科技有限公司 | 微服务请求消息跟踪方法、生成方法、装置、介质及设备 |
CN116048673A (zh) * | 2023-02-09 | 2023-05-02 | 珠海金山数字网络科技有限公司 | 业务处理方法及平台 |
Also Published As
Publication number | Publication date |
---|---|
CN116627681A (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112910945B (zh) | 请求链路跟踪方法和业务请求处理方法 | |
EP3543866B1 (en) | Resource-efficient record processing in unified automation platforms for robotic process automation | |
CN107092522B (zh) | 实时数据的计算方法及装置 | |
US10698745B2 (en) | Adapter extension for inbound messages from robotic automation platforms to unified automation platform | |
US10423469B2 (en) | Router management by an event stream processing cluster manager | |
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
CN106878363B (zh) | 一种信息处理方法、装置及系统 | |
US20140195670A1 (en) | Automated alert management | |
CN105653425A (zh) | 基于复杂事件处理引擎的监控系统 | |
CN110795503A (zh) | 分布式存储系统的多集群数据同步方法及相关装置 | |
CN111371898B (zh) | 一种消息监听方法、装置、设备及存储介质 | |
CN113687956A (zh) | 消息路由分发方法、装置、计算机设备及存储介质 | |
US11283697B1 (en) | Scalable real time metrics management | |
US8510426B2 (en) | Communication and coordination between web services in a cloud-based computing environment | |
US20220044144A1 (en) | Real time model cascades and derived feature hierarchy | |
CN116627681B (zh) | 业务请求处理方法、装置、计算机设备、介质和程序产品 | |
CN109445966B (zh) | 事件处理方法、装置、介质和计算设备 | |
Pathak et al. | A model for hybrid cloud integration: With a case study for it service management (itsm) | |
US11582345B2 (en) | Context data management interface for contact center | |
CN112488462A (zh) | 一种工作流数据的统一推送方法、装置及介质 | |
CN110768855B (zh) | 链路化性能测试的方法和装置 | |
CN116389502B (zh) | 跨集群调度系统、方法、装置、计算机设备和存储介质 | |
US8495153B1 (en) | Distribution of messages in nodes connected by a grid architecture | |
CN110764882A (zh) | 分布式管理方法、分布式管理系统及装置 | |
US11722451B2 (en) | Distributing event messages from a first service to additional services using a message store |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |