CN109246251A - 一种微服务调用方法、装置、系统、设备及可读存储介质 - Google Patents
一种微服务调用方法、装置、系统、设备及可读存储介质 Download PDFInfo
- Publication number
- CN109246251A CN109246251A CN201811348108.4A CN201811348108A CN109246251A CN 109246251 A CN109246251 A CN 109246251A CN 201811348108 A CN201811348108 A CN 201811348108A CN 109246251 A CN109246251 A CN 109246251A
- Authority
- CN
- China
- Prior art keywords
- micro services
- frame
- registration
- frames
- registration center
- 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
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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
-
- 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/133—Protocols for remote procedure calls [RPC]
-
- 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/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Abstract
本发明公开了一种基于异构微服务框架系统的微服务调用方法,在本方法中,不同微服务框架的微服务在注册时,便已经向统一注册中心中每个微服务框架的注册中心注册了,因此,微服务从注册中心获取服务列表后,并可根据该服务列表调用其他框架的微服务,从而实现了异构微服务框架的微服务之间的调用,实现了跨微服务框架的直接通信。本发明还公开了一种基于异构微服务框架系统的微服务调用装置、异构微服务框架系统、微服务调用设备及计算机可读存储介质,同样能实现上述技术效果。
Description
技术领域
本发明涉及微服务框架技术领域,更具体地说,涉及一种基于异构微服务框架系统的微服务调用方法、装置、异构微服务框架系统、微服务调用设备及计算机可读存储介质。
背景技术
在很多软件开发领域,微服务已经成为主流,非常多的政企客户想要改造历史老旧的系统,特别是对于具有性能瓶颈急需横向扩展的子模块,改造需求非常迫切。这个时候就有两个思路:一种思路是老系统推到重来,按照全新的微服务框架进行重建;还有一种思路是逐个模块进行服务化改造。基于成本等原因考虑,多数用户会选择逐步改造之路。
目前市面上主流的微服务框架很多,比如Spring Cloud/Dubbo/HSF等,在项目实施的时候,特别是大型项目改造和迭代过程中,由于历史原因、技术发展的趋势等因素,不同的供应商(子项目)一般对技术栈(微服务框架)有不同的选择,不同的微服务框架之间不能直接通信,项目改造和集成非常困难。目前市面主要的解决方案为,针对具体项目需求进行微服务框架改造,将不同系统的微服务框架统一,这个方案改造成本很高。
因此,如何实现不同微服务框架之间的微服务调用,是本领域技术人员需要解决的问题。
发明内容
本发明的目的在于提供一种基于异构微服务框架系统的微服务调用方法、装置、异构微服务框架系统、微服务调用设备及计算机可读存储介质,以实现异构微服务框架的微服务之间的调用。
为实现上述目的,本发明实施例提供了如下技术方案:
一种基于异构微服务框架系统的微服务调用方法,包括:
统一注册中心接收不同微服务框架的微服务发送的注册信息;
按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
其中,所述按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心,包括:
按照预先设定的不同微服务框架的注册中心之间的转换规则,将所述注册信息中的字段名、字段类型转换为与待注册的注册中心相对应的字段名、字段类型,并将转换后的注册信息注册至所述待注册的注册中心。
其中,所述对所述注册信息进行转换后注册到每个微服务框架的注册中心之后,还包括:
所述统一注册中心的每个注册中心对已注册的微服务执行续租操作或保活操作。
其中,本方案还包括:
微服务向目标微服务发送报文数据之前,根据预先设定的不同微服务框架的微服务之间的协议转换方法,对报文数据进行报文格式转换后发送给所述目标微服务。
其中,若微服务框架包括Spring Cloud框架、Dubbo框架和HSF框架,则所述本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务,包括:
本框架的微服务通过Interface Package接口调用所述服务列表中的本框架的其他微服务或者其他框架的微服务;其中,所述Spring Cloud框架的微服务的接口已从RESTFUL接口转换成Interface Package接口。
其中,本方案还包括:
所述统一注册中心接收每个微服务发送的服务消费信息,并根据每个微服务发送的服务消费信息和注册信息生成服务治理列表。
一种基于异构微服务框架系统的微服务调用装置,包括:
注册信息接收模块,用于接收不同微服务框架的微服务发送的注册信息;
注册模块,用于按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
服务列表发送模块,用于在注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
一种异构微服务框架系统,包括不同微服务框架的微服务以及统一注册中心;
所述微服务,用于向所述统一注册中心发送注册中心和订阅请求,并根据所述统一注册中心返回的服务列表调用同一框架的其他微服务或者其他框架的微服务;
所述统一注册中心,用于接收不同微服务框架的微服务发送的注册信息;按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
一种基于异构微服务框架系统的微服务调用设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述微服务调用方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述微服务调用方法的步骤。
通过以上方案可知,本发明实施例提供的一种基于异构微服务框架系统的微服务调用方法,包括:统一注册中心接收不同微服务框架的微服务发送的注册信息;按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务;
可见,在本方案中,不同微服务框架的微服务在注册时,便已经向统一注册中心中每个微服务框架的注册中心注册了,因此,微服务从注册中心获取服务列表后,并可根据该服务列表调用其他框架的微服务,从而实现了异构微服务框架的微服务之间的调用,实现了跨微服务框架的直接通信。本发明还公开了一种基于异构微服务框架系统的微服务调用装置、异构微服务框架系统、微服务调用设备及计算机可读存储介质,同样能实现上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种基于异构微服务框架系统的微服务调用方法流程示意图;
图2为本发明实施例公开的一种异构微服务框架系统结构示意图;
图3为本发明实施例公开的微服务协议转换示意图;
图4为本发明实施例公开的一种生成服务治理列表的结构示意图;
图5为本发明实施例公开的一种基于异构微服务框架系统的微服务调用装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种基于异构微服务框架系统的微服务调用方法、装置、异构微服务框架系统、微服务调用设备及计算机可读存储介质,以实现异构微服务框架的微服务之间的调用。
参见图1,本发明实施例提供的一种基于异构微服务框架系统的微服务调用方法,包括:
S101、统一注册中心接收不同微服务框架的微服务发送的注册信息;
具体的,本实施例所述的统一注册中心为虚拟的服务中心,是各种微服务框架服务中心的总称,也就是说,该统一注册中心中包括了不同微服务框架的注册中心;参见图2,为本发明实施例提供的一种异构微服务框架系统,在本实施例中,以Spring Cloud、Dubbo、HSF这三种微服务框架为例进行描述;通过图2可以看出,图2中的统一注册中心包括了Spring Cloud架构的Eureka注册中心,Dubbo架构的Zookeeper注册中心,以及HSF的注册中心;因此,在本方案中,每个微服务框架下的微服务在注册时,直接将注册信息发送至统一注册中心,通过该统一注册中心实现对各个微服务的注册。
可以理解的是,该注册信息中携带的关键信息包括:服务ID、IP/端口、版本号、服务组、健康检查接口、租约信息、其它扩展字段。
需要说明的是,为了更好的展示微服务框架信息,在本实施例中的统一注册中心接收到不同微服务框架的微服务发送的注册信息后,可以记录微服务的原始服务框架信息,该原始服务框架信息具体是指服务提供方的原始服务框架,比如:Dubbo、Spring Cloud等。
S102、按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
其中,所述按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心,包括:
按照预先设定的不同微服务框架的注册中心之间的转换规则,将所述注册信息中的字段名、字段类型转换为与待注册的注册中心相对应的字段名、字段类型,并将转换后的注册信息注册至所述待注册的注册中心。
具体的,由于本方案中的统一注册中心可以接收到不同微服务架构的注册信息,因此本方案在实现微服务的注册时,需要将每个注册信息注册到所有的注册中心,也就是说,统一注册中心中的每个注册中心均会存储所有微服务的注册信息,包括同一框架的和不同框架的,这样每个微服务便可从本框架的注册中心中获得所有满足要求的微服务信息,以实现对其他框架的微服务的调用。
需要说明的是,由于不同框架的微服务发送的注册信息的格式不同,因此,该统一注册中心存储了不同微服务框架之间的信息转换方法,从而实现对注册信息数据格式的转换,例如:服务提供者提供的是Dubbo服务,在向Dubbo的注册中心注册时,该统一注册中心的适配层需要将该注册信息转换成其它几种注册中心认识的格式,并向其它几种注册中心注册,也就是说,通过调用其他注册中心客户端接口,实现了将同一注册信息向不同注册中心注册的效果,这个过程对服务提供者是不可见的。
具体来说,相同的含义在不同的注册中心名字是不一样的,因此本方案中的不同微服务框架之间的信息转换方法,是不同微服务框架的注册中心之间的字段名转换方法,也就是说,在进行服务格式转换时,主要是对注册信息中字段名的转换,比如:Dubbo注册中心的服务字段名是:Service、URL,而Spring cloud注册中心的服务字段名:app、ipAddr,因此,Dubbo框架的微服务向Spring cloud注册中心发送的注册信息,需要做的字段名转换方法为:Service->app,URL->ipAddr,Spring cloud框架的微服务向Dubbo注册中心发送的注册信息,需要做的字段名转换方法为:app->Service,ipAddr->URL。通过这种转换,便可实现将注册信息注册到不同的注册中心。
S103、每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
其中,所述对所述注册信息进行转换后注册到每个微服务框架的注册中心之后,还包括:所述统一注册中心的每个注册中心对已注册的微服务执行续租操作或保活操作。
需要说明的是,本方案中的统一注册中心中的每个注册中心与现有技术中的注册中心功能相同,唯一不同的便是本方案中的注册中心,需要将每种微服务框架的服务转换格式以后注册到所有的注册中心,因此,各个注册中心会自动做续租操作或保活操作,从而实现了跨服务框架的服务列表的打通。
可以理解的是,每个注册中心中包括了所有框架的微服务的注册信息,因此,每个注册中心接收到微服务发送的订阅请求后,会根据该订阅请求中携带的信息,从已经注册的微服务中查找符合要求的微服务,生成最终的服务列表,并发送至发送订阅请求的微服务中,该服务列表中包括:本框架的微服务信息、其他框架的微服务信息中的至少一者。通过这种方式,实现了不同微服务框架的统一注册中心,使微服务接收到注册中心反馈的服务列表后,可根据该服务列表调用对应的微服务,从而实现了不同微服务框架之间的调用,方便异构系统间的集成,降低异构微服务框架系统的集成难度,保护客户已有资产,业务创新无束缚。
基于上述实施例,在本实施例中,还包括:
微服务向目标微服务发送报文数据之前,根据预先设定的不同微服务框架的微服务之间的协议转换方法,对报文数据进行报文格式转换后发送给所述目标微服务。
需要说明的是,不同微服务之间报文格式不同,以Spring Cloud框架、Dubbo框架和HSF框架为例,参见图3,为本实施例提供的微服务协议转换示意图,Spring Cloud框架、Dubbo框架和HSF框架的报文格式分别为:HTTP(REST)/Dubbo RPC/HSF RPC,因此,本方案为了让接收报文数据的目标微服务识别报文数据,在每个微服务中提供一个代理Agent,Agent拦截应用流量并负责跨协议之间的转换,即:Agent主要实现流量劫持、流量分析、报文格式转换、报文再转发的功能。
具体来说,流量劫持是指获取微服务发送至目标微服务的报文数据,流量分析是指分析该报文数据,判断目标微服务和发送报文数据的微服务是否属于同一框架,如果是同一框架,则直接发送报文数据;如果不是同一框架,则按照预先设定的不同微服务框架的微服务之间的协议转换方法,也即HTTP(REST)、Dubbo RPC、HSF RPC之间的报文协议转换方法,将报文数据按照目标微服务的报文格式重新封装;报文再转发是指:将重新封装的报文数据转发至目标微服务。通过上述协议转换方法,实现了不同框架的微服务之间的报文数据格式的统一,使微服务可以识别其他框架的微服务发送的报文数据,实现了不同框架微服务之间的数据通信。
基于上述任意实施例,在本实施例中,若微服务框架包括Spring Cloud框架、Dubbo框架和HSF框架,则所述本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务,包括:
本框架的微服务通过Interface Package接口调用所述服务列表中的本框架的其他微服务或者其他框架的微服务;其中,所述Spring Cloud框架的微服务的接口已从RESTFUL接口转换成Interface Package接口。
在本方案中,为了实现不同框架的微服务之间的调用,需要对不同框架的微服务进行统一,以图2中的Spring Cloud、Dubbo、HSF这三种微服务框架为例,正常情况下Dubbo和HSF服务提供给consumer的就是Interface package接口,因此在本方案中,将SpringCloud的RESTFUL接口转换成Interface Package接口,方便Dubbo和HSF框架的微服务直接调用,从而使consumer能够像调用dubbo和HSF服务一样调用Spring cloud的服务。具体来说,将Spring Cloud RESTFUL接口转换成Interface Package接口,可以通过扫描代码中RESTFUL接口的注解,将对应的方法定义提取出来放到Interface Package中,从而实现了接口的转换。
进一步的,本方案还提供maven编译插件自动根据Dubbo/HSF提供给客户端的Interface Package将对应的实现类自动添加RESTFUL API注解。具体来说,Maven是java工程的一种包管理工具和编译框架,通过提供maven插件的方式,在编译阶段扫描源码将Dubbo/HSF申明的Interface实现自动添加上RESTFUL API的注解,然后再将转换以后的源代码编译成字节码。通过将Dubbo/HSF申明的Interface的实现类以及内部方法上有了RESTFUL API注解就会自动被解释成RESTFUL API,也即程序员可以很方便的根据该注解拼装出REST请求用的URL以及参数,从而为了简化异构框架的之间调用的编码复杂性。
基于上述任意实施例,在本实施例中,还包括:
所述统一注册中心接收每个微服务发送的服务消费信息,并根据每个微服务发送的服务消费信息和注册信息生成服务治理列表。
需要说明的是,由于统一注册中心关心每个服务被哪些应用消费了,有了这些信息,统一注册中心就能提供每个服务的服务提供方和消费方的调用关系。目前存在一种微服务调用方法,是将不同微服务框架的接口统一转换成RESTFUL接口,跨服务之间通过RESTFUL接口调用,该方法的缺点是丧失了统一的微服务服务治理功能。
因此参见图4,本发明实施例提供的一种生成服务治理列表的结构示意图,通过该图可以看出,本方案中的统一注册中心还包括统一服务治理模块,该模块从统一注册中心获取原始的服务注册列表,每个微服务的代理Agent定时上报本服务的服务注册信息和服务消费信息,最后形成完整的服务治理列表,该服务治理列表包括每个服务的服务提供方和消费方的调用关系。通过这种方式,实现了不同微服务框架的统一服务治理视图,可以清晰、直观的观察到服务提供方的微服务类型以及消费方的微服务类型,很容易拼装出完整的分布式应用拓扑,为更为精细的错误注入、流量管控打好基础。
下面对本发明实施例提供的微服务调用装置进行介绍,下文描述的微服务调用装置与上文描述的微服务调用方法可以相互参照。
参见图5,本发明实施例提供的一种基于异构微服务框架系统的微服务调用装置,包括:
注册信息接收模块100,用于接收不同微服务框架的微服务发送的注册信息;
注册模块200,用于按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
服务列表发送模块300,用于在注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
其中,注册模块,具体用于按照预先设定的不同微服务框架的注册中心之间的转换规则,将所述注册信息中的字段名、字段类型转换为与待注册的注册中心相对应的字段名、字段类型,并将转换后的注册信息注册至所述待注册的注册中心。
其中,本方案还包括:
微服务管理模块,用于对每个注册中心中已注册的微服务执行续租操作或保活操作。
其中,本方案还:
统一服务治理模块,用于接收每个微服务发送的服务消费信息,并根据每个微服务发送的服务消费信息和注册信息生成服务治理列表。
本发明实施例还公开了一种异构微服务框架系统,包括不同微服务框架的微服务以及统一注册中心;
所述微服务,用于向所述统一注册中心发送注册中心和订阅请求,并根据所述统一注册中心返回的服务列表调用同一框架的其他微服务或者其他框架的微服务;
所述统一注册中心,用于接收不同微服务框架的微服务发送的注册信息;按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
其中,统一注册中心具体用于:按照预先设定的不同微服务框架的注册中心之间的转换规则,将所述注册信息中的字段名、字段类型转换为与待注册的注册中心相对应的字段名、字段类型,并将转换后的注册信息注册至所述待注册的注册中心。
其中,统一注册中心还用于:对每个注册中心中已注册的微服务执行续租操作或保活操作。
其中,统一注册中心还用于:接收每个微服务发送的服务消费信息,并根据每个微服务发送的服务消费信息和注册信息生成服务治理列表。
其中,微服务还用于:向目标微服务发送报文数据之前,根据预先设定的不同微服务框架的微服务之间的协议转换方法,对报文数据进行报文格式转换后发送给所述目标微服务。
其中,若微服务框架包括Spring Cloud框架、Dubbo框架和HSF框架,则微服务具体用于:通过Interface Package接口调用所述服务列表中的本框架的其他微服务或者其他框架的微服务;其中,所述Spring Cloud框架的微服务的接口已从RESTFUL接口转换成Interface Package接口。
本发明实施例还公开了一种基于异构微服务框架系统的微服务调用设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述方法实施例中微服务调用方法的步骤。
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述方法实施例中微服务调用方法的步骤。
其中,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种基于异构微服务框架系统的微服务调用方法,其特征在于,包括:
统一注册中心接收不同微服务框架的微服务发送的注册信息;
按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
2.根据权利要求1所述的微服务调用方法,其特征在于,所述按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心,包括:
按照预先设定的不同微服务框架的注册中心之间的转换规则,将所述注册信息中的字段名、字段类型转换为与待注册的注册中心相对应的字段名、字段类型,并将转换后的注册信息注册至所述待注册的注册中心。
3.根据权利要求2所述的微服务调用方法,其特征在于,所述对所述注册信息进行转换后注册到每个微服务框架的注册中心之后,还包括:
所述统一注册中心的每个注册中心对已注册的微服务执行续租操作或保活操作。
4.根据权利要求1所述的微服务调用方法,其特征在于,还包括:
微服务向目标微服务发送报文数据之前,根据预先设定的不同微服务框架的微服务之间的协议转换方法,对报文数据进行报文格式转换后发送给所述目标微服务。
5.根据权利要求4所述的微服务调用方法,其特征在于,若微服务框架包括SpringCloud框架、Dubbo框架和HSF框架,则所述本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务,包括:
本框架的微服务通过Interface Package接口调用所述服务列表中的本框架的其他微服务或者其他框架的微服务;其中,所述Spring Cloud框架的微服务的接口已从RESTFUL接口转换成Interface Package接口。
6.根据权利要求1至5中任意一项所述的微服务调用方法,其特征在于,还包括:
所述统一注册中心接收每个微服务发送的服务消费信息,并根据每个微服务发送的服务消费信息和注册信息生成服务治理列表。
7.一种基于异构微服务框架系统的微服务调用装置,其特征在于,包括:
注册信息接收模块,用于接收不同微服务框架的微服务发送的注册信息;
注册模块,用于按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;
服务列表发送模块,用于在注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
8.一种异构微服务框架系统,其特征在于,包括不同微服务框架的微服务以及统一注册中心;
所述微服务,用于向所述统一注册中心发送注册中心和订阅请求,并根据所述统一注册中心返回的服务列表调用同一框架的其他微服务或者其他框架的微服务;
所述统一注册中心,用于接收不同微服务框架的微服务发送的注册信息;按照预先设定的不同微服务框架之间的信息转换方法,对所述注册信息进行转换后注册到每个微服务框架的注册中心;每个注册中心接收本框架的微服务发送的订阅请求后,向本框架的微服务发送服务列表;以使本框架的微服务根据所述服务列表调用本框架的其他微服务或者其他框架的微服务。
9.一种基于异构微服务框架系统的微服务调用设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述微服务调用方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述微服务调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811348108.4A CN109246251B (zh) | 2018-11-13 | 2018-11-13 | 一种微服务调用方法、装置、系统、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811348108.4A CN109246251B (zh) | 2018-11-13 | 2018-11-13 | 一种微服务调用方法、装置、系统、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109246251A true CN109246251A (zh) | 2019-01-18 |
CN109246251B CN109246251B (zh) | 2021-01-22 |
Family
ID=65078386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811348108.4A Active CN109246251B (zh) | 2018-11-13 | 2018-11-13 | 一种微服务调用方法、装置、系统、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109246251B (zh) |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109922148A (zh) * | 2019-03-04 | 2019-06-21 | 网易(杭州)网络有限公司 | 跨平台服务方法、装置和系统 |
CN110062043A (zh) * | 2019-04-16 | 2019-07-26 | 杭州朗和科技有限公司 | 服务治理方法、服务治理装置、存储介质及电子设备 |
CN110138741A (zh) * | 2019-04-15 | 2019-08-16 | 平安科技(深圳)有限公司 | 基于统一管理平台的微服务管理方法、装置和计算机设备 |
CN110191164A (zh) * | 2019-05-20 | 2019-08-30 | 中国工商银行股份有限公司 | 分布式服务接入系统及方法 |
CN110224855A (zh) * | 2019-05-13 | 2019-09-10 | 平安科技(深圳)有限公司 | 微服务实例的注册方法、装置、计算机设备及存储介质 |
CN110262902A (zh) * | 2019-05-16 | 2019-09-20 | 杭州朗和科技有限公司 | 信息处理方法及系统、介质和计算设备 |
CN110716815A (zh) * | 2019-10-11 | 2020-01-21 | 集奥聚合(北京)人工智能科技有限公司 | 基于Spring Gateway的微服务各版本定向调用方法 |
CN110740172A (zh) * | 2019-09-29 | 2020-01-31 | 北京淇瑀信息科技有限公司 | 一种基于微服务架构的路由管理方法、装置和系统 |
CN110851512A (zh) * | 2019-10-10 | 2020-02-28 | 上海易点时空网络有限公司 | 用于开源框架的数据配置方法及装置 |
CN110995746A (zh) * | 2019-12-17 | 2020-04-10 | 神州数码融信软件有限公司 | 异构网络的微服务调用方法及api网关 |
CN110995829A (zh) * | 2019-11-29 | 2020-04-10 | 广州市百果园信息技术有限公司 | 实例调用方法、装置及计算机存储介质 |
CN110990047A (zh) * | 2019-11-06 | 2020-04-10 | 北京云思畅想科技有限公司 | 用于多个微服务架构的融合方法及装置 |
CN111049854A (zh) * | 2019-12-25 | 2020-04-21 | 微民保险代理有限公司 | 一种服务请求的传输方法和装置 |
CN111092954A (zh) * | 2019-12-24 | 2020-05-01 | 北京首信科技股份有限公司 | 一种生成微服务的方法和装置及电子设备 |
CN111131193A (zh) * | 2019-12-10 | 2020-05-08 | 四川新网银行股份有限公司 | 支持多协议异构非代码侵入的分布式服务治理的方法 |
CN111142852A (zh) * | 2019-12-30 | 2020-05-12 | 亚信科技(中国)有限公司 | 接口转换函数生成方法和装置 |
CN111200651A (zh) * | 2019-12-31 | 2020-05-26 | 优刻得科技股份有限公司 | 定时调用微服务的方法、系统、设备和介质 |
CN111209127A (zh) * | 2020-01-13 | 2020-05-29 | 山东汇贸电子口岸有限公司 | 一种Dubbo框架集成Istio服务网格的方法 |
CN111245925A (zh) * | 2020-01-09 | 2020-06-05 | 北京理工大学 | 一种用于现代分布式微服务架构的通信方法与系统 |
CN111782259A (zh) * | 2020-06-24 | 2020-10-16 | 北京计算机技术及应用研究所 | 一种基于反向代理的微服务治理方法 |
CN111865900A (zh) * | 2020-06-03 | 2020-10-30 | 中邮消费金融有限公司 | 基于rpc协议的跨网络区域代理访问方法及系统 |
CN111917870A (zh) * | 2020-07-30 | 2020-11-10 | 广州津虹网络传媒有限公司 | 请求处理方法、系统、装置、电子设备及存储介质 |
CN112311894A (zh) * | 2020-11-12 | 2021-02-02 | 北京沃东天骏信息技术有限公司 | 用于生成信息的方法、装置、电子设备和计算机可读介质 |
CN112422582A (zh) * | 2020-12-02 | 2021-02-26 | 天翼电子商务有限公司 | 一种异构协议应用接入方法 |
CN112565215A (zh) * | 2020-11-25 | 2021-03-26 | 电信科学技术第十研究所有限公司 | 基于分布式服务代理的rest应用架构及构架方法 |
CN112688915A (zh) * | 2020-12-07 | 2021-04-20 | 北京小米松果电子有限公司 | 跨协议通信方法、装置及服务器 |
CN112752159A (zh) * | 2020-08-25 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 一种互动方法和相关装置 |
CN112801504A (zh) * | 2021-01-28 | 2021-05-14 | 国网浙江省电力有限公司信息通信分公司 | 基于微服务架构的电网服务处理方法 |
CN113301166A (zh) * | 2021-06-16 | 2021-08-24 | 杭州华橙软件技术有限公司 | 服务的调用方法及装置、存储介质、电子装置 |
CN113691635A (zh) * | 2021-09-01 | 2021-11-23 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN114124877A (zh) * | 2020-08-28 | 2022-03-01 | Ncr公司 | 多平台微服务连接技术 |
CN114138259A (zh) * | 2021-11-29 | 2022-03-04 | 广州云徙科技有限公司 | 适配多云平台的多微服务分布式框架的构建系统及方法 |
CN114237704A (zh) * | 2021-11-15 | 2022-03-25 | 贵州大学 | 一种spring-cloud-alibaba nacos框架集成istio的方法 |
CN114640657A (zh) * | 2020-12-16 | 2022-06-17 | 北京国双科技有限公司 | 多注册中心的融合方法、装置 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN114827295A (zh) * | 2022-04-26 | 2022-07-29 | 北京奇艺世纪科技有限公司 | 一种服务注册方法、注册中心、系统及可读存储介质 |
US11442765B1 (en) | 2019-09-18 | 2022-09-13 | Amazon Technologies, Inc. | Identifying dependencies for processes for automated containerization |
US11487878B1 (en) | 2019-09-18 | 2022-11-01 | Amazon Technologies, Inc. | Identifying cooperating processes for automated containerization |
US11650810B1 (en) * | 2020-05-27 | 2023-05-16 | Amazon Technologies, Inc. | Annotation based automated containerization |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411933A (zh) * | 2016-11-15 | 2017-02-15 | 深圳市彬讯科技有限公司 | 一种可进行服务治理与语言调用的轻量级rpc框架 |
CN106453288A (zh) * | 2016-09-29 | 2017-02-22 | 上海和付信息技术有限公司 | 一种支持异步模式的分布式微服务框架系统及其实现方法 |
CN107370786A (zh) * | 2017-06-02 | 2017-11-21 | 广州杰赛科技股份有限公司 | 一种基于微服务架构的通用信息管理系统 |
US20180032534A1 (en) * | 2016-07-27 | 2018-02-01 | Sap Se | Analytics mediation for microservice architectures |
US20180075231A1 (en) * | 2016-09-14 | 2018-03-15 | Oracle International Corporation | Single sign-on functionality for a multi-tenant identity and data security management cloud service |
-
2018
- 2018-11-13 CN CN201811348108.4A patent/CN109246251B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180032534A1 (en) * | 2016-07-27 | 2018-02-01 | Sap Se | Analytics mediation for microservice architectures |
US20180075231A1 (en) * | 2016-09-14 | 2018-03-15 | Oracle International Corporation | Single sign-on functionality for a multi-tenant identity and data security management cloud service |
CN106453288A (zh) * | 2016-09-29 | 2017-02-22 | 上海和付信息技术有限公司 | 一种支持异步模式的分布式微服务框架系统及其实现方法 |
CN106411933A (zh) * | 2016-11-15 | 2017-02-15 | 深圳市彬讯科技有限公司 | 一种可进行服务治理与语言调用的轻量级rpc框架 |
CN107370786A (zh) * | 2017-06-02 | 2017-11-21 | 广州杰赛科技股份有限公司 | 一种基于微服务架构的通用信息管理系统 |
Cited By (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109922148A (zh) * | 2019-03-04 | 2019-06-21 | 网易(杭州)网络有限公司 | 跨平台服务方法、装置和系统 |
CN109922148B (zh) * | 2019-03-04 | 2022-02-25 | 网易(杭州)网络有限公司 | 跨平台服务方法、装置和系统 |
CN110138741A (zh) * | 2019-04-15 | 2019-08-16 | 平安科技(深圳)有限公司 | 基于统一管理平台的微服务管理方法、装置和计算机设备 |
CN110138741B (zh) * | 2019-04-15 | 2022-06-17 | 平安科技(深圳)有限公司 | 基于统一管理平台的微服务管理方法、装置和计算机设备 |
CN110062043A (zh) * | 2019-04-16 | 2019-07-26 | 杭州朗和科技有限公司 | 服务治理方法、服务治理装置、存储介质及电子设备 |
CN110224855B (zh) * | 2019-05-13 | 2022-07-22 | 平安科技(深圳)有限公司 | 微服务实例的注册方法、装置、计算机设备及存储介质 |
CN110224855A (zh) * | 2019-05-13 | 2019-09-10 | 平安科技(深圳)有限公司 | 微服务实例的注册方法、装置、计算机设备及存储介质 |
CN110262902A (zh) * | 2019-05-16 | 2019-09-20 | 杭州朗和科技有限公司 | 信息处理方法及系统、介质和计算设备 |
CN110262902B (zh) * | 2019-05-16 | 2021-08-31 | 杭州朗和科技有限公司 | 信息处理方法及系统、介质和计算设备 |
CN110191164A (zh) * | 2019-05-20 | 2019-08-30 | 中国工商银行股份有限公司 | 分布式服务接入系统及方法 |
CN110191164B (zh) * | 2019-05-20 | 2022-03-22 | 中国工商银行股份有限公司 | 分布式服务接入系统及方法 |
US11442765B1 (en) | 2019-09-18 | 2022-09-13 | Amazon Technologies, Inc. | Identifying dependencies for processes for automated containerization |
US11487878B1 (en) | 2019-09-18 | 2022-11-01 | Amazon Technologies, Inc. | Identifying cooperating processes for automated containerization |
CN110740172B (zh) * | 2019-09-29 | 2022-04-29 | 北京淇瑀信息科技有限公司 | 一种基于微服务架构的路由管理方法、装置和系统 |
CN110740172A (zh) * | 2019-09-29 | 2020-01-31 | 北京淇瑀信息科技有限公司 | 一种基于微服务架构的路由管理方法、装置和系统 |
CN110851512B (zh) * | 2019-10-10 | 2022-07-12 | 上海易点时空网络有限公司 | 用于开源框架的数据配置方法及装置 |
CN110851512A (zh) * | 2019-10-10 | 2020-02-28 | 上海易点时空网络有限公司 | 用于开源框架的数据配置方法及装置 |
CN110716815A (zh) * | 2019-10-11 | 2020-01-21 | 集奥聚合(北京)人工智能科技有限公司 | 基于Spring Gateway的微服务各版本定向调用方法 |
CN110990047A (zh) * | 2019-11-06 | 2020-04-10 | 北京云思畅想科技有限公司 | 用于多个微服务架构的融合方法及装置 |
CN110995829B (zh) * | 2019-11-29 | 2022-07-22 | 广州市百果园信息技术有限公司 | 实例调用方法、装置及计算机存储介质 |
CN110995829A (zh) * | 2019-11-29 | 2020-04-10 | 广州市百果园信息技术有限公司 | 实例调用方法、装置及计算机存储介质 |
CN111131193A (zh) * | 2019-12-10 | 2020-05-08 | 四川新网银行股份有限公司 | 支持多协议异构非代码侵入的分布式服务治理的方法 |
CN111131193B (zh) * | 2019-12-10 | 2022-05-20 | 四川新网银行股份有限公司 | 支持多协议异构非代码侵入的分布式服务治理的方法 |
CN110995746A (zh) * | 2019-12-17 | 2020-04-10 | 神州数码融信软件有限公司 | 异构网络的微服务调用方法及api网关 |
CN111092954A (zh) * | 2019-12-24 | 2020-05-01 | 北京首信科技股份有限公司 | 一种生成微服务的方法和装置及电子设备 |
CN111092954B (zh) * | 2019-12-24 | 2022-05-17 | 北京首信科技股份有限公司 | 一种生成微服务的方法和装置及电子设备 |
CN111049854A (zh) * | 2019-12-25 | 2020-04-21 | 微民保险代理有限公司 | 一种服务请求的传输方法和装置 |
CN111049854B (zh) * | 2019-12-25 | 2021-12-14 | 微民保险代理有限公司 | 一种服务请求的传输方法和装置 |
CN111142852A (zh) * | 2019-12-30 | 2020-05-12 | 亚信科技(中国)有限公司 | 接口转换函数生成方法和装置 |
CN111142852B (zh) * | 2019-12-30 | 2023-10-27 | 亚信科技(中国)有限公司 | 接口转换函数生成方法和装置 |
CN111200651A (zh) * | 2019-12-31 | 2020-05-26 | 优刻得科技股份有限公司 | 定时调用微服务的方法、系统、设备和介质 |
CN111245925A (zh) * | 2020-01-09 | 2020-06-05 | 北京理工大学 | 一种用于现代分布式微服务架构的通信方法与系统 |
CN111209127A (zh) * | 2020-01-13 | 2020-05-29 | 山东汇贸电子口岸有限公司 | 一种Dubbo框架集成Istio服务网格的方法 |
US11650810B1 (en) * | 2020-05-27 | 2023-05-16 | Amazon Technologies, Inc. | Annotation based automated containerization |
CN111865900A (zh) * | 2020-06-03 | 2020-10-30 | 中邮消费金融有限公司 | 基于rpc协议的跨网络区域代理访问方法及系统 |
CN111865900B (zh) * | 2020-06-03 | 2021-06-29 | 中邮消费金融有限公司 | 基于rpc协议的跨网络区域代理访问方法及系统 |
CN111782259A (zh) * | 2020-06-24 | 2020-10-16 | 北京计算机技术及应用研究所 | 一种基于反向代理的微服务治理方法 |
CN111782259B (zh) * | 2020-06-24 | 2023-11-10 | 北京计算机技术及应用研究所 | 一种基于反向代理的微服务治理方法 |
CN111917870A (zh) * | 2020-07-30 | 2020-11-10 | 广州津虹网络传媒有限公司 | 请求处理方法、系统、装置、电子设备及存储介质 |
CN112752159A (zh) * | 2020-08-25 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 一种互动方法和相关装置 |
CN112752159B (zh) * | 2020-08-25 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 一种互动方法和相关装置 |
CN114124877B (zh) * | 2020-08-28 | 2023-08-04 | Ncr公司 | 多平台微服务连接技术 |
US11934896B2 (en) | 2020-08-28 | 2024-03-19 | Ncr Voyix Corporation | Multiplatform microservice connection techniques |
CN114124877A (zh) * | 2020-08-28 | 2022-03-01 | Ncr公司 | 多平台微服务连接技术 |
CN112311894A (zh) * | 2020-11-12 | 2021-02-02 | 北京沃东天骏信息技术有限公司 | 用于生成信息的方法、装置、电子设备和计算机可读介质 |
CN112565215A (zh) * | 2020-11-25 | 2021-03-26 | 电信科学技术第十研究所有限公司 | 基于分布式服务代理的rest应用架构及构架方法 |
CN112422582A (zh) * | 2020-12-02 | 2021-02-26 | 天翼电子商务有限公司 | 一种异构协议应用接入方法 |
CN112688915A (zh) * | 2020-12-07 | 2021-04-20 | 北京小米松果电子有限公司 | 跨协议通信方法、装置及服务器 |
CN114640657A (zh) * | 2020-12-16 | 2022-06-17 | 北京国双科技有限公司 | 多注册中心的融合方法、装置 |
WO2022134358A1 (zh) * | 2020-12-24 | 2022-06-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN112801504A (zh) * | 2021-01-28 | 2021-05-14 | 国网浙江省电力有限公司信息通信分公司 | 基于微服务架构的电网服务处理方法 |
CN113301166A (zh) * | 2021-06-16 | 2021-08-24 | 杭州华橙软件技术有限公司 | 服务的调用方法及装置、存储介质、电子装置 |
CN113691635B (zh) * | 2021-09-01 | 2022-08-19 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN113691635A (zh) * | 2021-09-01 | 2021-11-23 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN114237704B (zh) * | 2021-11-15 | 2023-06-09 | 贵州大学 | 一种spring-cloud-alibaba nacos框架集成istio的方法 |
CN114237704A (zh) * | 2021-11-15 | 2022-03-25 | 贵州大学 | 一种spring-cloud-alibaba nacos框架集成istio的方法 |
CN114138259A (zh) * | 2021-11-29 | 2022-03-04 | 广州云徙科技有限公司 | 适配多云平台的多微服务分布式框架的构建系统及方法 |
CN114827295A (zh) * | 2022-04-26 | 2022-07-29 | 北京奇艺世纪科技有限公司 | 一种服务注册方法、注册中心、系统及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109246251B (zh) | 2021-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246251A (zh) | 一种微服务调用方法、装置、系统、设备及可读存储介质 | |
EP3748908B1 (en) | Method, system, network device, storage medium for creating a network slice | |
CN101291337B (zh) | 一种网格资源管理系统及管理方法 | |
US20150163179A1 (en) | Execution of a workflow that involves applications or services of data centers | |
US8219970B2 (en) | XML push and remote execution of a wireless applications | |
US20140033170A1 (en) | System and method of generating rest2rest services from wadl | |
Nguyen et al. | Ws2jade: Integrating web service with jade agents | |
CN1968134B (zh) | 基于中间件实现多媒体融合业务的方法及系统 | |
CN101686173A (zh) | 一种业务协商方法、系统和设备 | |
CN104615489B (zh) | 一种多节点数据交互的实现方法 | |
CN111245916A (zh) | 基于微服务网关的服务调用方法、服务编排方法及装置 | |
CN112149079A (zh) | 基于微服务架构的规划评审管理平台及用户访问授权方法 | |
CN104618433A (zh) | 一种基于eca规则的服务组合方法 | |
CN102591724A (zh) | 消息交互方法及装置 | |
CN105721562A (zh) | 一种基于代理的异构服务调用方法与协同调用系统 | |
CN101729491A (zh) | 一种增强基于脚本业务的应用可靠性的方法、装置和系统 | |
CN105959385A (zh) | 一种信息通信方法、装置及系统 | |
US10268496B2 (en) | System and method for supporting object notation variables in a process defined by a process execution language for execution in a SOA middleware environment | |
WO2023208132A1 (zh) | Api转换系统及其访问请求处理方法、电子设备及介质 | |
US10223143B2 (en) | System and method for supporting javascript as an expression language in a process defined by a process execution language for execution in a SOA middleware environment | |
Plebani et al. | MicroMAIS: executing and orchestrating Web services on constrained mobile devices | |
CN103064688A (zh) | 工作流通用服务的方法和系统 | |
KR20140037605A (ko) | Cim 스키마 및 시스템 토폴로지 정보를 이용한 ami의 동적 운영 방법 | |
Sefid‐Dashti et al. | A reference architecture for mobile SOA | |
CN102137079A (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 |