CN112350978A - 一种业务处理方法、***、设备及存储介质 - Google Patents
一种业务处理方法、***、设备及存储介质 Download PDFInfo
- Publication number
- CN112350978A CN112350978A CN201910731249.2A CN201910731249A CN112350978A CN 112350978 A CN112350978 A CN 112350978A CN 201910731249 A CN201910731249 A CN 201910731249A CN 112350978 A CN112350978 A CN 112350978A
- Authority
- CN
- China
- Prior art keywords
- service
- micro
- microservice
- request
- account
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种业务处理方法、业务处理装置、设备及存储介质,应用于业务处理***,所述方法包括:在接口网关微服务,接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务;在鉴权微服务,基于所述账号和密码认证通过后,为所述账号分配令牌;在所述接口网关微服务,接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,以及确定所述业务请求携带的令牌和为所述账号分配的令牌相同,将所述业务请求发送至业务微服务;在所述业务微服务,对所述业务请求进行处理;如此,提高了微服务构成的业务处理***的安全性。
Description
技术领域
本申请实施例涉及计算机技术领域,涉及但不限于一种业务处理方法、***、设备及存储介质。
背景技术
在相关技术中,单体应用开发架构的软件设计中,软件框架包括图1所示的3层模型:表示层101、业务逻辑层102和数据访问层103。例如,在电影售票***中,表示层101:用于直接和用户交互,也称为交互层,通常包括:用户界面(User Interface,UI)、超文本标记语言(Hyper Text Markup Language,HTML)页面等页面。业务逻辑层102:即业务逻辑处理层,用户输入的信息要经过业务逻辑层的处理后,才能展现给用户,可包括电影模块、用户模块等。数据访问层:用于操作数据库,用户在表示层通过业务逻辑层会产生大量的数据,并存储于数据访问层的数据库中,通过数据访问层对数据库进行读写交互操作。
虽然在软件设计中划分了上述经典的3层模型,但是不同业务场景的所有的业务模块都耦合在一起。一个典型的单体架构应用的开发框架就是将所有的业务场景的表示层、业务逻辑层和数据访问层放在一个工程中,最终经过编译、打包、部署在一台服务器或者多台机器上。例如典型的J2EE工程,它是将表示层的JSP、HTML、业务逻辑层的Controller、Service和数据访问层的Dao,打包成war包,部署在Tomcat、Jetty或者其他Servlet容器中运行。因此,不同应用场景下的业务模块的耦合性高。
为了减小不同场景下业务模块的耦合性,将整个应用程序分成多个微服务,通过不同的微服务提供不同的业务服务,但相关技术中,各个微服务之间是独立的,降低了应用程序的安全性。
发明内容
本申请实施例提供一种业务处理方法、***、设备及存储介质。
本申请实施例的技术方案是这样实现的:
本申请实施例提供了一种业务处理方法,应用于业务处理***,所述业务处理***由微服务构成,所述微服务中包括接口网关微服务、鉴权微服务和业务微服务,所述方法包括:
在接口网关微服务,接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务;
在鉴权微服务,基于所述账号和密码认证通过后,为所述账号分配令牌;
在所述接口网关微服务,接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,以及确定所述业务请求携带的令牌和为所述账号分配的令牌相同,将所述业务请求发送至所述业务微服务;
在所述业务微服务,对所述业务请求进行处理。
本申请实施例还提供了一种业务处理***,所述业务处理***由微服务构成,所述微服务中包括接口网关微服务、鉴权微服务和业务微服务;其中,
所述接口网关微服务,用于接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务;
所述鉴权微服务,用于确定所述账号和密码认证通过后,为所述账号分配令牌;
所述接口网关微服务,还用于接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务;
所述业务微服务,对所述业务请求进行处理。
本申请实施例还提供了一种业务处理设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行所述计算机程序时,执行上述所述业务处理方法中的步骤。
本申请实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述业务处理方法。
本申请实施例所提供的业务处理方法、***、设备及存储介质,确定登陆请求认证通过后,为账号分配令牌,并在接收到该账号对应的业务请求时,判断业务请求携带的令牌和为行号分配的令牌是否相同,确定相同时,认为该业务请求为合法的业务请求,对该业务请求进行处理,使得业务微服务所处理的业务请求为经过鉴权微服务授权的业务微服务,提高了微服务构成的业务处理***的安全性。
附图说明
图1为相关技术中的单体应用开发的软件框架示意图;
图2为本申请实施例提供的业务处理***的一种可选的结构示意图;
图3为本申请实施例提供的业务处理方法的一种可选的流程示意图;
图4为本申请实施例提供的业务处理***的一种可选的结构示意图;
图5为本申请实施例提供的业务处理***的一种可选的结构示意图;
图6为本申请实施例提供的业务处理方法的一种可选的流程示意图;
图7为本申请实施例提供的业务处理***的一种可选的结构示意图;
图8为本申请实施例提供的业务处理***的一种可选的功能结构示意图;
图9为本申请实施例提供的业务处理***的一种可选的技术架构示意图;
图10为本申请实施例提供的业务处理方法的一种可选的交互流程示意图;
图11为本申请实施例提供的业务处理方法的一种可选的开发互流程示意图;
图12为本申请实施例提供的业务处理***的一种可选的结构程示意图。
具体实施方式
下面结合附图及具体实施例对本申请作进一步详细的说明。
本申请实施例提供的业务处理方法应用于业务处理***,业务处理***由微服务构成,作为一示例,业务处理***200的结构可如图2所示,包括:接口网关微服务201、鉴权微服务202和业务微服务203(示例性的示出业务微服务203-1和业务微服务203-2)。
接口网关微服务201接收登陆请求R1,将登陆请求R1携带的账号A和密码a发送至鉴权微服务202。鉴权微服务202确定账号A和密码a认证通过后,为账号A分配令牌T。接口网关微服务201,接收账号A对应的业务请求R2,获取所述业务请求携带的令牌T'和为账号A分配的令牌T,并确定业务请求R2携带的令牌T'和为所述账号分配的令牌T相同时,将业务请求R2发送至业务微服务203;在业务微服务203,对业务请求R2进行处理。
在实际应用中,接口网关微服务201将业务请求R2分配至业务微服务203-1时,业务微服务203-1对业务请求R2进行处理。接口网关微服务201将业务请求R2分配至业务微服务203-2时,业务微服务203-2对业务请求R2进行处理。
基于图2所示的业务处理***对对本申请实施例中的业务处理方法进行描述,如图3所示,该方法包括以下步骤:
步骤301:在接口网关微服务,接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务。
当用户基于终端首次登陆业务处理***时,基于登陆业务处理***提供的登陆界面输入账号以及密码,并基于登陆界面上显示的登陆接口触发登陆请求,并将登陆请求发送至。这里,登陆请求可携带用户输入的账号和密码。
在业务处理***的接口网关微服务中接收客户端发送的登陆请求,并对接收的登陆请求进行解析,得到登陆请求携带的账号和密码,将账号和密码发送至业务处理***的鉴权微服务。
接口网关微服务可直接将登陆请求转发至鉴权微服务,也可仅将账号和密码转发至鉴权微服务。
步骤302:在鉴权微服务,确定所述账号和密码认证通过后,为所述账号分配令牌。
鉴权微服务接收到接口网关微服务发送的账号和密码后,基于账号获取账号对应的存储密码,并将接收的密码和获取的存储密码进行匹配。如果密码和存储密码匹配,确定该登陆请求认证通过;如果密码和存储密码不匹配,确定该登陆请求认证未通过。其中,可当密码和存储密码相同时,确定密码和存储密码匹配。这里,存储密码为***中存储的该账号对应的密码,可为用户在进行密码设置时设置的密码。
实际应用中,当鉴权微服务未获取到该账号对应的存储密码时,确定账号和密码验证未通过,当获取到该账号对应的存储密码时,对密码和存储密码进行匹配。
确定账号和密码认证通过后,为该账号分配令牌。这里,在业务处理***中,可设置一令牌池,令牌池中包括多个令牌,且每个令牌都设置有对应的分配标识,以表征该令牌是否已经被分配。当一令牌被分配给一账号时,分配标识为已分配状态;令牌未被分配给账号时,则分配标识为未分配状态。鉴权微服务从令牌池可中获取分配标识为未分配状态的任一未令牌,分配至该账号。需要说明的是,鉴权微服务为账号分配令牌时,为不同账号所分配的令牌不同,比如:为账号A分配的令牌为T1,为账号B分配的令牌为T2,且在不同的分配过程中为同一账号分配的令牌也不同,比如:第一次为账号A分配的令牌为T1,第二次为账号分配的令牌为T3。
本申请实施例中,鉴权微服务还可以账号为参数,基于设定的算法来计算为各账号所分配的令牌。本申请实施例对为账号分配令牌的具体分配方式不进行任何的限定。
在实际应用中,鉴权微服务可根据账号的等级为该账号分配对应等级的令牌。业务处理***为不同等级的账号对应的业务请求所设置的访问权项不同。比如:账号的等级包括一级、二级和三级,其中,等级为一级的账号对应的业务请求能够访问业务处理***20%的资源,等级为二级的账号对应的业务请求能够访问业务处理***60%的资源,等级为三级的账号对应的业务请求能够访问业务处理***200%的资源。本申请实施例中,不同等级的账号的区别可根据实际需求进行设置。
当鉴权微服务为账号分配令牌后,将所分配的令牌发送至接口网关微服务。
步骤303:在所述接口网关微服务,接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务。
接收网关微服务接收到鉴权微服务为登陆请求携带的账号所分配的令牌后,向客户端发送响应登陆请求的登陆响应,并在指示认证成功的登陆响应中携带所分配的令牌。
当客户端接收到登陆响应后,完成业务处理***的登陆。客户端在未推出当前登陆的情况下,向业务处理***发送业务请求时,可在业务请求中携带业务处理***所返回的令牌。
业务处理***接收的接口网关微服务接收到客户端发送的业务请求时,对接收的业务请求进行解析,确定业务请求是否携带令牌。当业务请求未携带令牌时,确定接收到的业务请求为非法的业务请求。当业务请求携带令牌时,根据业务请求中的账号获取为该账号分配的令牌,并将业务请求携带的令牌和为账号分配的令牌进行匹配。如果业务请求携带的令牌和为账号分配的令牌相同,确定该业务请求为合法的业务请求,当业务请求携带的令牌与为账号分配的令牌不同,确定该业务请求为非法的业务请求。
当接口网关微服务确定业务请求为合法的业务请求时,将业务请求发送至业务微服务。当接口网关微服务确定业务请求为非法的业务请求时,不对该业务请求进行处理,或直接将该业务请求抛弃。当接口网关微服务确定业务请求为非法的业务请求时,还可向客户端返回非法提示,以提示用户当前业务请求为非法的业务请求。
步骤304:在所述业务微服务,对所述业务请求进行处理。
业务请求接收到接口网关微服务发送的业务请求后,对业务请求进行处理。这里,业务处理***中可包括多个不同业务类型的业务微服务,比如:用户管理微服务、机构管理微服务、角色管理微服务、元数据管理微服务等。根据不同的业务类型对对应业务类型的业务微服务进行处理。
在一实施例中,接口网关微服务执行将所述业务请求发送至所述业务微服务,包括:确定接收的业务请求的业务类型,确定所述业务微服务中,所述业务类型对应的目标业务微服务;相应地,在所述目标业务微服务,对所述业务请求进行处理。
这里,接口网关微服务将业务请求发送至业务服务模块之前,确定业务请求的类型,根据业务请求的业务类型确定对该业务请求进行处理的目标业务微服务。比如:当业务请求为角色管理类的业务请求时,则将角色管理微服务确定为目标微服务。又比如:当业务请求为机构管理类的业务请求时,则将机构管理微服务确定为目标微服务。
接口网关微服务确定目标微服务后,将业务请求转发至目标业务微服务,使得目标业务微服务对该业务请求进行处理。
在本申请实施例中,确定登陆请求认证通过后,为账号分配令牌,并在接收到该账号对应的业务请求时,判断业务请求携带的令牌和为行号分配的令牌是否相同,确定相同时,认为该业务请求为合法的业务请求,对该业务请求进行处理,否则,不对该业务请求进行处理,使得不同业务微服务只需要鉴权微服务的一次授权,提高由微服务构成的业务处理***的安全性。
在一实施例中,作为一示例,本申请实施例提供的业务***可如图4所示,包括:接口网关微服务201、鉴权微服务202、业务微服务203(示例性的示出业务微服务203-1和业务微服务203-2)和服务注册微服务204。其中,在服务注册微服务204,对业务处理***中的微服务进行注册,并构建不同的微服务之间的关联关系。
当业务处理***启动时,使能各微服务向服务注册微服务发送消息,将各微服务对外提供的业务服务进行注册,形成注册列表。通过注册列表中各微服务提供的业务服务将不同的微服务进行关联。其中,服务注册微服务用于维护注册列表,其中,注册列表为一个服务接口名和微服务地址的映射表,保存了业务***内所有微服务对外提供的服务信息。
当业务处理***中添加了新的微服务时,使能添加的新的微服向服务注册微服务发送消息,将该添加的微服务对外提供的业务服务添加到注册列表中,以对该新的微服务进行注册。
当业务处理***中存在待删除的微服务时,使能待删除的微服向服务注册微服务发送消息,将该待删除的微服务对外提供的业务服务从注册列表中删除,以对注册列表进行更新。
在实际应用中,业务处理***中,还包括有服务发现微服务,以发现业务处理***中添加的新的微服务和待删除的微服务,发现有业务处理***的更新。
这里,服务注册微服务中所注册的微服务与业务***中所包括的微服务同步。通过服务注册微服务,实现业务处理***中微服务的动态注册。
在一实施例中,所述微服务包括第一微服务和第二微服务,所述第一微服务和所述第二微服务为所述业务处理***中不同的微服务;所述方法还包括:
在所述第一微服务,对所述业务请求处理后,向所述服务注册微服务发送调用消息;在所述服务注册微服务,根据所述第一微服务确定所述第二微服务的地址信息,并向所述第一微服务返回所述第二微服务的地址信息;在所述第一微服务,基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务。
第一微服务和第二微服务分别为在服务注册微服务中注册的不同的微服务。比如:第一微服务为接口网关微服务、第二微服务为鉴权微服务。又比如:第一微服务为鉴权微服务、第二微服务为接口网关微服务。再比如:第一微服务为图3所示的业务微服务203-1,第二微服务为图3所示的业务微服务203-2。又或者,第一微服务为图3所示的业务微服务203-2,第二微服务为图3所示的业务微服务203-1。
当第一微服务对业务请求进行处理后,需要将请求后的业务请求发送至下一微服务处理,第一微服务向服务注册微服务发送调用消息,请求下一微服务的地址信息。第一微服务和业务处理***中的其他微服务之间相互独立,第一微服务无法确定下一微服务是业务处理***中的哪一个微服务,且第一微服务和业务处理***中的其他微服务之间不存在数据传输时,相互之间并未建立连接。
在服务注册微服务,接收到第一微服务的调用消息后,根据当前业务请求所需要的服务以及第一微服务提供的业务服务,确定接下来需要的业务服务,并根据接下来需要的业务服务确定能够提高该业务服务的第二微服务。
服务注册微服务确定第二微服务后,在服务注册列表中获取第二微服务的地址信息,并将获取的第二微服务的地址信息返回至第一微服务,以响应第一微服务的调用消息。这里,地址信息可包括服务接口名和微服务地址,微服务地址可为互联网协议(InternetProtocol)IP地址。
在实际应用中,一个IP地址可对应一个或多个微服务,且不同的微服务的服务接口名不同,因此,通过微服务地址和服务接口名能够唯一地标识一个微服务。
在第一微服务,基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务。
在一实施例中,在所述第一微服务,基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务调用所述第二微服务,可以这样执行:
基于所述地址信息,消息驱动所述第一微服务和所述第二微服务之间的接口,基于所驱动的接口进行所述第二微服务的调用,并基于所驱动的接口,将所述处理后的业务请求发送至调用的所述第二微服务。
当第一微服务从服务注册微服务接收到第二微服务的地址信息后,以所接收的地址信息为目标地址,向第二微服务发送消息,以驱动第一微服务和第二微服务之间的接口,基于所驱动的接口在所述第一微服务和所述第二微服务之间建立连接。所驱动的接口所支持的通信协议与所述第一微服务和所述第二微服务可无关。例如:服务注册微服务和接口网关微服务之间的接口可支持超文本传输协议(Hyper Text Transfer Protocol,HTTP),也可支持JS对象简谱(JavaScript Object Notation,JSON)协议。
当在第一微服务和第二微服基于驱动的接口之间建立连接后,第一微服务将通过驱动的接口将处理后的业务处理请求息发送至第二微服务。
在本申请实施例中,通过服务注册微服务对业务处理***中的微服务进行动态注册,并通过服务注册微服务实现独立的微服务之间的调用。
在一实施例中,作为一示例,本申请实施例提供的业务***可如图5所示,包括:接口网关微服务201、鉴权微服务202、业务微服务203(示例性的示出业务微服务203-1和业务微服务203-2)和前端微服务205。在前端微服务205,基于用户的操作请求触发所述业务请求,并输出所述目标业务微服务对所述业务请求的处理结果。这里,前端微服务可作为业务处理***的客户端,实现业务处理***与用户的交互。
前端微服务与业务处理***中的其他微服务可位于同一的功能实体上,比如:前端微服务与业务处理***中的其他微服务同时位于终端上。
前端微服务与业务处理***中的其他微服务也可分别位于不同的功能实体上,比如:前端微服务位于终端上,业务处理***中的其他微服务位于与终端通过网络连接的服务器上。
在一实施例中,本申请实施例提供的业务处理方法还包括:
在所述前端微服务,接收为所述账号分配的令牌;在所述业务请求中封装所述为所述账号分配的令牌,将封装有为所述账号分配的令牌的业务请求发送至所述接口网关微服务;
在所述接口网关微服务,接收所述业务微服务对所述业务请求的处理结果,将所述处理结果发送至所述前端微服务。
作为一示例,本申请实施例提供的业务处理方法可如图6所示,包括:
步骤601:在接口网关微服务,接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务。
步骤602:在鉴权微服务,确定所述账号和密码认证通过后,为所述账号分配令牌。
步骤603:在前端微服务,接收为所述账号分配的令牌。
步骤604:在前端微服务,接收所述业务请求,在所述业务请求中封装所述为所述账号分配的令牌,将封装有为所述账号分配的令牌的业务请求发送至所述接口网关微服务。
步骤605:在接口网关微服务,接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务;
步骤606:在业务微服务,对所述业务请求进行处理;
步骤607:在接口网关微服务,接收所述业务微服务对所述业务请求的处理结果,将所述处理结果发送至所述前端微服务。
步骤608:在前端微服务,输出所述目标业务微服务对所述业务请求的处理结果。
作为一示例,本申请实施例提供的业务***可如图7所示,包括:接口网关微服务201、鉴权微服务202、业务微服务203(示例性的示出业务微服务203-1和业务微服务203-2)和服务流控微服务206。在服务流控微服务206中,对运行的微服务进行监控,根据运行的各微服务的优先级,对应的分配资源。
服务流控微服务,监控业务处理***中运行的微服务,并获取运行的微服务的优先级,根据运行的各微服的优先级为各优先级进行资源的分配。这里,分配的资源可为接口网关微服务的流量。为运行的微服务分配资源时,通过具体的资源量来为运行的各微服务分配资源,也可通过运行的各微服务所分配的资源占用总资源的比例来控制各微服务所能够使用的资源。
根据各微服的优先级为各优先级进行资源的分配时,根据运行的各微服务的优先级确定对应的权重,基于各微服务的权重进行资源分配。比如:业务处理***中运行有微服务A和微服务B,且微服务A的优先级高于微服务B的优先级,则将微服务A对应的权重设置为4,将微服务B对应的权重设置为1,此时,将接口网关微服务的80%的流量分配给微服务A,将接口网关微服务的20%的流量分配给微服务B;
根据各微服的优先级为各优先级进行资源的分配时,还可对优先级高的微服务动态设置限制阈值,将优先级高的微服务所占用的资源限制在限制阈值内,使得不会出现优先级高的微服务抢占所有的流量,导致优先级低的微服务无资源可用。
在一实施例中,在所述服务流控微服务,检测运行的微服务所使用的资源总使用量,以及当所述资源总使用量大于设定的资源使用阈值时,对所运行的微服务的优先级进行调整。
服务流控微服务在为运行的各微服务分配资源时,可根据当前的资源使用情况对运行的各微服务的优先级进行调整,从而对运行的各微服务所能够使用的资源进行更新。
这里,服务监控微服务可周期性地获取运行的微服务所使用的资源总使用量,并将获取的资源总使用量和设定的资源使用阈值进行比较,当资源总使用量大资源使用阈值,表征当前处于业务请求并发高峰期,对运行的微服务的优先级进行调整,比如:将优先级高的微服务的优先级调高,或将优先级低的微服务的优先级调低。
这里,将优先级低的微服务的优先级调低,可称为服务降级处理,通过服务降级处理,能够对优先级低的即不是很重要的微服务进行优先级降级的处理,尽可能的把***资源让给优先级高的微服务。
在本申请实施例中,基于业务处理***中的总资源有限,而业务请求是无限的。如果在业务请求并发高峰期,通过服务降级处理,保证业务处理***核心功能微服务的可用性,从而避免核心功能微服务的服务性能受到业务请求并发影响,减少核心功能微服务的不可用的可能性,提高业务处理***的整体服务性能。
本申请实施例还提供一种由微服务构成的业务处理***200,示例性的,如图2所示,包括:
接口网关微服务201,用于接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务202;
鉴权微服务202,用于确定所述账号和密码认证通过后,为所述账号分配令牌;
接口网关微服务201,还用于接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务203;
业务微服务203,对所述业务请求进行处理。
在一实施例中,接口网关微服务,还用于:
确定接收的业务请求的业务类型,确定所述业务微服务中,所述业务类型对应的目标业务微服务;
相应地,在所述目标业务微服务,对所述业务请求进行处理。
在一实施例中,业务处理***200还包括:服务注册微服务,用于:
对所述微服务进行注册,并构建不同的微服务之间的关联关系。
在一实施例中,所述微服务包括第一业微服务和第二微服务,
所述第一微服务,用于对所述业务请求处理后,向所述服务注册微服务发送调用消息;
所述服务注册微服务,用于根据所述第一微服务确定所述第二微服务的地址信息,并向所述第一微服务返回所述第二微服务的地址信息;
所述第一微服务,用于基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务。
在一实施例中,所述第一微服务,还用于:基于所述地址信息,消息驱动所述第一微服务和所述第二微服务之间的接口,基于所驱动的接口进行所述第二微服务的调用,并基于所驱动的接口,将所述处理后的业务请求发送至调用的所述第二微服务。
在一实施例中,业务处理***200的微服务还包括:前端微服务,
所述前端微服务,用于接收所述业务请求,并输出所述目标业务微服务对所述业务请求的处理结果。
在一实施例中,所述前端微服务,用于接收为所述账号分配的令牌,在所述业务请求中封装所述为所述账号分配的令牌,将封装有为所述账号分配的令牌的业务请求发送至所述接口网关微服务;
所述接口网关微服务,用于接收所述业务微服务对所述业务请求的处理结果,将所述处理结果发送至所述前端微服务。
在一实施例中,业务处理***200的微服务还包括:服务流控微服务,
所述服务流控微服务,用于对运行的微服务进行监控,根据运行的各微服务的优先级,对应的分配资源。
在一实施例中,所述服务流控微服务,还用于:
检测运行的微服务所使用的资源总使用量,以及当所述资源总使用量大于设定的资源使用阈值时,对所运行的微服务的优先级进行调整。
需要说明的是,上述实施例提供的业务处理***,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将***的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的业务处理***与业务处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
下面,以具体的应用场景对本申请实施例提供的业务处理方法进行进一步说明。
这里,首先对图1所示的软件框架的技术缺陷进行描述。
图1所示的软件框架存在以下几个技术缺陷:
1、代码重复率高
在实际项目分工时,开发用户都是各自负责应用程序中的几个功能,即便开发用户之间存在功能重叠的模块,往往也会根据自身的设计实现重叠的功能,而不是类库共享,因此,对于功能重叠的部分,不同开发用户的设计不同。这里,不同开发用户根据自身的设计实现重叠的功能的原因包括有:
从技术架构角度看:传统垂直架构的特点是本地应用程序编程接口(ApplicationProgramming Interface,API)调用,不存在业务的拆分和互相调用,使用到什么功能就本地开发,非常方便,不需要过度依赖于其它功能模块。
从考核角度来看:共享很难推行。开发者只需要对自己开发的模块交付质量负责,没有义务为他人提供并维护公共类库。
从时间把控来看:时间依赖把控较难,对于公共类库的使用者而言,依赖不同于使用者的功能提供者提供此功能,但是功能提供者可能有更重要的事情在做,所提供的时间无法满足使用者的时间需求。与其坐等别人提供,还不如自己开发效率高。
从协调难度来看:业务团队可能跨地域研发,且同一地域的业务团队内部也会分成多个开发小组,各开发小组之间的协调和沟通成本非常高,且跨地域、跨开发小组协调很困难。
2、需求变更困难
代码重复率变高之后,已有功能变更或者新需求加入都会非常困难。
以充值缴费功能为例,不同的充值渠道开发了相同的限额保护功能,当限额保护功能发生变更之后,所有重复开发的限额保护功能都需要重新修改和测试,很容易出现修改不一致或者被遗漏,导致部分渠道充值功能正常,部分存在漏洞(Bug)的问题。
3、无法满足快速创新和敏捷交付
在模型-视图-控制器(Model View Controller,MVC)架构中,业务流程是由一长串本地接口或者方法调用串联起来的,臃肿而冗长,而且由一个人负责开发和维护。随着业务的发展和需求变化,本地代码在不断的迭代和变更,最后形成了一个个垂直的功能孤岛,只有原来的开发者才理解接口调用关系和功能需求,一旦原有的开发者离职或者调到其他项目组,业务流程的运维就会变得非常困难。
4、***错误隔离性差、可用性差
任何一个模块的错误均可能造成整个***的宕机。
5、线上问题修复周期长
任何一个线上问题修复需要对整个应用***进行全面升级。
为克服上述技术缺陷,本申请实施例提供的业务处理***采用一组微服务来构建一个应用程序,不同的微服务独立部署在不同的进程中,不同微服务通过远程过程调用(Remote Procedure Call,RPC)、HTTP等轻量级交互机制来通信,各微服务可独立扩展伸缩,每个微服务定义了明确的边界。不同的微服务甚至可以采用不同的编程语言来实现,且由独立的团队来维护。
本申请实施例提供的业务处理***的微服务开发框架相对于单体应用开发架构相比,具有复杂度可控、独立部署、技术选型灵活、容错机制、集成swagger、服务易扩展等特点,并且还具有权限控制、服务监控、代码生成、持续集成、日志***等一系列新功能,能够为企业降低开发难度和时间成本。本申请实施例提供的业务处理***还预留了单点登录模块,方便使用者对接其他***。因此,本申请实施例提供的业务处理***是一个兼容高效性和实用性的微服务开发框架,让开发人员彻底从底层技术中释放出来,只需要关注自己的业务功能模块,可以快速建立起一个高内聚、低耦合的微服务应用***,达到开发标准化、***模块化、应用服务化的目标。
本申请实施例提供的业务处理***的功能架构可如图8所示,包括:前台访问81、平台服务82和存储83。
其中,前台访问81包括前台管理门户801,前台管理门户801可由前端微服务实现,提供可视化操作界面便于开发者使用。
平台服务82包括:认证鉴权821、平台管理822、服务管理823、***管理824和开发支持825。
认证鉴权821:可由鉴权微服务实现,包括用户认证8211和接口鉴权8212用户认证8211支持对用户身份认证、控制访问权限;接口鉴权8212支持对接口服务认证,控制调用权限。
平台管理822:提供注册登录、用户管理、机构管理、角色管理、菜单管理以及元数据管理等基础管理功能,用户只需进行相关配置即可。
服务管理823:提供服务注册、服务监控、服务流控等服务管理功能,保障服务运行。
***管理824:提供日志管理、缓存管理、服务降级等***管理功能,保障业务处理***的整体运行。
开发支持825:提供前后端代码生成、文档制作、消息中心等开发辅助功能,开发用户同样只需配置即可使用;并提供代码自动构建功能。
存储83:存储微服务开发框架基础数据。存储功能的实现可基于关系型数据库831、缓存832、消息队列(Message Queue,MQ)833等存储形式实现。
本申请实施例提供的业务处理方法的技术架构如图9所示:
Web模块接收浏览器/客户端的HTTP请求,转发给接口网关模块,接口网关模块对接收的HTTP请求进行请求转发处理。
接口网关模块把HTTP请求分发到各种业务模块完成请求调用,并将结果返回到Web模块。接口网关模块的每次调用都会要先进入鉴权模块,请求权限不够,或者无效请求都不予通过起到拦截,从保护资源。
这里,不同的模块即为不同的微服务,下面,对各模块进行进一步描述。
Web模块901:负责接收用户从浏览器客户端发出http请求并返回请求处理结果。这里,本业务处理***的框架是前后端分离设计模式。
Eureka模块902:即服务注册模块,主要负责各个服务模块的注册功能,通过eureka注册中心可以把各个服务模块联系到一起,实现相互调用。
其中,Eureka模块902包括Eureka A和Eureka B两部分,从而实现Eureka模块的备份。当其中一个挂掉时,可通过另一个提供服务注册服务。
这里,可基于Eureka模块902搭建Spring Boot Admin,从而Eureka模块通过Spring Boot Admin对各微服务进行监控。
接口网关模块903:注册到Eureka模块902,同时接收来自Web模块901的http请求,通过http请求的业务类型的不同来分发到不同的服务模块中去。
鉴权模块904:使用Spring security oAuth2和jwt技术实现对用户身份认证,资源控制访问调用。
配置服务模块905:分布式配置中心。在微服务架构中,由于多个微服务为分布式架构,通过配置服务模块905能够方便对各微服务的配置文件统一管理,实时更新。
存储资源模块906:提供redis缓存、数据库(例如:MySQL)、分布式文件***(例如:MQ)、消息队列等一系列存储功能。
功能服务模块907:除了提供服务的基础功能服务:管理服务、短信服务、代码生成服务之外,还可以基于自动构建在功能服务模块907中任意扩展其他微服务功能,因此同单体架构相比易扩展功能大大提高了开发效率,降低开发周期。
功能服务模块907和Web模块901之间通过消息总线908进行消息的交互。
功能服务模块907和存储资源模块906之间可通过持久层框架MyBatis进行数据的存储。其中,MyBatis支持定制化SQL、存储过程以及高级映射。
业务处理***中不同的模块之间可通过不同的协议进行调用,比如:Eureka模块902通过JSON调用接口网关模块903,接口网关模块903通过HTTPRESTful调用Eureka模块902,又比如:鉴权模块904通过JSON调用接口网关模块903,接口网关模块903通过HTTP调用鉴权模块904。
业务处理***中可集成ELK(ElasticSearch+Logstash+Kibana),以实现业务处理***的日志统计分析。
鉴权模块904对用户身份认证、资源控制访问的具体过程参见图10:
步骤1001、客户端向接口网关模块发送携带用户名和密码的登陆请求;
当用户初次登录,输入用户名和密码,此时触发的登陆请求中携带用户名和密码。
步骤1002、接口网关模块将携带用户名和密码的登陆请求转发至鉴权模块;
步骤1003、鉴权模块确定用户名和密码认证通过时,生成令牌;
这里,令牌可为作为JSON对象在各方之间安全地传输信息的JWT(JSON WebToken)。
步骤1004、鉴权模块将令牌发送至令牌存储模块。
步骤1005、鉴权模块将生成的令牌返回给接口网关模块;
步骤1006、接口网关模块将令牌返回给客户端。
步骤1007、客户端向接口网关模块发送业务请求。
业务请求可为调用API请求或资源请求。客户端在发起业务求时,业务请求的请求头中authorization值为生成的JWT的字符串。
步骤1008、接口网关模块获取业务请求携带的令牌,且从令牌存储模块获取为该用户名创建的令牌。
步骤1009、接口网关模块进行令牌校验;
将业务请求携带的令牌和从令牌存储模块获取的令牌进行比较。
步骤1010、接口网关模块确定令牌校验成功后,将业务请求发送至服务模块;
这里,服务模块对应业务微服务。
步骤1011、服务模块将对业务请求的处理结果携带在响应消息中发送至接口网关模块。
步骤1012、接口网关模块将响应消息转发至客户端。
这里,本申请实施例提供的业务处理方法能够保证基于微服务实现的业务处理***更加安全,可以实现多个微服务之间只需要一次授权登录即可。
开发用户通过本申请实施例提供的业务处理***进行应用程序的开发时,开发用户使用微服务应用框架能够迅速构建自己的开发应用,开发出应用服务后提交代码至远程仓库,jenkins获取代码进行自动构建打包,推送至镜像仓库,一键式构建完成。同时也能支持接入PaaS平台,依托平台弹性计算服务进行自动部署发布。
基于本申请实施例提供的业务处理***的微服务应用开发平台进行软件发布的具体流程如图11所示:
1、开发用户在微服务应用开发平台上下载代码,可以根据自己需要编写代码进行服务创建或前端业务模块的创建,并提交至微服务应用开发平台,由PaaS平台的微服务应用开发平台提供一键式编译发布运行。
2、在PaaS平台中,研发构建流水线获取代码进行自动构建打包以构建服务jenkins,并推送至镜像仓库,一键式构建完成。
3、PaaS平台通过弹性计算服务所分配资源部署运行。
同时,本申请实施例提供的微服务应用开发平台,开发出的微服务只需简单配置,便可部署于PaaS平台,同开发平台处于同一环境。容器的服务管理由PaaS平台提供,微服务的管控由开发平台提供,形成完整运行链。并且每个微服务可以单独修改、构建并部署,对其他微服务不会构成影响。
本申请实施例实现了基于微服务架构的统一应用开发平台.平台提供生成微服务的标准开发框架,屏蔽了复杂的技术细节,研发人员只需关注业务代码的编写和微服务配置。平台的微服务框架强化了***的模块化结构,在该架构下每一个业务模块都是一个可以独立部署和运行的单元,模块间以消息驱动API的形式定义了清晰的界限。同时,平台为微服务封装了服务注册器、服务发现器、服务提供者列表和服务注册中心,代码自动生成,服务监控等功能。通过平台提供的微服务开发框架,可以快速建立起一个高内聚、低耦合的微服务应用,达到“开发标准化、***模块化、应用服务化”的目标。
本申请实施例提供的业务处理***为微服务开发框架,具有以下技术特点:
(1)、能够监控服务运行状态,便于开发者及时发现服务异常情况。
(2)、对服务调用接口动态监控和记录,并以记录结果来作为应用程序实际调用平台API的依据。
(3)、提供线上swagger线上测试环境使测试人员更加方便。
(4)、后台管理***提供代码自动生成,可以简单生成controller,service,mapper等类并且提供一些常用方法供开发者调用。这样大大减少了开发人员在扩展新的微服务代码时需要写controller,service,mapper等这些重复代码。
(5)、提供构建监控功能,可以监控开发人员提交代码后部署流程日志,便于开发人员定位问题。
可见,本申请具有以下技术效果:
1、易于开发和维护,启动快:一个开发者在使用该微服务开发框架只会关注一个特定的业务功能,所以它业务清晰,代码量少,启动快。开发和维护单个微服务较于单体架构相对简单。而整个应用是由若干个微服务构建而成的,所以整个应用也会被维持在一个可控状态。
2、局部修改容易部署:单体应用架构只要修改,就需要重新部署整个应用且容易出错,微服务开发框架解决了这样问题。一般情况下,对某个微服务修改,只需要重新部署这个服务即可,出错的概率大大降低。
3、按需伸缩:可根据需求,实现细粒度扩展。例如,***中某个微服务遇到了瓶颈,可以结合这个微服务业务特点,增加内存,升级CPU或者增加节点。
图12为本申请实施例的业务处理设备的一种硬件装置示意图,如图12所示,业务处理设备1200包括:一个处理器1201、至少一个通信总线1202、用户接口1203、至少一个外部通信接口1204和存储器1205。其中,通信总线1202配置为实现这些组件之间的连接通信。其中,外部通信接口1204可以包括标准的有线接口和无线接口。
其中,所述处理器1201用于运行所述计算机程序时,以实现上述实施例中提供的业务处理方法中的步骤。
上述本申请实施例揭示的方法可以应用于所述处理器1201中,或者由所述处理器1201实现。所述处理器1201可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过所述处理器1201中的硬件的集成逻辑电路或者软件形式的指令完成。上述的所述处理器1201可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。所述处理器1201可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器1205,所述处理器1201读取存储器1205中的信息,结合其硬件完成前述方法的步骤。
这里需要指出的是:以上设备实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本申请终端实施例中未披露的技术细节,本领域的技术人员请参照本申请方法实施例的描述而理解,为节约篇幅,这里不再赘述。
在示例性实施例中,本申请实施例还提供了一种存储介质,可以为计算机可读存储介质,例如包括存储计算机程序的存储器1205,上述计算机程序可由处理器1201处理,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、FlashMemory、磁表面存储器、光盘、或CD-ROM等存储器。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器处理时实现上述实施例中提供的业务处理方法中的步骤。
这里需要指出的是:以上存储介质实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本申请终端实施例中未披露的技术细节,本领域的技术人员请参照本申请方法实施例的描述而理解,为节约篇幅,这里不再赘述。
可以理解,本申请实施例的存储器(存储器1205)可以是易失性存储器或者非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-OnlyMemory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-OnlyMemory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-OnlyMemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random AccessMemory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random AccessMemory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (12)
1.一种业务处理方法,其特征在于,应用于业务处理***,所述业务处理***由微服务构成,所述微服务中包括:接口网关微服务、鉴权微服务和业务微服务,所述方法包括:
在所述接口网关微服务,接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务;
在所述鉴权微服务,确定所述账号和密码认证通过后,为所述账号分配令牌;
在所述接口网关微服务,接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务;
在所述业务微服务,对所述业务请求进行处理。
2.根据权利要求1所述的方法,其特征在于,将所述业务请求发送至所述业务微服务,包括:
确定接收的业务请求的业务类型,确定所述业务微服务中,所述业务类型对应的目标业务微服务;
相应地,在所述目标业务微服务,对所述业务请求进行处理。
3.根据权利要求1所述的方法,其特征在于,所述微服务还包括:服务注册微服务,
在所述服务注册微服务,对所述微服务进行注册,并构建不同的微服务之间的关联关系。
4.根据权利要求3所述的方法,其特征在于,所述微服务包括第一微服务和第二微服务,所述第一微服务和所述第二微服务为所述业务处理***中不同的微服务;所述方法还包括:
在所述第一微服务,对所述业务请求处理后,向所述服务注册微服务发送调用消息;
在所述服务注册微服务,根据所述第一微服务确定所述第二微服务的地址信息,并向所述第一微服务返回所述第二微服务的地址信息;
在所述第一微服务,基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二微服务的地址信息,调用所述第二微服务,并将所述处理后的业务请求发送至调用的所述第二微服务,包括:
基于所述地址信息,消息驱动所述第一微服务和所述第二微服务之间的接口,基于所驱动的接口进行所述第二微服务的调用,并基于所驱动的接口,将所述处理后的业务请求发送至调用的所述第二微服务。
6.根据权利要求1所述的方法,其特征在于,所述微服务还包括:前端微服务,所述方法还包括:
在所述前端微服务,接收所述业务请求,并输出所述目标业务微服务对所述业务请求的处理结果。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述前端微服务,接收为所述账号分配的令牌,在所述业务请求中封装所述为所述账号分配的令牌,将封装有为所述账号分配的令牌的业务请求发送至所述接口网关微服务;
在所述接口网关微服务,接收所述业务微服务对所述业务请求的处理结果,将所述处理结果发送至所述前端微服务。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述微服务还包括:服务流控微服务,所述方法还包括:
在所述服务流控微服务,对运行的微服务进行监控,根据运行的各微服务的优先级,对应的分配资源。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述服务流控微服务,检测运行的微服务所使用的资源总使用量,以及当所述资源总使用量大于设定的资源使用阈值时,对所运行的微服务的优先级进行调整。
10.一种业务处理***,其特征在于,所述业务处理***由微服务构成,所述微服务中包括接口网关微服务、鉴权微服务和业务微服务;其中,
所述接口网关微服务,用于接收登陆请求,将所述登陆请求携带的账号和密码发送至鉴权微服务;
所述鉴权微服务,用于确定所述账号和密码认证通过后,为所述账号分配令牌;
所述接口网关微服务,还用于接收所述账号对应的业务请求,获取所述业务请求携带的令牌和为所述账号分配的令牌,并确定所述业务请求携带的令牌和为所述账号分配的令牌相同时,将所述业务请求发送至所述业务微服务;
所述业务微服务,对所述业务请求进行处理。
11.一种业务处理设备,其特征在于,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器用于运行所述计算机程序时,执行权利要求1至9任一项所述业务处理方法中的步骤。
12.一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9任一项所述业务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731249.2A CN112350978A (zh) | 2019-08-08 | 2019-08-08 | 一种业务处理方法、***、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731249.2A CN112350978A (zh) | 2019-08-08 | 2019-08-08 | 一种业务处理方法、***、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112350978A true CN112350978A (zh) | 2021-02-09 |
Family
ID=74366870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910731249.2A Withdrawn CN112350978A (zh) | 2019-08-08 | 2019-08-08 | 一种业务处理方法、***、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112350978A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472794A (zh) * | 2021-07-05 | 2021-10-01 | 福州数据技术研究院有限公司 | 基于微服务的多应用***权限统一管理方法和计算机可读存储介质 |
CN113542217A (zh) * | 2021-06-07 | 2021-10-22 | 广发银行股份有限公司 | 一种服务订阅*** |
CN113704755A (zh) * | 2021-07-13 | 2021-11-26 | 奇安信科技集团股份有限公司 | 一种文件检测方法、装置、电子设备、程序及存储介质 |
CN114189384A (zh) * | 2021-12-14 | 2022-03-15 | 中国建设银行股份有限公司 | 业务处理方法、装置、设备及存储介质 |
CN114327389A (zh) * | 2021-12-24 | 2022-04-12 | 商派软件有限公司 | 应用管理方法、账号管理插件以及应用管理*** |
CN114816791A (zh) * | 2022-04-18 | 2022-07-29 | 北京有竹居网络技术有限公司 | 数据服务提供方法、装置、介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150281225A1 (en) * | 2014-03-27 | 2015-10-01 | Microsoft Corporation | Techniques to operate a service with machine generated authentication tokens |
CN108901022A (zh) * | 2018-06-28 | 2018-11-27 | 深圳云之家网络有限公司 | 一种微服务统一鉴权方法及网关 |
CN109327477A (zh) * | 2018-12-06 | 2019-02-12 | 泰康保险集团股份有限公司 | 认证鉴权方法、装置及存储介质 |
CN109743163A (zh) * | 2019-01-03 | 2019-05-10 | 优信拍(北京)信息科技有限公司 | 微服务架构中的权限认证方法、装置及*** |
-
2019
- 2019-08-08 CN CN201910731249.2A patent/CN112350978A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150281225A1 (en) * | 2014-03-27 | 2015-10-01 | Microsoft Corporation | Techniques to operate a service with machine generated authentication tokens |
CN108901022A (zh) * | 2018-06-28 | 2018-11-27 | 深圳云之家网络有限公司 | 一种微服务统一鉴权方法及网关 |
CN109327477A (zh) * | 2018-12-06 | 2019-02-12 | 泰康保险集团股份有限公司 | 认证鉴权方法、装置及存储介质 |
CN109743163A (zh) * | 2019-01-03 | 2019-05-10 | 优信拍(北京)信息科技有限公司 | 微服务架构中的权限认证方法、装置及*** |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542217A (zh) * | 2021-06-07 | 2021-10-22 | 广发银行股份有限公司 | 一种服务订阅*** |
CN113542217B (zh) * | 2021-06-07 | 2023-05-26 | 广发银行股份有限公司 | 一种服务订阅*** |
CN113472794A (zh) * | 2021-07-05 | 2021-10-01 | 福州数据技术研究院有限公司 | 基于微服务的多应用***权限统一管理方法和计算机可读存储介质 |
CN113472794B (zh) * | 2021-07-05 | 2023-08-15 | 福州数据技术研究院有限公司 | 基于微服务的多应用***权限统一管理方法和存储介质 |
CN113704755A (zh) * | 2021-07-13 | 2021-11-26 | 奇安信科技集团股份有限公司 | 一种文件检测方法、装置、电子设备、程序及存储介质 |
CN114189384A (zh) * | 2021-12-14 | 2022-03-15 | 中国建设银行股份有限公司 | 业务处理方法、装置、设备及存储介质 |
CN114189384B (zh) * | 2021-12-14 | 2024-04-02 | 中国建设银行股份有限公司 | 业务处理方法、装置、设备及存储介质 |
CN114327389A (zh) * | 2021-12-24 | 2022-04-12 | 商派软件有限公司 | 应用管理方法、账号管理插件以及应用管理*** |
CN114816791A (zh) * | 2022-04-18 | 2022-07-29 | 北京有竹居网络技术有限公司 | 数据服务提供方法、装置、介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112350978A (zh) | 一种业务处理方法、***、设备及存储介质 | |
US11921703B2 (en) | Dag based methods and systems of transaction processing in a distributed ledger | |
US11496523B2 (en) | Policy engine for cloud platform | |
EP2313833B1 (en) | Service integration platform system and method for internet services | |
US20120311157A1 (en) | Integrated information technology service management for cloud resources | |
US10798218B2 (en) | Environment isolation method and device | |
US9507927B2 (en) | Dynamic identity switching | |
AU2016203802A1 (en) | Integrated information technology service management for cloud resources | |
US11140147B2 (en) | SAML SSO UX improvements | |
CN112543169B (zh) | 一种认证方法、装置、终端及计算机可读存储介质 | |
CN112149079A (zh) | 基于微服务架构的规划评审管理平台及用户访问授权方法 | |
US20230061228A1 (en) | Managing shared applications at the edge of a content delivery network | |
CN111510444A (zh) | 容器的远程访问方法、***、服务端和访问辅助组件 | |
US20180052671A1 (en) | System and method to control hybrid deployment of an application | |
CN115086166A (zh) | 计算***、容器网络配置方法及存储介质 | |
CN112929195A (zh) | 服务***、由服务***执行的方法、处理装置和存储介质 | |
CN115604344B (zh) | 一种微服务的限流方法及装置 | |
WO2024066018A1 (zh) | 一种智能合约的跨链调用方法及装置 | |
CN116932251B (zh) | 基于微前端的***集成方法及*** | |
US20240248894A1 (en) | Dag based methods and systems of transaction processing in a distributed ledger | |
CN116126554A (zh) | 智能合约的跨链调用方法及装置 | |
CN116827925A (zh) | 应用程序的管理方法和装置、存储介质及电子设备 | |
CN115665141A (zh) | 一种智能合约的跨链调用方法及装置 | |
CN117971339A (zh) | 一种基于qiankun框架的前端*** | |
CN118199985A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210209 |
|
WW01 | Invention patent application withdrawn after publication |