CN113132434B - 一种分布式业务处理方法、装置、设备及存储介质 - Google Patents
一种分布式业务处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113132434B CN113132434B CN201911416396.7A CN201911416396A CN113132434B CN 113132434 B CN113132434 B CN 113132434B CN 201911416396 A CN201911416396 A CN 201911416396A CN 113132434 B CN113132434 B CN 113132434B
- Authority
- CN
- China
- Prior art keywords
- service
- client
- micro service
- node
- micro
- 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 claims abstract description 17
- 230000004044 response Effects 0.000 claims abstract description 119
- 238000012545 processing Methods 0.000 claims abstract description 94
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000002159 abnormal effect Effects 0.000 claims abstract description 23
- 238000012795 verification Methods 0.000 claims description 28
- 230000015556 catabolic process Effects 0.000 abstract description 6
- 230000005540 biological transmission Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000006855 networking Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- 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/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- 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/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种分布式业务处理方法、装置、设备及存储介质,所述方法包括基于目标业务响应请求中携带的数据验证第一客户端是否订阅目标业务的微服务集群中的微服务节点,微服务集群对应多个微服务节点;当确定第一客户端订阅微服务节点时,基于各微服务节点的状态信息验证第一客户端订阅的微服务节点的工作状态是否正常;当第一客户端订阅的微服务节点的工作状态异常时,分配可用的微服务节点,并发送目标业务响应数据至可用的微服务节点。利用本申请提供的技术方案可解决客户端连接数量持续增大造成服务端***性能瓶颈问题,一个微服务节点故障可由其他微服务节点处理,避免节点崩溃造成大面积的服务无法访问的风险,提升了业务处理能力。
Description
技术领域
本发明涉及车联网技术领域,具体涉及一种分布式业务处理方法、装置、设备及存储介质。
背景技术
在当前科技背景下,基于物联网的车智能产业被推上了科技的风口浪尖,为了区分其与物联网的区别,人们称之为“车联网”。车联网的理念是:以行驶的车为数据主体,通过数据传输协议,实现车与云端的数据通讯及数据分析,从而为驾驶者提供安全,智能,舒适的驾驶感受。
消息队列传输MQTT(Message Queuing Telemetry Transport,简称MQTT)协议,是一个由IBM工程师发明的基于“发布-订阅模式”的物联网消息传输协议,此协议的设计初衷是针对带宽受限制,网络区域覆盖小且需要设备远程连接的使用场景。MQTT协议利用自己自身的特性,例如“消息传输质量机制(QoS)”,“发布-订阅(pub-sub)模式”等,完美的解决了上述物联网难点。现有技术已经有基于MQTT协议的单节点的集中式消息传输架构来进行业务处理,利用MQTT的特性,使每个设备在服务器内都能创建一个虚拟的数据通道和设备镜像,但当***的设备连接量达到或者超过200K后,将有极大可能出现***性能瓶颈,如设备接入数量持续增长则***有崩溃的风险。一旦出现***崩溃,则会造成大面积的服务无法访问的风险。因此,需要提供更加有效的方案。
发明内容
为了解决现有技术的问题,本发明提供了一种分布式业务处理方法、装置、计算机设备及存储介质。所述技术方案如下:
本申请一方面提供了一种分布式业务处理方法,所述方法包括:
接收第一客户端发送的目标业务响应请求,所述目标业务响应请求为所述第一客户端响应于第二客户端发送的目标业务的业务请求的请求;
基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;
当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送基于目标业务响应请求生成的目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
本申请另一方面提供了一种分布式业务处理装置,所述装置包括:
第一数据接收模块,用于接收第一客户端发送的目标业务响应请求,所述目标业务响应请求为所述第一客户端响应于第二客户端发送的目标业务的业务请求的请求;
节点订阅验证模块,用于基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;
节点状态验证模块,用于当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
第二数据发送模块,用于当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送基于目标业务响应请求生成的目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
节点分配模块,用于当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
本申请另一方面提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现所述分布式业务处理方法。
本申请另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现所述分布式业务处理方法。
本申请提供的分布式业务处理方法、装置、设备及存储介质,具有如下技术效果:
本申请通过基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送基于目标业务响应请求生成的目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。通过本申请的技术方案能够解决由于客户端连接数量持续增大造成的服务端***性能瓶颈问题,当一个微服务节点故障时可由其他正常工作的微服务节点接收数据并进行处理,避免了使用集中式架构时一个节点崩溃则造成大面积的服务无法访问的风险,提升了业务处理能力。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的另一种应用环境的示意图;
图3是本申请实施例提供的一种分布式业务处理的流程图;
图4是本申请实施例提供的另一种分布式业务处理的流程图;
图5是本申请实施例提供的另一种分布式业务处理的流程图;
图6是本申请实施例提供的另一种分布式业务处理的流程图;
图7是本申请实施例提供的另一种分布式业务处理的流程图;
图8是本申请实施例提供的所述代理服务器获取各微服务节点的状态信息及进行数据转发的实施例示意图;
图9是本申请实施例提供的另一种分布式业务处理的流程图;
图10是本申请实施例提供的另一种分布式业务处理的流程图;
图11是本申请实施例提供的一种分布式业务处理装置示意图;
图12是本申请实施例提供的一种分布式业务处理的服务器的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图,如图1所示,该应用环境可以包括第一客户端100、微服务集群200、代理服务器300及第二客户端400。
在本发明书实施例中,第一客户端100可以用于接收第二客户端400发送的目标业务的业务请求并执行,以及向代理服务器300发送目标业务响应请求等。具体地,第一客户端100可以包括处理器101和存储器102,所述存储器102可以用于存储代理服务器300发送的处理后的目标业务的业务请求及车辆数据等,所述处理器101可以用于执行目标业务的业务请求等。第一客户端100还可以包括具有发声、发光等功能的实体设备。在具体的实施例中,第一客户端100可以包括但不限于车辆。
在本发明实施例中,微服务集群200可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。微服务集群200可以包括有网络通信单元、处理器和存储器等等。具体的,所述微服务集群200可以用于接收第二客户端400发送目标业务的业务请求(例如,远程寻车的业务请求)、处理所述目标业务的业务请求以及处理目标业务响应数据等。
在本发明实施例中,代理服务器300可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。代理服务器300可以包括有网络通信单元、处理器和存储器等等。具体的,所述代理服务器300可以用于接收微服务集群200发送的处理后的目标业务的业务请求、将所述处理后的目标业务的业务请求转发到所述第一客户端100、接收第一客户端100发送的目标业务响应请求并基于所述目标业务响应请求中携带的数据进行验证处理及转发等操作,以及将目标业务响应数据发送至微服务集群200等。
在本发明实施例中,第二客户端400可以用于发送目标业务的业务请求至微服务集群200以及接收来自微服务集群200的处理后的目标业务响应数据。具体的,所述第二客户端400可以包括处理器401和存储器402,所述存储器402可以用于存储来自微服务集群200的处理后的目标业务响应数据,所述处理器401可以用于执行相关业务指令。具体的实施例中,第二客户端400可以包括但不限于智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序(APP)、网页、微信小程序等。本发明实施例中客户端上运行的操作***可以包括但不限于安卓***、IOS***、linux、windows等。在具体的实施例中,运行于实体设备中的软体还可以包括:例如,一些服务商提供给用户的网页页面,也可以为该些服务商提供给用户的应用,比如车辆远程控制软件、获取车辆信息的服务台等。
请参照图1,在实际应用中,数据下行时可由第二客户端400发出目标业务的业务请求(例如,远程寻车的业务请求和远程开启空调业务)到微服务集群200,所述微服务集群对应多个微服务节点;微服务集群200处理所述目标业务的业务请求(例如,进行数据加解密,逻辑判断等),并将处理后的目标业务的业务请求发送至代理服务器300,代理服务器300基于MQTT协议将所述处理后的目标业务的业务请求转发到所述第一客户端100。
数据上行时可由第一客户端100向代理服务器300发送目标业务响应请求,代理服务器300基于所述目标业务响应请求中携带的数据进行验证处理及转发等操作,将目标业务响应数据发送至微服务集群200,微服务集群200处理所述目标业务响应数据并下发至第二客户端400。
此外,需要说明的是,图1仅仅是本申请实施例提供的一种应用环境示例,在实际应用中,第一客户端100包括的实体设备并不仅限于具有发声、发光等功能的实体设备。
请参阅图2,所述代理服务器300可以由一个独立运行的服务器进行实现,需要说明的是,这并不用以限制本发明,在实际应用中,所述代理服务器300也可以包括分布式服务器,或者由多个服务器组成的服务器集群。在本说明书实施例中,以由多个服务器组成的服务器集群为例,所述代理服务器300可以包括:
第一代理服务器310、第二代理服务器320。
图2是本申请实施例提供的另一种应用环境的示意图,如图2所示,当所述代理服务器300包括第一代理服务器310和第二代理服务器320时,该应用环境可以包括第一客户端100、微服务集群200、第一代理服务器310、第二代理服务器320及第二客户端400。
在本发明书实施例中,第一客户端100可以用于接收第二客户端400发送的目标业务的业务请求并执行,以及向第一代理服务器310发送目标业务响应请求等。具体地,第一客户端100可以包括处理器101和存储器102,所述存储器102可以用于存储代理服务器300发送的处理后的目标业务的业务请求及车辆数据等,所述处理器101可以用于执行目标业务的业务请求等。第一客户端100还可以包括具有发声、发光等功能的实体设备。在具体的实施例中,第一客户端100可以包括但不限于车辆。
在本发明实施例中,微服务集群200可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。微服务集群200可以包括有网络通信单元、处理器和存储器等等。具体的,所述微服务集群200可以用于接收第二客户端400发送目标业务的业务请求(例如,远程寻车的业务请求)、处理所述目标业务的业务请求以及处理目标业务响应数据等。
在本发明实施例中,第一代理服务器310和第二代理服务器320可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。第一代理服务器310和第二代理服务器320可以包括有网络通信单元、处理器和存储器等等。具体的,所述第一代理服务器310可以用于接收微服务集群200发送的处理后的目标业务的业务请求、将所述处理后的目标业务的业务请求转发到所述第一客户端100、接收第一客户端100发送的目标业务响应请求并基于所述目标业务响应请求中携带的数据进行验证处理及转发等操作,以及将目标业务响应数据发送至微服务集群200等。第二代理服务器320能够获取各微服务节点的状态信息,根据各微服务节点的状态信息向第一代理服务器310发送指示消息,从而使得第一代理服务器310基于指示消息进行数据转发。
在本发明实施例中,第二客户端400可以用于发送目标业务的业务请求至微服务集群200以及接收来自微服务集群200的处理后的目标业务响应数据。具体的,所述第二客户端400可以包括处理器401和存储器402,所述存储器402可以用于存储来自微服务集群200的处理后的目标业务响应数据,所述处理器401可以用于执行相关业务指令。具体的实施例中,第二客户端400可以包括但不限于智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序(APP)、网页、微信小程序等。本发明实施例中客户端上运行的操作***可以包括但不限于安卓***、IOS***、linux、windows等。在具体的实施例中,运行于实体设备中的软体还可以包括:例如,一些服务商提供给用户的网页页面,也可以为该些服务商提供给用户的应用,比如车辆远程控制软件、获取车辆信息的服务台等。
请参照图2,在实际应用中,数据下行时可由第二客户端400发出目标业务的业务请求(例如,远程寻车的业务请求和远程开启空调业务)到微服务集群200,所述微服务集群200对应多个微服务节点,微服务集群200处理所述目标业务的业务请求(例如,进行数据加解密,逻辑判断等),并将处理后的目标业务的业务请求发送至第一代理服务器310,第一代理服务器310基于MQTT协议将所述处理后的目标业务的业务请求转发到所述第一客户端100。
数据上行时可由第一客户端100向第一代理服务器310发送目标业务响应请求,第一代理服务器310基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,当第一代理服务器310确定所述第一客户端订阅所述目标业务的微服务集群200中的微服务节点时,所述第二代理服务器320基于各节点的状态信息判断第一客户端100订阅的微服务节点的工作状态是否正常,并基于各微服务节点的状态信息发送指示消息到第一代理服务器310,第一代理服务器310基于第二代理服务器320发送的指示消息转发目标业务响应数据到所述指示消息对应的微服务节点;当确定所述第一客户端100未订阅微服务节点时,所述第二代理服务器320基于各节点的状态信息为所述第一客户端100分配可用的微服务节点,并发送指示消息到所述第一代理服务器310,第一代理服务器310基于第二代理服务器320发送的指示消息转发目标业务响应数据到所述指示消息对应的微服务节点。微服务集群200处理所述目标业务响应数据并下发至第二客户端400。
此外,需要说明的是,图2仅仅是本申请实施例提供的一种应用环境示例,本发明并不以此为限。
实施例
在本说明书实施例中,所述代理服务器可以由一个独立运行的服务器进行实现,需要说明的是,这并不用以限制本发明,在实际应用中,所述代理服务器也可以包括分布式服务器,或者由多个服务器组成的服务器集群在本说明书实施例中,以由多个服务器组成的服务器集群为例,所述代理服务器可以包括:
第一代理服务器、第二代理服务器。。
图3、4是本申请实施例提供的一种分布式业务处理方法的流程图,请参照图3、4,本实施例提供的分布式业务处理方法包括如下步骤:
S301,第二客户端发送目标业务的业务请求至所述目标业务的微服务集群。
在实际应用中,所述目标业务可以包括但不限于:远程车辆开窗业务、远程寻车业务、远程闪灯鸣笛业务、远程开启空调业务及服务台进行车辆数据统计的业务等。
具体地,所述目标业务的微服务集群是用于处理所述目标业务的微服务集群,所述微服务集群对应多个微服务节点。
在后续进行数据传输时,通过将数据发送到所述多个微服务节点中的任意一个即可发送到所述微服务集群;这样能够解决由于客户端连接数量持续增大造成的服务端***性能瓶颈问题,当一个微服务节点故障时可由其他正常工作的微服务节点接收数据并进行处理,避免了使用集中式架构时一个节点崩溃则造成大面积的服务无法访问的风险,提升了业务处理能力。
在实际应用中,所述微服务集群对应的微服务可以包括但不限于:数据加解密、数据存储、逻辑判断及逻辑解析等。
S303,所述目标业务的微服务集群处理所述目标业务的业务请求并将处理后的目标业务的业务请求发送至所述代理服务器;
具体地,基于MQTT协议的特性,所述目标业务的微服务集群将处理后的目标业务的业务请求发送至所述代理服务器时,仅需将处理后的目标业务的业务请求发送至所述代理服务器中定义好的下行业务主题即可,在实际应用中,所述下行业务主题具体可以包括,例如,设备/下行传输/设备ID。
所述下行业务主题相当于一个数据传输通道,通过将处理后的目标业务的业务请求发送至所述代理服务器中定义好的下行业务主题,能够提升数据传输及业务处理的效率和安全性。
具体地,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述目标业务的微服务集群处理所述目标业务的业务请求并将处理后的目标业务的业务请求发送至所述代理服务器可以包括:
所述目标业务的微服务集群处理所述目标业务的业务请求并将处理后的目标业务的业务请求发送至所述第一代理服务器。
S305,所述代理服务器将所述处理后的目标业务的业务请求转发至网关服务器。
具体地,基于MQTT的“订阅-发布”特性,所述代理服务器将所述处理后的目标业务的业务请求转发至网关服务器可以包括:
所述网关服务器通过订阅所述代理服务器中定义好的下行业务主题,当所述代理服务器往下行业务主题中推送所述处理后的目标业务的业务请求时,所述网关服务器能够立即收到所述处理后的目标业务的业务请求。
具体地,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器将所述处理后的目标业务的业务请求转发至网关服务器可以包括:
所述第一代理服务器将所述处理后的目标业务的业务请求转发至网关服务器。
S307,所述网关服务器将所述处理后的目标业务的业务请求发送至所述第一客户端。
具体地,所述网关服务器能够消费所述代理服务器中定义好的下行业务主题中的数据,即所述处理后的目标业务的业务请求,并将所述处理后的目标业务的业务请求发送至所述第一客户端。
如图4所示,在所述网关服务器将所述处理后的目标业务的业务请求发送至所述第一客户端之后,所述方法还包括:
S401,所述第一客户端响应于所述第二客户端发送的目标业务的业务请求,向所述网关服务器发送目标业务响应请求;
具体地,所述网关服务器包括多个网关节点,因此在实际应用中,当有大量设备需要进行网关验证的情况下能够保证网关服务器的正常运行。
S403,基于所述目标业务响应请求,所述网关服务器进行数据传输验证;
具体地,所述基于所述目标业务响应请求,所述网关服务器进行数据传输验证可以包括:
(1)基于所述目标业务响应请求,所述网关服务器进行设备连接安全验证;
具体地,所述设备连接安全验证是所述网关服务器针对所述第一客户端能否连接服务器做的安全验证,具体地,所述设备连接安全验证可以包括所述网关服务器基于所述目标业务响应请求中携带的数据进行安全逻辑验证,在实际应用中,所述安全逻辑验证可以包括但不限于:证书验证、信息验证及IP验证。若所述设备连接安全验证通过,则所述第一客户端成功连接服务器。
(2)基于所述目标业务响应请求,所述网关服务器进行业务主题订阅验证;
具体地,所述设备连接安全验证通过之后,基于所述目标业务响应请求中携带的数据,所述网关服务器可以验证所述第一客户端是否订阅了目标业务主题,若所述第一客户端订阅了目标业务主题,则继续进行数据传输;若未订阅,则传输数据丢失。
通过网关服务器进行数据传输验证,能够提高数据传输的安全性,提升了业务处理的可靠性。
S405,当所述数据传输验证通过时,所述网关服务器将所述目标业务响应请求发送至所述代理服务器;
图5是当所述代理服务器包括第一代理服务器、第二代理服务器时所述方法的流程图,请结合图2与图5,,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述当所述数据传输验证通过时,所述网关服务器将所述目标业务响应请求发送至所述代理服务器可以包括:
当所述数据传输验证通过时,所述网关服务器将所述目标业务响应请求发送至所述第一代理服务器。
S407,所述代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点。
具体地,请继续参照图2与图5,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点可以包括:
所述第一代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点;
具体地,所述微服务集群对应多个微服务节点,因此所述第一代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点时,仅需所述第一代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的任一个微服务节点即可。
在本说明书实施例中,所述第一代理服务器基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点时,所述第一代理服务器可以基于MQTT协议的特性,验证所述目标业务响应请求中是否包含相关的微服务节点订阅信息,具体地,所述订阅信息可以包括微服务节点标识信息。
S409,当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,所述代理服务器基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
具体地,请继续参照图2与图5,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,所述代理服务器基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常可以包括:
当所述第一代理服务器确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,所述第二代理服务器基于各节点的状态信息判断第一客户端订阅的微服务节点的工作状态是否正常;
具体地,所述状态信息包括:微服务节点上线信息、微服务节点下线信息及微服务节点异常断线信息。
在本说明书实施例中,所述方法还包括:
所述代理服务器获取各微服务节点的状态信息。
具体地,所述状态信息包括:微服务节点上线信息、微服务节点下线信息及微服务节点异常断线信息。
具体地,所述代理服务器获取各微服务节点的状态信息可以包括:
(1)当每一微服务节点上线或下线时,所述代理服务器基于节点状态主题接收所述每一微服务节点推送的微服务节点上线信息或微服务节点下线信息;
(2)所述代理服务器接收所述每一微服务节点每隔第一预设时间发送的心跳请求,当所述代理服务器超过第二预设时间未收到所述心跳请求,确定所述微服务节点异常断线信息。
具体地,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器获取各微服务节点的状态信息可以包括:
所述第二代理服务器获取各微服务节点的状态信息。
具体地,所述第二代理服务器获取各微服务节点的状态信息可以包括:
(1)当每一微服务节点上线或下线时,所述第二代理服务器基于节点状态主题接收所述每一微服务节点推送的微服务节点上线信息或微服务节点下线信息;
具体地,由于每个微服务集群对应多个微服务节点,各微服务节点的状态可能会随时发生变化,例如,微服务节点的上线或者下线,当各微服务节点上线或者下线时,各微服务节点会即时发送其上、下线的状态信息到所述第一代理服务器上定义好的节点状态主题上,所述第二代理服务器通过订阅所述节点状态主题,能够在各微服务节点发送其上、下线的状态信息到所述节点状态主题时同步接收到所述上、下线的状态信息。
(2)所述第一代理服务器接收所述每一微服务节点每隔第一预设时间发送的心跳请求,当所述第一代理服务器超过第二预设时间未收到所述心跳请求,确定所述微服务节点异常断线信息。
具体地,所述第一预设时间及第二预设时间可以根据实际应用需求进行设定。
由于各微服务节点也有可能由于网络故障、软硬件故障等造成微服务节点状态异常。因此,各微服务节点通过发送心跳请求到所述第一代理服务器,这样当所述第一代理服务器超过第二预设时间未收到所述心跳请求时,即可确定所述微服务节点异常断线信息,能够使得所述第一代理服务器及时获取各微服务节点的状态。
通过所述第二代理服务器获取各微服务节点的状态信息,能够使得所述第二代理服务器基于所述各微服务节点的状态信息给所述第一代理服务器发送指示消息,指示所述第一代理服务器如何进行数据转发,即转发至哪一个微服务节点,降低了单个服务器工作的压力,降低了服务器崩溃的风险,提高了业务处理能力及业务处理的可靠性。
请继续参照图4,所述方法还包括:
S411,当确定所述第一客户端订阅的微服务节点的工作状态正常时,所述代理服务器发送目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
具体地,请继续参照图2与图5,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述当确定所述第一客户端订阅的微服务节点的工作状态正常时,所述代理服务器发送目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理可以包括:
当确定所述第一客户端订阅的微服务节点的工作状态正常时,所述第二代理服务器发送第一指示消息到第一代理服务器,所述第一代理服务器基于所述第一指示消息将所述目标业务响应请求发送至所述第一客户端订阅的微服务节点进行数据处理。
具体地,所述第一指示消息中包括所述第一客户端订阅的微服务节点的节点标识信息,基于所述第一客户端订阅的微服务节点的节点标识信息,所述第一代理服务器将目标业务响应请求至所述第一客户端订阅的微服务节点进行数据处理。
请参照图6,如图6所示,当确定所述第一客户端订阅的微服务节点的工作状态异常时,所述方法还包括:
S413,所述代理服务器为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
具体地,请结合图2与图7,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理可以包括:
基于各微服务节点的状态信息,所述第二代理服务器发送第二指示消息到第一代理服务器,所述第一代理服务器基于所述第二指示消息将所述目标业务响应请求发送至所述第二指示消息对应的微服务节点进行数据处理。
具体地,所述第二指示消息中包括所述第二代理服务器为所述第一客户端分配可用的微服务节点的节点标识信息,基于所述第二代理服务器为所述第一客户端分配可用的微服务节点的节点标识信息,所述第一代理服务器将目标业务响应请求发送至该微服务节点进行数据处理。在一个实施例中,如图8所示,节点状态主题1和节点状态主题2是两个定义在所述第一代理服务器上的两个节点状态主题,微服务节点1将自己的状态信息推送至节点状态主题1,微服务节点2将自己的状态信息推送至节点状态主题2,还包括一个用于接收来自第二代理服务器的指示消息的分发主题,当所述微服务节点1向节点状态主题1推送微服务节点下线信息时,所述第二代理服务器基于节点状态主题1同步收到所述微服务节点1向节点状态主题1推送的微服务节点下线信息,若所述第一客户端订阅了微服务节点1,所述第二代理服务器发送第二指示消息到第一代理服务器,此时所述第二指示消息即让所述第一客户端订阅微服务节点2的指示消息,所述第一代理服务器基于所述第二指示消息将所述目标业务响应请求发送至微服务节点2进行数据处理。
当确定所述第一客户端订阅的微服务节点的工作状态异常时,通过所述第二代理服务器基于各微服务节点的状态信息,发送第二指示消息到第一代理服务器,所述第一代理服务器基于所述第二指示消息将所述目标业务响应请求发送至所述第二指示消息对应的微服务节点进行数据处理,能够保证设备端对服务端的异常无感知,提升了业务处理的可靠性和稳定性。
请参照图9,如图9所示,当确定所述第一客户端未订阅微服务节点时,所述方法还包括:
S415,所述代理服务器为所述第一客户端分配微服务节点,并将所述目标业务响应数据发送至所述为所述第一客户端分配的微服务节点进行数据处理。
具体地,请结合图2与图10,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器为所述第一客户端分配微服务节点,并将所述目标业务响应数据发送至所述为所述第一客户端分配的微服务节点进行数据处理可以包括:
基于各微服务节点的状态信息,所述第二代理服务器发送第三指示消息到第一代理服务器,所述第一代理服务器基于所述第三指示消息将所述目标业务响应请求发送至所述第三指示消息对应的微服务节点进行数据处理。
具体地,所述第三指示消息中包括所述第二代理服务器为所述第一客户端分配可用的微服务节点的节点标识信息,基于所述第二代理服务器为所述第一客户端分配可用的微服务节点的节点标识信息,所述第一代理服务器将目标业务响应请求发送至该微服务节点进行数据处理。
当确定所述第一客户端未订阅微服务节点时,通过所述第二代理服务器基于各微服务节点的状态信息,发送第三指示消息到第一代理服务器,所述第一代理服务器基于所述第三指示消息将所述目标业务响应请求发送至所述第三指示消息对应的微服务节点进行数据处理,灵活高效。
在本说明书实施例中,当确定所述目标业务的微服务集群没有可用的微服务节点时,所述方法还包括:
S417,当确定所述微服务集群没有可用的微服务节点时,所述代理服务器保留所述目标业务响应数据,经过第三预设时间之后重试发送所述目标业务响应数据至可用的微服务节点进行数据处理。
具体地,当所述代理服务器包括第一代理服务器、第二代理服务器时,所述代理服务器保留所述目标业务响应数据,经过第三预设时间之后重试发送所述目标业务响应数据至可用的微服务节点进行数据处理可以包括:
所述第二代理服务器发送第四指示消息到第一代理服务器,基于所述第四指示消息,第一代理服务器保留所述目标业务响应请求,经过第三预设时间之后重试发送所述目标业务响应数据至可用的微服务节点进行数据处理。
具体地,所述第四指示消息包括指示第一代理服务器保留所述目标业务响应请求的消息,基于所述第四指示消息,第一代理服务器保留所述目标业务响应请求,经过第三预设时间之后重试发送所述目标业务响应数据至可用的微服务节点进行数据处理。
具体地,所述第三预设时间可以基于实际应用需要进行设定。
当确定所述目标业务的微服务集群没有可用的微服务节点时,通过所述第二代理服务器发送第四指示消息到第一代理服务器,基于所述第四指示消息,第一代理服务器保留所述目标业务响应请求,经过第三预设时间之后重试发送所述目标业务响应数据至可用的微服务节点进行数据处理,能够进行数据的重新路由,从而确保数据不会丢失,提升了业务处理的可靠性。
在本说明书实施例中,所述方法还包括:
S419,基于所述目标业务响应请求,所述目标业务的微服务集群进行数据处理,并将处理结果数据发送至所述第二客户端。
在本说明书实施例中,通过基于网关服务器进行数据传输验证,能够提高数据传输的安全性,提升了业务处理的可靠性;当确定所述第一客户端订阅的微服务节点的工作状态异常时,通过代理服务器基于各微服务节点的状态信息,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理,能够保证设备端对服务端的异常无感知,提升了业务处理的可靠性和稳定性;通过当确定所述微服务集群没有可用的微服务节点时,保留所述目标业务响应数据,经过第三预设时间之后重试数据发送,能够进行数据的重新路由,从而确保数据不会丢失,提升了业务处理的可靠性。
当所述代理服务器为由多个服务器组成的服务器集群时,所述代理服务器可以包括第一代理服务器及第二代理服务器,通过第二代理服务器获取各微服务节点的状态信息,能够使得第二代理服务器根据各微服务节点的状态信息向第一代理服务器发送指示消息,从而使得第一代理服务器基于指示消息进行数据转发,降低了单个服务器工作的压力,降低了服务器崩溃的风险,提高了业务处理能力及业务处理的可靠性;
本申请实施例还提供了一种分布式业务处理装置,如图11所示,所述装置包括:
第一数据接收模块1110,用于接收第一客户端发送的目标业务响应请求,所述目标业务响应请求为所述第一客户端响应于第二客户端发送的目标业务的业务请求的请求;
节点订阅验证模块1120,用于基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;
节点状态验证模块1130,用于当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
第二数据发送模块1140,用于当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
节点分配模块1150,用于当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
在一个实施例中,所述分布式业务处理装置还可以包括:
节点状态信息获取模块,用于代理服务器获取各微服务节点的状态信息,所述状态信息包括:微服务节点上线信息、微服务节点下线信息及微服务节点异常断线信息。
在一个实施例中,所述分布式业务处理装置还可以包括:
第三数据发送模块,用于当确定第一客户端未订阅所述目标业务的微服务集群中的微服务节点时,代理服务器为所述第一客户端分配微服务节点,并将所述目标业务响应数据发送至所述为所述第一客户端分配的微服务节点进行数据处理。
在一个实施例中,所述分布式业务处理装置还可以包括:
第四数据发送模块,用于当确定所述微服务集群没有可用的微服务节点时,代理服务器保留所述目标业务响应数据,经过第三预设时间之后重试数据发送。
具体地,所述分布式业务处理装置的上述各模块可通过总线进行耦合及通信。
本发明实施例的分布式业务处理装置通过基于网关服务器进行数据传输验证,能够提高数据传输的安全性,提升了业务处理的可靠性;当确定所述第一客户端订阅的微服务节点的工作状态异常时,通过代理服务器基于各微服务节点的状态信息,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理,能够保证设备端对服务端的异常无感知,提升了业务处理的可靠性和稳定性;通过当确定所述微服务集群没有可用的微服务节点时,保留所述目标业务响应数据,经过第三预设时间之后重试数据发送,能够进行数据的重新路由,从而确保数据不会丢失,提升了业务处理的可靠性。
当所述代理服务器为由多个服务器组成的服务器集群时,所述代理服务器可以包括第一代理服务器及第二代理服务器,通过第二代理服务器获取各微服务节点的状态信息,能够使得第二代理服务器各微服务节点的状态信息向第一代理服务器发送指示消息,从而使得第一代理服务器基于指示消息进行数据转发,降低了单个服务器工作的压力,降低了服务器崩溃的风险,提高了业务处理能力及业务处理的可靠性;
本发明实施例提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的分布式业务处理方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本发明实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行,即上述计算机设备可以包括移动终端、计算机终端、服务器或者类似的运算装置。以运行在服务器上为例,图12是本发明实施例提供的一种分布式业务处理方法的服务器的硬件结构框图。如图12所示,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(Central Processing Units,CPU)1210(处理器1210可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1230,一个或一个以上存储应用程序1223或数据1222的存储介质1220(例如一个或一个以上海量存储设备)。其中,存储器1130和存储介质1220可以是短暂存储或持久存储。存储在存储介质1220的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1210可以设置为与存储介质1220通信,在服务器1200上执行存储介质1220中的一系列指令操作。服务器1200还可以包括一个或一个以上电源1260,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1240,和/或,一个或一个以上操作***1221,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM,FreeBSDTM等等。
输入输出接口1240可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器1200的通信供应商提供的无线网络。在一个实例中,输入输出接口1240包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口1240可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图12所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器1200还可包括比图12中所示更多或者更少的组件,或者具有与图12所示不同的配置。
本发明的实施例还提供了一种计算机可读存储介质,所述存储介质可设置于服务器之中以保存用于实现方法实施例中一种分布式业务处理方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的分布式业务处理方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
由上述本发明提供的分布式业务处理方法、装置、计算机设备或存储介质的实施例可见,本发明通过基于网关服务器进行数据传输验证,能够提高数据传输的安全性,提升了业务处理的可靠性;当确定所述第一客户端订阅的微服务节点的工作状态异常时,通过代理服务器基于各微服务节点的状态信息,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理,能够保证设备端对服务端的异常无感知,提升了业务处理的可靠性和稳定性;通过当确定所述微服务集群没有可用的微服务节点时,保留所述目标业务响应数据,经过第三预设时间之后重试数据发送,能够进行数据的重新路由,从而确保数据不会丢失,提升了业务处理的可靠性。
当所述代理服务器为由多个服务器组成的服务器集群时,所述代理服务器可以包括第一代理服务器及第二代理服务器,通过第二代理服务器获取各微服务节点的状态信息,能够使得第二代理服务器各微服务节点的状态信息向第一代理服务器发送指示消息,从而使得第一代理服务器基于指示消息进行数据转发,降低了单个服务器工作的压力,降低了服务器崩溃的风险,提高了业务处理能力及业务处理的可靠性;
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种分布式业务处理方法,其特征在于,应用于代理服务器,所述方法包括:
接收第一客户端发送的目标业务响应请求,所述目标业务响应请求为所述第一客户端响应于第二客户端发送的目标业务的业务请求的请求;
基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;
当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送基于目标业务响应请求生成的目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理;
当确定第一客户端未订阅所述目标业务的微服务集群中的微服务节点时,为所述第一客户端分配微服务节点,并将所述目标业务响应数据发送至所述为所述第一客户端分配的微服务节点进行数据处理;
当确定所述微服务集群没有可用的微服务节点时,保留所述目标业务响应数据,经过第三预设时间之后重试发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取各微服务节点的状态信息,所述状态信息包括:微服务节点上线信息、微服务节点下线信息及微服务节点异常断线信息。
3.根据权利要求2所述的方法,其特征在于,所述获取各微服务节点的状态信息包括:
当每一微服务节点上线或下线时,基于节点状态主题接收所述微服务节点推送的微服务节点上线信息或微服务节点下线信息。
4.根据权利要求2所述的方法,其特征在于,所述获取各微服务节点的状态信息还包括:
接收每一微服务节点每隔第一预设时间发送的心跳请求,当超过第二预设时间未收到所述心跳请求,确定所述微服务节点异常断线信息。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收第一客户端发送的目标业务响应请求之前:
接收处理后的目标业务的业务请求,并将所述处理后的目标业务的业务请求发送至所述第一客户端;所述处理后的目标业务的业务请求为所述目标业务的微服务集群处理所述目标业务的业务请求后发送的请求,所述目标业务的业务请求为所述第二客户端发送至所述目标业务的微服务集群的请求。
6.一种分布式业务处理装置,其特征在于,设置于代理服务器,所述装置包括:
第一数据接收模块,用于接收第一客户端发送的目标业务响应请求,所述目标业务响应请求为所述第一客户端响应于第二客户端发送的目标业务的业务请求的请求;
节点订阅验证模块,用于基于所述目标业务响应请求中携带的数据验证所述第一客户端是否订阅所述目标业务的微服务集群中的微服务节点,所述微服务集群对应多个微服务节点;
节点状态验证模块,用于当确定所述第一客户端订阅所述目标业务的微服务集群中的微服务节点时,基于各微服务节点的状态信息验证所述第一客户端订阅的微服务节点的工作状态是否正常;
第二数据发送模块,用于当确定所述第一客户端订阅的微服务节点的工作状态正常时,发送基于目标业务响应请求生成的目标业务响应数据至所述第一客户端订阅的微服务节点进行数据处理;
节点分配模块,用于当确定所述第一客户端订阅的微服务节点的工作状态异常时,为所述第一客户端分配可用的微服务节点,并发送所述目标业务响应数据至所述可用的微服务节点进行数据处理;
第三数据发送模块,用于当确定第一客户端未订阅所述目标业务的微服务集群中的微服务节点时,为所述第一客户端分配微服务节点,并将所述目标业务响应数据发送至所述为所述第一客户端分配的微服务节点进行数据处理;
第四数据发送模块,用于当确定所述微服务集群没有可用的微服务节点时,保留所述目标业务响应数据,经过第三预设时间之后重试发送所述目标业务响应数据至所述可用的微服务节点进行数据处理。
7.一种分布式业务处理设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1至5任一所述的分布式业务处理方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至5任一所述的分布式业务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911416396.7A CN113132434B (zh) | 2019-12-31 | 2019-12-31 | 一种分布式业务处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911416396.7A CN113132434B (zh) | 2019-12-31 | 2019-12-31 | 一种分布式业务处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113132434A CN113132434A (zh) | 2021-07-16 |
CN113132434B true CN113132434B (zh) | 2023-03-24 |
Family
ID=76770741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911416396.7A Active CN113132434B (zh) | 2019-12-31 | 2019-12-31 | 一种分布式业务处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132434B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778709B (zh) * | 2021-08-25 | 2024-03-12 | 北京达佳互联信息技术有限公司 | 接口调用方法、装置、服务器及存储介质 |
CN113746835A (zh) * | 2021-08-31 | 2021-12-03 | 浙江惠瀜网络科技有限公司 | 数据传输方法、装置、设备和存储介质 |
CN113794597B (zh) * | 2021-09-15 | 2023-05-30 | 中国联合网络通信集团有限公司 | 告警信息处理方法、***、电子设备及存储介质 |
CN115242866B (zh) * | 2022-07-28 | 2024-06-18 | 度小满科技(北京)有限公司 | 微服务调用方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566508A (zh) * | 2017-09-19 | 2018-01-09 | 广东电网有限责任公司信息中心 | 一种自动化运维的短信微服务*** |
CN108712309A (zh) * | 2018-06-11 | 2018-10-26 | 郑州云海信息技术有限公司 | 一种微服务架构下的微服务节点防护方法和*** |
CN109088934A (zh) * | 2018-08-22 | 2018-12-25 | 深圳市轱辘汽车维修技术有限公司 | 一种业务处理***及业务处理方法 |
CN109976935A (zh) * | 2019-03-14 | 2019-07-05 | 北京三快在线科技有限公司 | 微服务架构、微服务节点及其熔断恢复方法、装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070198951A1 (en) * | 2006-02-10 | 2007-08-23 | Metacarta, Inc. | Systems and methods for spatial thumbnails and companion maps for media objects |
-
2019
- 2019-12-31 CN CN201911416396.7A patent/CN113132434B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566508A (zh) * | 2017-09-19 | 2018-01-09 | 广东电网有限责任公司信息中心 | 一种自动化运维的短信微服务*** |
CN108712309A (zh) * | 2018-06-11 | 2018-10-26 | 郑州云海信息技术有限公司 | 一种微服务架构下的微服务节点防护方法和*** |
CN109088934A (zh) * | 2018-08-22 | 2018-12-25 | 深圳市轱辘汽车维修技术有限公司 | 一种业务处理***及业务处理方法 |
CN109976935A (zh) * | 2019-03-14 | 2019-07-05 | 北京三快在线科技有限公司 | 微服务架构、微服务节点及其熔断恢复方法、装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113132434A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113132434B (zh) | 一种分布式业务处理方法、装置、设备及存储介质 | |
CN106358245B (zh) | 移动边缘计算应用负荷分担的方法和控制器 | |
CN113473651B (zh) | 用于向无线终端提供对ip网络的访问的通信***及通信方法 | |
CN109274707B (zh) | 一种负载调度方法及装置 | |
CN109672711B (zh) | 一种基于反向代理服务器Nginx的http请求处理方法及*** | |
CN109842895B (zh) | 一种网络可靠性配置方法、信息传输方法和装置以及*** | |
CN104618164A (zh) | 云计算平台应用快速部署的管理方法 | |
CN109561054B (zh) | 一种数据传输方法、控制器及接入设备 | |
KR102266089B1 (ko) | Mec 시스템 및 그 제어방법 | |
CN101018227A (zh) | 数据管理装置、存储有数据管理程序的存储介质、协议切换装置和方法 | |
WO2020199686A1 (zh) | 一种提供边缘服务的方法、***及计算设备 | |
CN112202918A (zh) | 长连接通信的负载调度方法、装置、设备及存储介质 | |
CN113037599A (zh) | 一种报文处理的方法、设备及存储介质 | |
US20030126244A1 (en) | Apparatus for scheduled service of network requests and a method therefor | |
CN103974224A (zh) | 一种信用控制的方法和设备 | |
CN108829340B (zh) | 存储处理方法、装置、存储介质及处理器 | |
CN113141390B (zh) | Netconf通道管理方法及装置 | |
CN105939278B (zh) | 一种流量处理方法及装置 | |
KR20090071542A (ko) | 호스트 가장 네트워크 디바이스 및 그의 방법 | |
CN115915289A (zh) | 计算任务的策略确定或资源分配方法、装置、网元及介质 | |
CN104426704A (zh) | 整合网络装置及其服务整合方法 | |
CN113535402A (zh) | 基于5g mec的负载均衡处理方法、装置及电子设备 | |
CN113114662A (zh) | 一种单tcp连接处理并发请求的方法及装置 | |
EP2159985A1 (en) | Method, apparatus and system for scheduling contents | |
CN109257227B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220330 Address after: 430056 No. b1336, chuanggu startup area, taizihu cultural Digital Creative Industry Park, No. 18, Shenlong Avenue, Wuhan Economic and Technological Development Zone, Hubei Province Applicant after: Yikatong (Hubei) Technology Co.,Ltd. Address before: No.c101, chuanggu start up zone, taizihu cultural Digital Industrial Park, No.18 Shenlong Avenue, Wuhan Economic and Technological Development Zone, Hubei Province Applicant before: HUBEI ECARX TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |