CN115604333A - 基于dubbo的分布式大数据分析服务调度方法及系统 - Google Patents
基于dubbo的分布式大数据分析服务调度方法及系统 Download PDFInfo
- Publication number
- CN115604333A CN115604333A CN202211245269.7A CN202211245269A CN115604333A CN 115604333 A CN115604333 A CN 115604333A CN 202211245269 A CN202211245269 A CN 202211245269A CN 115604333 A CN115604333 A CN 115604333A
- Authority
- CN
- China
- Prior art keywords
- service
- dubbo
- calling interface
- interface
- remote service
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000007405 data analysis Methods 0.000 title claims abstract description 14
- 238000013507 mapping Methods 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims description 67
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012517 data analytics Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种基于dubbo的分布式大数据分析服务调度方法及系统,方法包括:部署多个dubbo服务,每个dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在注册中心处生成预设映射表;每个dubbo服务具有至少一个远程服务调用接口,预设映射表包含每个dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;接收业务请求,业务请求携带业务的业务类型信息,基于业务类型信息及预设映射表,确定业务请求对应的目标远程服务调用接口的标识;基于目标远程服务调用接口的标识将业务请求路由至目标远程服务调用接口,以使目标远程服务调用接口所在的dubbo服务响应业务请求。
Description
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种基于dubbo的分布式大数据分析服务调度方法及系统。
背景技术
目前随着大数据以及新一代信息技术的发展,在业务发展与交易量不断增长的过程中,通过分布式集群系统中如服务注册中心进行统一注册管理多个微服务,基于微服务实现大数据业务的分析处理服务成为了一种主流技术。但是目前面对不同的业务场景下的不同业务类型的数据处理,此种方式的数据处理效率依然有待提高。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种基于dubbo的分布式大数据分析服务调度方法及系统。
第一方面,本公开实施例提供了一种基于dubbo的分布式大数据分析服务调度方法,包括:
部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;
接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;
基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
在一个实施例中,所述注册中心采用zookeeper注册中心,该方法还包括:
所述zookeeper注册中心接收到每个所述dubbo服务发送的各自的远程服务调用接口的标识后,获取每个所述dubbo服务的每个远程服务调用接口对应的服务方法,基于每个远程服务调用接口对应的服务方法确定每个远程服务调用接口对应的业务类型,然后建立每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系。
在一个实施例中,该方法还包括:
判断当前时刻接收的业务请求的数量是否大于第一预设阈值;
若是,则基于预设负载均衡策略路由每个所述业务请求,以使当前时刻路由的业务请求的数量小于第二预设阈值,所述第二预设阈值小于所述第一预设阈值。
在一个实施例中,每个所述dubbo服务的每个远程服务调用接口具有版本号;所述基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口之前,该方法包括:
检测所述目标远程服务调用接口的当前版本号,确定所述当前版本号低于预设版本号时,对所述目标远程服务调用接口进行版本升级;
升级完成后将所述业务请求路由至升级后的所述目标远程服务调用接口。
在一个实施例中,所述业务请求携带的业务类型信息用于表征该业务请求所属的业务场景下的业务处理类型,不同的业务类型信息标识不同的业务处理类型,且不同的业务处理类型各自对应dubbo服务的远程服务调用接口;所述业务处理类型包括文件传输、数据计算中的一个或多个。
在一个实施例中,所述基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,包括:
基于所述目标远程服务调用接口的标识获取所述目标远程服务调用接口对应的服务地址以及端口号;
基于所述服务地址以及端口号将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口。
在一个实施例中,每个所述远程服务调用接口的标识包含接口唯一编码和/或接口名称。
第二方面,本公开实施例提供一种基于dubbo的分布式大数据分析服务调度系统,包括:
部署模块,用于部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;
接收处理模块,用于接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;
路由模块,用于基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
第三方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述基于dubbo的分布式大数据分析服务调度方法。
第四方面,本公开实施例提供一种电子设备,包括:
处理器;以及
存储器,用于存储计算机程序;
其中,所述处理器配置为经由执行所述计算机程序来执行上述任一实施例所述基于dubbo的分布式大数据分析服务调度方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例提供的基于dubbo的分布式大数据分析服务调度方法及系统,部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。如此可以将业务请求以所属的业务类型为基准直接路由具有相同业务类型的业务请求至对应的dubbo服务的服务接口即目标远程服务调用接口进行处理,可以提高调用处理的速度,整体提高业务数据处理效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例基于dubbo的分布式大数据分析服务调度方法流程图;
图2为本公开实施例基于dubbo的分布式大数据分析服务调度系统示意图;
图3为本公开实施例的电子设备示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
应当理解,在下文中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
图1为本公开实施例的一种基于dubbo的分布式大数据分析服务调度方法流程图,方法包括:
步骤S101:部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系。
示例性的,在一个实施例中,每个远程服务调用接口的标识包含接口唯一编码和/或接口名称,但也不限于此。每个dubbo服务用于执行指定的数据处理任务,例如数据计算或者文件获取等不同类型的处理任务。而每个dubbo服务可以具有至少一个远程服务调用接口即dubbo接口,每个远程服务调用接口即dubbo接口用于执行指定的数据处理任务,具体可以调用一个远程服务调用接口即dubbo接口对应的服务方法,由该服务方法执行具体的数据处理任务,远程服务调用接口即dubbo接口对应的服务方法即接口中定义的方法,由相应服务的提供方Provider在开发该服务时设定。服务消费方Consumer通过服务注册中心订阅并调用对应的远程服务执行一个业务场景下的某一个或多个数据处理任务,本实施例中在服务注册时,根据一个业务场景下的某一个或多个数据处理任务所属的业务类型,建立每个dubbo服务的每个远程服务调用接口的标识如唯一编码与对应的业务类型之间的映射关系形成该预设映射表。例如业务场景1下的数据处理任务1、数据处理任务2和数据处理任务3属于同一业务处理类型1,那么建立业务类型1与对应的服务S1的dubbo接口1之间的映射关系,业务场景1下的数据处理任务3、数据处理任务4和数据处理任务5属于另一同一业务处理类型2,那么建立业务类型2与对应的服务S1的dubbo接口2之间的映射关系,其中,服务S1是与业务场景1需要消费的相关的微服务,不同的业务场景对应的服务可以不同,以上仅为举例说明,对此不作限制。
步骤S102:接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识。
示例性的,服务消费方可以基于例如客户端发出业务请求,该业务请求可以携带相应的业务的业务类型信息。在一个实施例中,所述业务请求携带的业务类型信息用于表征该业务请求所属的业务场景下的业务处理类型,不同的业务类型信息标识不同的业务处理类型如业务处理类型1或者业务处理类型2,不同的业务处理类型各自对应dubbo服务的远程服务调用接口。业务处理类型可以包括但不限于文件传输、数据计算中的一个或多个。也即是说,一个业务请求可以是用于请求所属的业务场景下的一个业务处理类型如文件传输、数据计算等的数据处理请求。基于业务请求携带的业务类型信息即业务处理类型以及所述预设映射表,可以查表确定该业务请求对应的目标远程服务调用接口的标识如唯一编码,例如该业务请求携带的业务类型信息是业务类型1,也即表示业务处理类型是业务处理类型1,那么确定对应的目标远程服务调用接口的标识是服务S1的dubbo接口1的唯一编码。
步骤S103:基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
示例性的,基于目标远程服务调用接口的标识如服务S1的dubbo接口1的唯一编码将该业务请求路由至服务S1的dubbo接口1,以使服务S1响应所述业务请求进行相应的数据处理任务1,具体可以是调用dubbo接口1对应的服务方法来执行。
本实施例的上述方案可以可以将业务请求以所属的业务类型为基准直接路由具有相同业务类型的业务请求至对应的dubbo服务的服务接口即目标远程服务调用接口进行处理,面对不同的业务场景下的不同业务类型的数据处理任务时,可以批量地调用远程dubbo服务的服务方法,提高调用处理的速度,整体提高业务数据处理效率。
在一个实施例中,所述注册中心采用zookeeper注册中心,该方法还包括:所述zookeeper注册中心接收到每个所述dubbo服务发送的各自的远程服务调用接口的标识后,获取每个所述dubbo服务的每个远程服务调用接口对应的服务方法,基于每个远程服务调用接口对应的服务方法确定每个远程服务调用接口对应的业务类型,然后建立每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系。
示例性的,通常每个dubbo服务的多个远程服务调用接口各自对应的服务方法不同,但也不限于此。每个远程服务调用接口对应的服务方法可以与待处理的数据处理任务所属的业务类型如业务处理类型相关。zookeeper注册中心在服务注册时,获取每个dubbo服务的每个远程服务调用接口对应的服务方法,例如获取每个远程服务调用接口的接口参数,基于接口参数确定对应的服务方法,基于每个远程服务调用接口对应的服务方法确定每个远程服务调用接口对应的业务类型,然后建立每个dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系即可构成上述预设映射表。其中,根据不同的服务方法所要执行完成的数据处理任务即可确定对应的业务类型。
本实施例中,dubbo服务的远程服务调用接口即dubbo接口的设置尽可能大粒度即与业务类型相关,也即每个dubbo服务的接口即远程服务调用接口的服务方法用于一个业务类型的数据处理任务,而不是该一个业务类型的数据处理任务的一个子任务,否则将面临分布式事务问题,而dubbo框架暂未提供分布式事务支持。dubbo服务的接口以业务类型为基础划分,对相同或相近业务做抽象,可以防止接口数量爆炸降低整体的调用处理速度,进一步提高数据处理效率。
在一个实施例中,该方法还包括:判断当前时刻接收的业务请求的数量是否大于第一预设阈值;若是,则基于预设负载均衡策略路由每个所述业务请求,以使当前时刻路由的业务请求的数量小于第二预设阈值,所述第二预设阈值小于所述第一预设阈值。由于Dubbo缺省协议仅适合于小数据量大并发的服务调用,因此,本实施例通过上述负载均衡策略处理可以提高在大并发情况下尽量满足Dubbo缺省协议下的业务请求处理,提高系统可用性。
在一个实施例中,每个所述dubbo服务的每个远程服务调用接口具有版本号;所述基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口之前,该方法包括:检测所述目标远程服务调用接口的当前版本号,确定所述当前版本号低于预设版本号时,对所述目标远程服务调用接口进行版本升级;升级完成后将所述业务请求路由至升级后的所述目标远程服务调用接口。
示例性的,可以为每个远程服务调用接口都应定义版本号,如:<dubbo:serviceinterface="com.xxx.XxxService"version="1.0"/>。当检测确定目标远程服务调用接口的当前版本号过低时,可以先进行版本升级,如升级后版本号为:<dubbo:serviceinterface="com.xxx.XxxService"version="3.0"/>,升级完成后将所述业务请求路由至升级后的所述目标远程服务调用接口。由升级后的目标远程服务调用接口来响应业务请求执行对应的数据处理任务,可靠性更高,可以保证对业务请求的处理结果更加准确。
在一个实施例中,步骤S103中基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,包括:基于所述目标远程服务调用接口的标识获取所述目标远程服务调用接口对应的服务地址如IP地址以及端口号;基于所述服务地址以及端口号将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
如图2所示,本公开实施例提供一种基于dubbo的分布式大数据分析服务调度系统,包括:
部署模块201,用于部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;
接收处理模块202,用于接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;
路由模块203,用于基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
在一个实施例中,所述注册中心采用zookeeper注册中心,所述zookeeper注册中心接收到每个所述dubbo服务发送的各自的远程服务调用接口的标识后,获取每个所述dubbo服务的每个远程服务调用接口对应的服务方法,基于每个远程服务调用接口对应的服务方法确定每个远程服务调用接口对应的业务类型,然后建立每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系。
在一个实施例中,该系统还包括负载均衡模块,用于:
判断当前时刻接收的业务请求的数量是否大于第一预设阈值;
若是,则基于预设负载均衡策略路由每个所述业务请求,以使当前时刻路由的业务请求的数量小于第二预设阈值,所述第二预设阈值小于所述第一预设阈值。
在一个实施例中,每个所述dubbo服务的每个远程服务调用接口具有版本号;该系统还包括升级模块,用于在所述路由模块基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口之前,检测所述目标远程服务调用接口的当前版本号,确定所述当前版本号低于预设版本号时,对所述目标远程服务调用接口进行版本升级;
升级完成后路由模块将所述业务请求路由至升级后的所述目标远程服务调用接口。
在一个实施例中,所述业务请求携带的业务类型信息用于表征该业务请求所属的业务场景下的业务处理类型,不同的业务类型信息标识不同的业务处理类型,且不同的业务处理类型各自对应dubbo服务的远程服务调用接口;所述业务处理类型包括文件传输、数据计算中的一个或多个。
在一个实施例中,所述路由模块基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,包括:基于所述目标远程服务调用接口的标识获取所述目标远程服务调用接口对应的服务地址以及端口号;基于所述服务地址以及端口号将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口。
在一个实施例中,每个所述远程服务调用接口的标识包含接口唯一编码和/或接口名称。
关于上述实施例中的系统,其中各个模块执行操作的具体方式以及带来的相应技术效果已经在有关该方法的实施例中进行了对应的详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项实施例所述基于dubbo的分布式大数据分析服务调度方法。
示例性的,该可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
本公开实施例还提供一种电子设备,包括处理器以及存储器,存储器用于存储计算机程序。其中,所述处理器配置为经由执行所述计算机程序来执行上述任一项实施例中基于dubbo的分布式大数据分析服务调度方法。
下面参照图3来描述根据本发明的这种实施方式的电子设备600。图3显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述方法实施例部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示方法的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述各实施例的基于dubbo的分布式大数据分析服务调度方法步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于dubbo的分布式大数据分析服务调度方法,其特征在于,包括:
部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;
接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;
基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
2.根据权利要求1所述的方法,其特征在于,所述注册中心采用zookeeper注册中心,该方法还包括:
所述zookeeper注册中心接收到每个所述dubbo服务发送的各自的远程服务调用接口的标识后,获取每个所述dubbo服务的每个远程服务调用接口对应的服务方法,基于每个远程服务调用接口对应的服务方法确定每个远程服务调用接口对应的业务类型,然后建立每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:
判断当前时刻接收的业务请求的数量是否大于第一预设阈值;
若是,则基于预设负载均衡策略路由每个所述业务请求,以使当前时刻路由的业务请求的数量小于第二预设阈值,所述第二预设阈值小于所述第一预设阈值。
4.根据权利要求1或2所述的方法,其特征在于,每个所述dubbo服务的每个远程服务调用接口具有版本号;所述基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口之前,该方法包括:
检测所述目标远程服务调用接口的当前版本号,确定所述当前版本号低于预设版本号时,对所述目标远程服务调用接口进行版本升级;
升级完成后将所述业务请求路由至升级后的所述目标远程服务调用接口。
5.根据权利要求1或2所述的方法,其特征在于,所述业务请求携带的业务类型信息用于表征该业务请求所属的业务场景下的业务处理类型,不同的业务类型信息标识不同的业务处理类型,且不同的业务处理类型各自对应dubbo服务的远程服务调用接口;所述业务处理类型包括文件传输、数据计算中的一个或多个。
6.根据权利要求1或2所述的方法,其特征在于,所述基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,包括:
基于所述目标远程服务调用接口的标识获取所述目标远程服务调用接口对应的服务地址以及端口号;
基于所述服务地址以及端口号将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口。
7.根据权利要求6所述的方法,其特征在于,每个所述远程服务调用接口的标识包含接口唯一编码和/或接口名称。
8.一种基于dubbo的分布式大数据分析服务调度系统,其特征在于,包括:
部署模块,用于部署多个dubbo服务,每个所述dubbo服务在部署时向注册中心发送各自的远程服务调用接口的标识,以在所述注册中心处生成预设映射表;其中每个所述dubbo服务具有至少一个远程服务调用接口,且采用分布式框架dubbo接口;所述预设映射表包含每个所述dubbo服务的每个远程服务调用接口的标识与对应的业务类型之间的映射关系;
接收处理模块,用于接收业务请求,所述业务请求携带相应的业务的业务类型信息,基于所述业务类型信息以及所述预设映射表,确定所述业务请求对应的目标远程服务调用接口的标识;
路由模块,用于基于所述目标远程服务调用接口的标识将所述业务请求路由至所述目标远程服务调用接口的标识对应的目标远程服务调用接口,以使所述目标远程服务调用接口所在的dubbo服务响应所述业务请求。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7任一项所述基于dubbo的分布式大数据分析服务调度方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储计算机程序;
其中,所述处理器配置为经由执行所述计算机程序来执行权利要求1~7任一项所述基于dubbo的分布式大数据分析服务调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211245269.7A CN115604333B (zh) | 2022-10-12 | 2022-10-12 | 基于dubbo的分布式大数据分析服务调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211245269.7A CN115604333B (zh) | 2022-10-12 | 2022-10-12 | 基于dubbo的分布式大数据分析服务调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115604333A true CN115604333A (zh) | 2023-01-13 |
CN115604333B CN115604333B (zh) | 2023-09-12 |
Family
ID=84846017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211245269.7A Active CN115604333B (zh) | 2022-10-12 | 2022-10-12 | 基于dubbo的分布式大数据分析服务调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115604333B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080140857A1 (en) * | 2006-03-21 | 2008-06-12 | Conner Peter A | Service-oriented architecture and methods for direct invocation of services utilizing a service requestor invocation framework |
CN102075566A (zh) * | 2010-12-24 | 2011-05-25 | 华为技术有限公司 | 业务的分流处理方法、通信设备及网络系统 |
CN107181806A (zh) * | 2017-05-27 | 2017-09-19 | 北京思特奇信息技术股份有限公司 | 一种基于dubbo的分布式业务处理系统及方法 |
CN109842637A (zh) * | 2017-11-24 | 2019-06-04 | 武汉斗鱼网络科技有限公司 | 一种分布式服务注册方法及装置 |
CN110535971A (zh) * | 2019-09-16 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 基于区块链的接口配置处理方法、装置、设备及存储介质 |
CN112650728A (zh) * | 2020-12-15 | 2021-04-13 | 中国联合网络通信集团有限公司 | 接口信息存储方法、装置、服务器及分布式业务系统 |
CN112822298A (zh) * | 2021-04-19 | 2021-05-18 | 北京世纪好未来教育科技有限公司 | 业务服务扩缩容方法、装置、介质和电子设备 |
WO2021104103A1 (zh) * | 2019-11-25 | 2021-06-03 | 中兴通讯股份有限公司 | 网络控制器框架和数据处理方法 |
CN113242221A (zh) * | 2021-04-29 | 2021-08-10 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种基于http微服务网关的协议转换方法及协议转换装置 |
CN114416599A (zh) * | 2022-03-28 | 2022-04-29 | 中建电子商务有限责任公司 | 一种基于Dubbo服务接口生成泛化调用进行接口测试的方法 |
CN114598750A (zh) * | 2022-01-14 | 2022-06-07 | 浙江吉利控股集团有限公司 | 一种数据请求处理方法、装置及存储介质 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
-
2022
- 2022-10-12 CN CN202211245269.7A patent/CN115604333B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080140857A1 (en) * | 2006-03-21 | 2008-06-12 | Conner Peter A | Service-oriented architecture and methods for direct invocation of services utilizing a service requestor invocation framework |
CN102075566A (zh) * | 2010-12-24 | 2011-05-25 | 华为技术有限公司 | 业务的分流处理方法、通信设备及网络系统 |
WO2012083736A1 (zh) * | 2010-12-24 | 2012-06-28 | 华为技术有限公司 | 业务的分流处理方法、通信设备及网络系统 |
CN107181806A (zh) * | 2017-05-27 | 2017-09-19 | 北京思特奇信息技术股份有限公司 | 一种基于dubbo的分布式业务处理系统及方法 |
CN109842637A (zh) * | 2017-11-24 | 2019-06-04 | 武汉斗鱼网络科技有限公司 | 一种分布式服务注册方法及装置 |
CN110535971A (zh) * | 2019-09-16 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 基于区块链的接口配置处理方法、装置、设备及存储介质 |
WO2021104103A1 (zh) * | 2019-11-25 | 2021-06-03 | 中兴通讯股份有限公司 | 网络控制器框架和数据处理方法 |
CN112650728A (zh) * | 2020-12-15 | 2021-04-13 | 中国联合网络通信集团有限公司 | 接口信息存储方法、装置、服务器及分布式业务系统 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN112822298A (zh) * | 2021-04-19 | 2021-05-18 | 北京世纪好未来教育科技有限公司 | 业务服务扩缩容方法、装置、介质和电子设备 |
CN113242221A (zh) * | 2021-04-29 | 2021-08-10 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种基于http微服务网关的协议转换方法及协议转换装置 |
CN114598750A (zh) * | 2022-01-14 | 2022-06-07 | 浙江吉利控股集团有限公司 | 一种数据请求处理方法、装置及存储介质 |
CN114416599A (zh) * | 2022-03-28 | 2022-04-29 | 中建电子商务有限责任公司 | 一种基于Dubbo服务接口生成泛化调用进行接口测试的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115604333B (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3637733B1 (en) | Load balancing engine, client, distributed computing system, and load balancing method | |
US8887158B2 (en) | Dynamic cluster expansion through virtualization-based live cloning | |
US20060253848A1 (en) | Method and apparatus for solutions deployment in a heterogeneous systems management environment | |
WO2021227999A1 (zh) | 云计算服务系统和方法 | |
US10728169B1 (en) | Instance upgrade migration | |
CN103365713A (zh) | 一种资源的调度和管理方法及装置 | |
US9542226B2 (en) | Operating programs on a computer cluster | |
US20210289435A1 (en) | Virtualization management method and apparatus | |
US10819650B2 (en) | Dynamically adaptive cloud computing infrastructure | |
CN114979286B (zh) | 容器服务的访问控制方法、装置、设备及计算机存储介质 | |
CN114924751A (zh) | 一种业务访问请求流量分配的方法和装置 | |
US11531526B1 (en) | Creating portable serverless applications | |
CN114296953B (zh) | 一种多云异构系统及任务处理方法 | |
CN115268949A (zh) | 一种镜像预热方法、装置、设备及存储介质 | |
CN110730197B (zh) | 一种服务发现方法和系统 | |
CN111752728B (zh) | 消息传输方法及装置 | |
CN117149413A (zh) | 一种通用ai算法模型云服务集成部署系统及方法 | |
CN112905273A (zh) | 一种服务调用方法和装置 | |
US9323509B2 (en) | Method and system for automated process distribution | |
CN112953993A (zh) | 资源调度方法、设备、网络系统及存储介质 | |
CN115604333B (zh) | 基于dubbo的分布式大数据分析服务调度方法及系统 | |
US10587725B2 (en) | Enabling a traditional language platform to participate in a Java enterprise computing environment | |
CN115665231A (zh) | 服务创建方法、装置以及计算机可读存储介质 | |
US11513833B1 (en) | Event listener interface for container-based execution of serverless functions | |
WO2021243665A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A Dubbo based Distributed Big Data Analysis Service Scheduling Method and System Granted publication date: 20230912 Pledgee: Nanjing Branch of Jiangsu Bank Co.,Ltd. Pledgor: Jiangsu sairong Technology Co.,Ltd. Registration number: Y2024980008208 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |