CN103051551B - 一种分布式***及其自动维护方法 - Google Patents
一种分布式***及其自动维护方法 Download PDFInfo
- Publication number
- CN103051551B CN103051551B CN201110310214.5A CN201110310214A CN103051551B CN 103051551 B CN103051551 B CN 103051551B CN 201110310214 A CN201110310214 A CN 201110310214A CN 103051551 B CN103051551 B CN 103051551B
- Authority
- CN
- China
- Prior art keywords
- service
- node
- message
- log
- request
- 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
Abstract
本发明公开了一种分布式***及其自动维护方法,上述方法包括以下步骤:节点启动服务后,定时向服务注册中心发送服务注册请求;上述服务注册中心根据收到的服务注册请求,对本地信息进行维护,并向上述节点或其关联节点提供信息服务。本发明的分布式***规模可以动态收缩,节点启动后会自动发起服务注册,无需手动配置;节点之间通过调用关系自动形成网状关系并可动态调整,网络结构无需事先规划,此外本发明***维护简单,构建成本较低。
Description
技术领域
本发明涉及云计算领域中的分布式技术,尤其涉及一种分布式***及其自动维护方法。
背景技术
随着互联网、传统电信网的用户和应用的日益增长,以及两者融合(成为移动互联网)趋势的不断加强,通过服务器的数据流量及访问请求也在不断增长。这对服务器的部署与维护、运行于其上的软件性能、以及整个***的可伸缩性提出了越来越高的需求。对于这些需求,现有技术提出了一些应对的分布式计算***。当服务器过于繁忙时,通过增加***的负载均衡设备和服务器数量,或者通过提升单个服务器的硬件和软件性能来提升其处理能力。由于服务器成本过高、性能增长潜力有限,对其性能进行提升已不是主流的解决方案。
图1是现有技术提出的一种分布式***,如图1所示,这种***通过负载均衡设备支撑一组服务器,负载均衡设备放置在所有服务器的前端,向外统一暴露服务的接口。负载均衡设备可能是硬件,如四层交换机;也可能是软件,如一些反向代理软件。这种***一般应用于互联网的站点上,其设计思想是通过负载均衡设备将众多WEB服务器形成集群,从而向用户提供单一的HTML服务。这种***在服务(应用)增多时,需要增设新的负载均衡设备,由于每个服务都需要一组服务器来支撑,而每一组服务器都使用一个负载均衡设备,这势必会造成部署成本的急剧上升,负载均衡设备也会因访问请求的大量增加而不堪重负。另外,在***内部新增一组服务时,客户机并不能自动感知这些新增服务的服务器地址,必须经过一系列手动配置后访问请求才能被顺利送达新的服务器。在现代具有成百上千台服务器的数据中心做这样的手动配置是非常困难、低效的。
因此,这种分布式***存在部署成本过高、后期维护困难、***健壮性差等缺点,该***并不能解决服务和用户增长所带来的服务器性能瓶颈等问题。
图2是现有技术提出的另一种分布式***,如图2所示,这种***通过ESB(Enterprise Service Bus,企业服务总线)服务器支撑一组服务,所有访问请求都需要通过ESB服务器转发。ESB服务器基于SOA(Service-Oriented Architecture,面向服务架构)思想,提供了负载均衡机制,新增的服务对客户机也是透明的。然而,ESB服务器本身承担了太多功能,存在单点失效隐患和单机性能瓶颈。另一方面,在这种***上新增一种服务或服务节点时,需要在ESB服务器上手动注册,存在维护困难、规模伸缩性差的问题。ESB服务器的另一个限制是,通常它是直接向外暴露服务的,内部服务之间不能相互调用,因此它一般应用于企业需要将内部众多***整合并对外提供标准服务的情况,并不适用于构建大规模的分布式***。
发明内容
本发明的目的在于,提供一种分布式***及其自动维护方法,以解决现有分布式***所存在的部署成本过高、性能瓶颈严重、后期维护困难、***健壮性和伸缩性差等问题。
本发明通过以下技术方案解决上述技术问题:
一种大规模分布式***的自动维护方法,上述方法包括以下步骤:
节点启动服务后,定时向服务注册中心发送服务注册请求;
上述服务注册中心根据收到的服务注册请求,对本地信息进行维护,并向上述节点或其关联节点提供信息服务。
根据上述方法,上述节点包括提供服务的节点及中转服务的节点,上述服务注册请求中包含上述节点的注册信息,上述注册信息包括上述节点的IP地址、端口号以及上述节点可中转或提供的服务名称。
上述服务注册中心采用以下方法对本地信息进行维护:
根据上述注册服务请求中的注册信息,判断上述节点是否是首次注册,若是,则将上述注册信息保存到本地节点链表中,否则将上述注册信息与上述节点链表中上述节点的旧注册信息进行比对,若两者不一致则用上述注册信息更新上述节点链表。
上述服务注册中心将上述注册信息保存到本地节点链表中或用上述注册信息更新上述节点链表之后还包括以下步骤:
判断上述节点是否为提供服务的节点;
若是,则将上述节点的注册信息发送给使用上述节点服务的关联节点,否则,向上述节点提供其要中转的服务所属的目标节点的注册信息。
上述方法还包括以下上述节点调用服务的步骤:
上述节点首先向上述服务注册中心发出服务调用请求;
上述服务注册中心收到上述调用请求后,将可中转或提供上述节点所需服务的所有目标节点的注册信息返回给上述节点;
上述节点保存目标节点的注册信息,并获取各目标节点的负载情况,然后向负载最小的目标节点发出服务调用请求;
上述负载最小的目标节点收到上述调用请求后,将上述节点需要的服务返回给上述节点。
根据上述方法,上述服务注册中心收到上述调用请求后,将可中转或提供上述节点所需服务的所有目标节点的注册信息返回给上述节点步骤包括:
上述服务注册中心将上述节点要调用的服务保存到本地上述节点链表中;
根据本地上述节点链表判断是否有节点中转上述服务,若是,则将可中转上述服务的所有目标节点的注册信息发送给上述节点,否则,判断是否有节点提供上述服务;
若是,则将可提供上述服务的所有目标节点的注册信息发送给上述节点,否则返回服务请求失败的信息。
上述节点采用以下方法获取各个上述目标节点的负载情况:
根据上述目标节点的注册信息,定时向各目标节点发送自身的心跳信息;
各目标节点收到心跳信息后,将自身的心跳信息返回给上述节点;
上述节点根据各目标节点的心跳信息,获取其负载情况。
上述心跳信息包括节点的IP地址及负载数据。
上述节点保存了目标节点的注册信息后,若下次再请求上述服务时,跳过向上述服务注册中心发出服务调用请求的步骤,直接向负载最小的目标节点发出服务调用请求,直至请求失败为止。
上述分布式***的自动维护方法还包括:当上述节点未定时发送服务器注册请求时,上述服务注册中心删除上述节点在本地保存的注册信息。
本发明还采用以下技术方案:
一种分布式***,包括节点和服务注册中心;
上述节点,用于在启动服务后,定时向服务注册中心发送服务注册请求;
上述服务注册中心,用于根据收到的服务注册请求,对本地信息进行维护,并向上述节点或其关联节点提供信息服务。
上述节点包括信息注册模块、服务请求模块、可选的服务提供模块、及服务接收模块;
上述信息注册模块,用于定时向上述服务注册中心发送服务注册请求;
上述服务请求模块,用于向上述服务注册中心或其他节点发出服务调用请求;
上述服务提供模块,用于收到服务调用请求后,将自身提供的服务返回给相应的节点;
上述服务接收模块,用于接收其他节点提供的服务。
上述服务注册中心包括信息维护模块、服务通知模块、及服务响应模块;
上述信息维护模块,用于接收上述节点的注册请求,并根据上述注册请求对本地保存的节点信息进行维护;
上述服务通知模块,用于将新增或更新的节点信息发送给其他关联节点,或向上述新增或更新的节点提供其要中转的服务所属的节点信息;
上述服务响应模块,用于在收到上述节点发出的服务调用请求后,将可中转或提供相应服务的节点信息返回给上述节点。
与现有技术相比,本发明具有如下有益技术效果:
1)服务自动发现:与传统的分布式***在新服务注册时需要手动设置不同,本发明的服务节点启动后会自动向服务注册中心注册其服务类型;其他节点需要请求这一服务时,通过服务注册中心便可得到服务所在位置。这一特性带来的好处是网络结构简单,通信链路可根据节点之间的调用关系自动建立,不需事先规划节点之间的网络结构(传统***通常要事先规划,也无法动态做调整),这方便了在数据中心中动态增加或删除节点;
2)自动均衡负载:本发明节点在请求目标节点提供的服务时,自动选择负载最小的节点建立通信链路,并发送服务调用请求。从而在不引入传统负载均衡器设备的情况下,本发明也能实现节点之间的负载均衡。这不仅节省了成本,同时也消除了单一负载均衡器的单点失效隐患和单点性能瓶颈,***健壮性更强;
3)规模伸缩方便:本发明节点之间是松散耦合的,任何节点故障、甚至服务注册中心故障,都不会影响***继续运行,增加或删除节点仅仅是促使服务请求量在节点之间重新分布;因此,本发明***的规模伸缩非常方便,有利于构建大规模的分布式计算***;
4)服务相对独立:本发明节点在发送注册请求、请求调用服务、获取负载情况时均不涉及节点自身所运行的服务(软件),即软件本身不参与这些功能,这些功能均由节点底层的通信框架自动完成,软件只需关注于服务逻辑的实现。这降低了分布式计算***的服务开发难度。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是现有技术提出的一种分布式***的结构示意图;
图2是现有技术提出的另一种分布式***的结构示意图;
图3是本发明分布式***优选实施例的结构示意图;
图4本发明分布式***的自动维护方法优选实施例的流程图;
图5是本发明分布式***优选实施例的模块框图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
图3是本发明分布式***优选实施例的结构示意图。如图3所示,本发明实施例中的分布式***具有多个节点,包括提供服务的节点(服务节点)和中转服务的节点(中转节点),每个节点的硬件可以是比较廉价的计算机,但依靠***强大的伸缩性,在整体上***可以提供非常强大的计算能力。节点与节点、节点与服务注册中心之间可以通过计算机底层通信框架建立通信链路,例如TCP通信链路,以实现向对方持续发送信息或服务的功能。
一个节点在得到其他节点的注册信息后可与其建立通信链路,并向其发送服务调用请求。服务注册中心作为***的核心组成,保存了所有节点的注册信息,包括所有节点的IP地址、端口号、及节点提供或中转的服务。每个服务可以分布在多个服务节点中,即一组服务节点可提供同一种服务类型。中转节点可以中转服务,但是其本身并不承载(提供)服务,因此中转节点是可选的,但中转节点可以简化***的网络拓扑结构。例如,图3中服务节点1要调用服务B时,由于服务节点4和5可提供这种服务,故必须先向服务注册中心获取服务节点4和5的注册信息,然后判断它们的负载情况,再请求负载小的服务节点返回所需服务。而若设置了中转节点1,服务节点1仅需将服务调用请求发送给中转节点1即可。
值得注意的是,本实施例服务节点1在获得服务节点4和5的注册信息后,会定时向服务节点4和5发送心跳信息,由此服务节点1不仅可以获得对方的负载情况,还可以在未收到对方心跳信息时掌握对方故障/退出的信息。例如,若服务节点1未收到服务节点5的心跳信息时,服务节点1判断服务节点5故障/退出,此时其不再将服务调用请求发送给服务节点5,直到服务注册中心通知其服务节点5重新启动为止。
另外需要说明的是,本实施例的分布式***规模可以动态伸缩,图3只是示意性地给出了A、B两组服务,实际上本发明可以支持无限多的服务,同时本发明可以根据需要随时增加新的服务或中转节点以提升***性能,也可以在服务请求变少时关闭部分服务节点。节点的加入和退出都是动态的,无需手工进行设置,这是因为本发明通过服务注册中心自动维护各个节点及其注册信息,新节点加入时会向服务注册中心发起注册,其他关联节点通过服务注册中心即可迅速获取新节点的信息,便将部分服务调用请求分担到新节点上。另外由于节点是要定时向服务注册中心发送注册信息的,因此当某个节点退出时,服务注册信息便可迅速感知这一状况,并将该节点信息从本地删除,而其他关联节点通过心跳信息接收的停断,也可立即探测到这一状况,新的服务调用请求将不再发送到该节点。
以上从总体上对本发明分布式***的结构及其维护(运行)机制进行了详细说明,下面将结合附图4对本发明提供的分布式***的自动维护方法进行详细说明。
图4本发明分布式***的自动维护方法优选实施例的流程图,如图4所示,本发明优选实施例的方法包括以下步骤:
步骤S1:节点启动服务后,定时向服务注册中心发送服务注册请求;
当一个节点启动服务后,它开始定时向服务注册中心发送服务注册请求,上述注册请求包括节点的IP地址、端口号、以及节点可中转或提供的服务名称,其中节点可中转或提供的服务可以是一个或多个。通过定时发送上述注册请求,服务注册中心可以及时了解节点的运行情况,并在没有收到节点定时发来的注册请求时获知节点出现故障或退出***的信息。
步骤S2:服务注册中心接收节点发来的服务注册请求;
步骤S3:服务注册中心根据收到的服务注册请求对本地信息进行维护;
服务注册中心通过以下方法对本地信息进行维护:
根据上述注册服务请求中的注册信息,判断上述节点是否是首次注册,若是,则将上述注册信息保存到本地节点链表中,否则将上述注册信息与上述节点链表中上述节点的旧注册信息进行比对,若两者不一致则用上述注册信息更新上述节点链表。
步骤S4:服务注册中心向上述节点或其关联节点提供信息服务;
服务注册中心采用以下方法向上述节点或其关联节点提供信息服务:
判断上述节点是否为提供服务的节点:
若是则将上述节点的注册信息发送给使用上述节点服务的关联节点,否则向上述节点提供其要中转的服务所属的目标节点的注册信息。
通过步骤S4,当有服务节点加入或更新时,需要使用该节点服务的其他节点通过服务注册中心便可迅速知道该节点情况,并将服务请求分担到该节点上。当有中转节点加入或更新时,中转节点通过服务注册中心也可迅速知道其要中转的服务所属的节点信息,由此当其收到节点的服务调用请求时,便可将请求转发给服务节点。
步骤S5:上述节点向服务注册中心发出服务调用请求;
当上述节点需要使用某个节点A提供的服务,并且上述节点本地并未记录节点A的注册信息时,可向服务注册中心发出服务调用请求,请求获取该节点A的注册信息,包括IP地址、服务端口号等,从而与该节点A建立通信链接,并获得其提供的服务。
步骤S6:服务注册中心接收上述请求,将可中转或提供上述节点所需服务的目标节点的注册信息返回给上述节点;
服务注册中心收到上述请求后,首先将上述节点需要调用的服务保存于本地,以便在后续有新节点加入并可提供其所需服务时,将新节点的注册信息主动返回给上述节点;
然后根据本地记录的节点链表信息判断是否有节点可中转上述节点所需的服务,若是,则将可中转上述节点所需服务的目标节点的注册信息发送给上述节点,否则查找是否有节点可提供上述节点所需的服务;
若是,则将可提供上述节点所需服务的所有目标节点的注册信息发送给上述节点,若否则返回服务请求失败的信息。
例如,图3中的服务节点1需要请求调用服务地址未知的服务B,则服务节点1通过底层通信框架向服务注册中心发出服务B的服务调用请求,服务注册中心收到请求后,首先将服务节点1需要使用服务B的信息记录到本地节点链表中,然后查询是否有节点可中转服务B,结果发现中转节点1可以中转服务B,于是将中转节点1的注册信息发送给服务节点1。假设中转节点1故障或退出***,则服务注册中心查询发现没有节点可中转服务B,于是查询是否有节点提供服务B,结果发现存在服务节点4和服务节点5可提供直接服务B,此时服务注册中心将服务节点4和服务节点5的注册信息发送给服务节点1。
步骤S7:上述节点保存目标节点的注册信息,获取各目标节点的负载情况,并向负载最小的目标节点发出服务调用请求;
上述节点在收到可中转或提供自身所需服务的所有目标节点的注册信息后,将这些目标节点的注册信息保存在本地,以便下次再要调用这些目标节点提供的服务时,跳过向服务注册中心发送服务调用请求的步骤,直接向负载最小的目标节点发送服务调用请求,直至某次请求失败时才重新向服务注册中心发送服务调用请求。
上述节点采用以下方法获取各个目标节点的负载情况:
根据各个目标节点的注册信息,定时向各个目标节点发送自身的心跳信息;各个目标节点收到上述节点的心跳信息后,将各自的心跳信息返回给上述节点;上述节点接收各个目标节点的心跳信息,并从中获取各个目标节点的负载情况。
由于所述心跳信息包含节点自身的IP地址及负载数据,因此上述节点通过与目标节点互发心跳信息,并能获取对方的负载情况。上述节点通过定时向各个目标节点发送心跳信息,不仅可以获取对方的负载情况,还可以掌握目标节点是否出现故障或退出***等更多信息。例如,当上述节点没有收到某个目标节点返回的心跳信息时,可以判断该目标节点已出现故障或退出***,此后服务注册请求将不再发给该目标节点。
例如假设在上一步骤S6中,图3中的服务节点1向服务注册中心请求调用服务B时,收到了服务节点4和服务节点5的注册信息,则在步骤S7中,服务节点1首先将服务节点4和服务节点5的注册信息保存于本地,然后分别向服务节点4和服务节点5发送心跳信息,以获取它们的负载情况,最后选择与负载较小的一个节点建立通信链路,并向其发出服务调用请求。
步骤S8:负载最小的节点收到服务调用请求后,将上述节点所需的服务返回给上述节点;
当上述负载最小的节点为中转节点时,其收到上述请求后,将上述请求转发给可直接提供上述服务的节点,并将请求结果返回给上述节点;当上述负载最小的节点为服务节点时,其收到上述请求后,直接将上述节点所需的服务返回给上述节点。
步骤S9:当上述节点未定时发送服务器注册请求时,服务注册中心删除上述节点在本地保存的注册信息。
图5是本发明分布式***优选实施例的模块框图,如图5所示,本发明优选实施例的分布式***包括:节点51和服务注册中心52;
上述节点51,用于在启动服务后,定时向服务注册中心52发送服务注册请求;
上述服务注册中心52,用于根据收到的服务注册请求,对本地信息进行维护,并向上述节点51或其关联节点提供信息服务。
上述节点51包括信息注册模块511、服务请求模块512、可选的服务提供模块513、及服务接收模块514;
上述信息注册模块511,用于定时向上述服务注册中心52发送服务注册请求;
上述服务请求模块512,用于向上述服务注册中心52或其他节点发出服务调用请求;
上述服务提供模块513,用于在收到服务调用请求后,将自身提供的服务返回给相应的节点;
上述服务接收模块514,用于接收其他节点提供的服务。
上述服务注册中心52包括信息维护模块521、服务通知模块522、及服务响应模块523;
上述信息维护模块521,用于接收上述节点51的注册请求,并根据上述注册请求对本地保存的节点信息进行维护;
上述服务通知模块522,用于将新增或更新的节点信息发送给其他关联节点,或向上述新增或更新的节点提供其要中转的服务所属的节点信息;
上述服务响应模块523,用于在收到上述节点51发出的服务调用请求后,将可中转或提供相应服务的目标节点信息返回给上述节点51。
上述说明示出并描述了本发明的优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (12)
1.一种分布式***的自动维护方法,其特征在于,所述方法包括以下步骤:
节点启动服务后,定时向服务注册中心发送服务注册请求;
所述服务注册中心根据收到的服务注册请求,对本地信息进行维护,并向所述节点或其关联节点提供信息服务;
所述节点包括提供服务的节点及中转服务的节点;
所述服务节点启动后会自动向服务注册中心注册其服务类型;
所述方法还包括节点调用服务的步骤:
所述节点首先向所述服务注册中心发出服务调用请求;
所述服务注册中心收到所述调用请求后,将可中转或提供所述节点所需服务的所有目标节点的注册信息返回给所述节点;
所述节点保存目标节点的注册信息,并获取各目标节点的负载情况,然后向负载最小的目标节点发出服务调用请求;
所述负载最小的目标节点收到所述调用请求后,将所述节点需要的服务返回给所述节点。
2.根据权利要求1所述的方法,其特征在于:所述服务注册请求中包含所述节点的注册信息,所述注册信息包括所述节点的IP地址、端口号以及所述节点可中转或提供的服务名称。
3.根据权利要求2所述的方法,其特征在于,所述服务注册中心采用以下方法对本地信息进行维护:
根据所述注册服务请求中的注册信息,判断所述节点是否是首次注册,若是,则将所述注册信息保存到本地节点链表中,否则将所述注册信息与所述节点链表中所述节点的旧注册信息进行比对,若两者不一致则用所述注册信息更新所述节点链表。
4.根据权利要求3所述的方法,其特征在于,所述服务注册中心将所述注册信息保存到本地节点链表中或用所述注册信息更新所述节点链表之后还包括以下步骤:
判断所述节点是否为提供服务的节点;
若是,则将所述节点的注册信息发送给使用所述节点服务的关联节点,否则,向所述节点提供其要中转的服务所属的目标节点的注册信息。
5.根据权利要求1所述的方法,其特征在于,所述服务注册中心收到所述调用请求后,将可中转或提供所述节点所需服务的所有目标节点的注册信息返回给所述节点步骤包括:
所述服务注册中心将所述节点要调用的服务保存到本地所述节点链表中;
根据本地所述节点链表判断是否有节点中转所述服务,若是,则将可中转所述服务的所有目标节点的注册信息发送给所述节点,否则,判断是否有节点提供所述服务;
若是,则将可提供所述服务的所有目标节点的注册信息发送给所述节点,否则返回服务请求失败的信息。
6.根据权利要求1所述的方法,其特征在于,所述节点采用以下方法获取各个所述目标节点的负载情况:
根据所述目标节点的注册信息,定时向各目标节点发送自身的心跳信息;
所述目标节点收到心跳信息后,将自身的心跳信息返回给所述节点;
所述节点根据目标节点的心跳信息,获取其负载情况。
7.根据权利要求6所述的方法,其特征在于:所述心跳信息包括节点的IP地址及负载数据。
8.根据权利要求1所述的方法,其特征在于:所述节点保存了目标节点的注册信息后,若下次再请求所述服务时,跳过向所述服务注册中心发出服务调用请求的步骤,直接向负载最小的目标节点发出服务调用请求,直至请求失败为止。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述节点未定时发送服务注册请求时,所述服务注册中心删除所述节点在本地保存的注册信息。
10.一种分布式***,包括节点,其特征在于还包括:服务注册中心;
所述节点,用于在启动服务后,定时向服务注册中心发送服务注册请求;
所述服务注册中心,用于根据收到的服务注册请求,对本地信息进行维护,并向所述节点或其关联节点提供信息服务;
所述节点包括提供服务的节点及中转服务的节点;
所述服务节点启动后会自动向服务注册中心注册其服务类型;
所述节点,还用于调用服务,所述节点首先向所述服务注册中心发出服务调用请求;
所述服务注册中心,还用于收到所述调用请求后,将可中转或提供所述节点所需服务的所有目标节点的注册信息返回给所述节点;
所述节点,还用于保存目标节点的注册信息,并获取各目标节点的负载情况,然后向负载最小的目标节点发出服务调用请求;
所述负载最小的目标节点收到所述调用请求后,将所述节点需要的服务返回给所述节点。
11.根据权利要求10所述的***,其特征在于:所述节点包括信息注册模块、服务请求模块、可选的服务提供模块、及服务接收模块;
所述信息注册模块,用于定时向所述服务注册中心发送服务注册请求;
所述服务请求模块,用于向所述服务注册中心或其他节点发出服务调用请求;
所述服务提供模块,用于在收到服务调用请求后,将自身提供的服务返回给相应的节点;
所述服务接收模块,用于接收其他节点提供的服务。
12.根据权利要求10所述的***,其特征在于:所述服务注册中心包括信息维护模块、服务通知模块、及服务响应模块;
所述信息维护模块,用于接收所述节点的注册请求,并根据所述注册请求对本地保存的节点信息进行维护;
所述服务通知模块,用于将新增或更新的节点信息发送给其他关联节点,或向所述新增或更新的节点提供其要中转的服务所属的节点信息;
所述服务响应模块,用于在收到所述节点发出的服务调用请求后,将可中转或提供相应服务的节点信息返回给所述节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110310214.5A CN103051551B (zh) | 2011-10-13 | 2011-10-13 | 一种分布式***及其自动维护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110310214.5A CN103051551B (zh) | 2011-10-13 | 2011-10-13 | 一种分布式***及其自动维护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103051551A CN103051551A (zh) | 2013-04-17 |
CN103051551B true CN103051551B (zh) | 2017-12-19 |
Family
ID=48064056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110310214.5A Active CN103051551B (zh) | 2011-10-13 | 2011-10-13 | 一种分布式***及其自动维护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103051551B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426936A (zh) * | 2013-08-22 | 2015-03-18 | 中兴通讯股份有限公司 | 一种负载均衡方法及*** |
CN103457870B (zh) * | 2013-09-25 | 2016-06-29 | 武汉理工大学 | 用于分布式***的负载均衡及高可用性子***及方法 |
CN103577256B (zh) * | 2013-11-21 | 2017-03-15 | 五八同城信息技术有限公司 | 分布式定时任务调度*** |
CN103780434A (zh) * | 2014-02-18 | 2014-05-07 | 成都致云科技有限公司 | 大型分布式***无人值守自动组网方法 |
CN103986748B (zh) * | 2014-04-22 | 2019-01-25 | 数贸科技(北京)有限公司 | 实现服务化的方法和装置 |
CN105407161B (zh) * | 2015-11-30 | 2019-06-14 | 北京奇艺世纪科技有限公司 | 应用服务管理方法、***及应用服务发现方法、*** |
CN106874155A (zh) * | 2015-12-14 | 2017-06-20 | 中国航空工业第六八研究所 | 一种嵌入式软件开发阶段针对目标机的动态监控方法 |
CN105915583B (zh) * | 2016-03-28 | 2020-05-26 | 联想(北京)有限公司 | 一种启动服务集群的方法及服务集群 |
CN106210120B (zh) * | 2016-07-29 | 2019-07-09 | 广州南方仕通网络科技有限公司 | 一种服务器的推荐方法及其装置 |
CN106453539B (zh) * | 2016-09-28 | 2019-04-05 | 广州市百果园网络科技有限公司 | 一种处理节点注册通知的方法和*** |
CN106790084A (zh) * | 2016-12-22 | 2017-05-31 | 中国科学院电子学研究所苏州研究院 | 一种基于ice中间件的异构资源集成框架及其集成方法 |
CN109218355B (zh) * | 2017-06-30 | 2021-06-15 | 华为技术有限公司 | 负载均衡引擎,客户端,分布式计算***以及负载均衡方法 |
CN107147466B (zh) * | 2017-07-20 | 2019-03-12 | 郑州云海信息技术有限公司 | 一种***时间一致性的控制方法及*** |
CN109040311B (zh) * | 2018-09-17 | 2021-07-20 | 中国联合网络通信集团有限公司 | 服务信息的推送处理方法与装置 |
CN109120717B (zh) * | 2018-09-26 | 2023-07-25 | 中国平安人寿保险股份有限公司 | 反向代理方法、装置及存储介质、分布式*** |
CN109829093A (zh) * | 2018-12-29 | 2019-05-31 | 深圳云天励飞技术有限公司 | 一种搜索的方法及装置 |
CN110971702A (zh) * | 2019-12-10 | 2020-04-07 | 中国建设银行股份有限公司 | 服务调用方法、装置、计算机设备及存储介质 |
CN111262916B (zh) * | 2020-01-10 | 2022-11-08 | 深圳市网心科技有限公司 | 数据分布式存储方法、装置、存储节点及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1925444A (zh) * | 2006-09-14 | 2007-03-07 | 华为技术有限公司 | 在p2p网络中建立点对点连接的方法及在p2p网络中的节点 |
CN101378327A (zh) * | 2007-08-29 | 2009-03-04 | ***通信集团公司 | 通信网络***和通信网络业务处理方法 |
CN101997759A (zh) * | 2009-08-10 | 2011-03-30 | 中兴通讯股份有限公司 | 一种业务实现方法及业务*** |
-
2011
- 2011-10-13 CN CN201110310214.5A patent/CN103051551B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1925444A (zh) * | 2006-09-14 | 2007-03-07 | 华为技术有限公司 | 在p2p网络中建立点对点连接的方法及在p2p网络中的节点 |
CN101378327A (zh) * | 2007-08-29 | 2009-03-04 | ***通信集团公司 | 通信网络***和通信网络业务处理方法 |
CN101997759A (zh) * | 2009-08-10 | 2011-03-30 | 中兴通讯股份有限公司 | 一种业务实现方法及业务*** |
Also Published As
Publication number | Publication date |
---|---|
CN103051551A (zh) | 2013-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103051551B (zh) | 一种分布式***及其自动维护方法 | |
US9705800B2 (en) | Load distribution in data networks | |
JP4616159B2 (ja) | クラスタシステム、ロードバランサ、ノード振替方法およびノード振替プログラム | |
CN101809966B (zh) | 建立和管理diameter关联的方法和设备 | |
JP3980596B2 (ja) | サーバを遠隔かつ動的に構成する方法およびシステム | |
EP1744519B1 (en) | Information exchange system, management server, and method for reducing the network load | |
US7233999B2 (en) | System and method for delivering last mile computing over light from a plurality of network edge locations | |
EP3249546A1 (en) | Content delivery network | |
CN109189856A (zh) | 分布式数据库服务管理方法、装置、服务器及存储介质 | |
CN106790595A (zh) | 一种Docker容器主动负载均衡装置及方法 | |
CN108833462A (zh) | 一种面向微服务的自注册服务发现的***及方法 | |
US20090319686A1 (en) | Communication route selecting method and apparatus | |
CN107341044A (zh) | 一种分布式数据中心统一监控架构及方法 | |
WO2004036344A2 (en) | System and method for the optimization of database | |
AU2006203017A1 (en) | Information exchange system and management server, terminal unit, and method for reducing network load used in the same | |
CN103475566A (zh) | 一种实时消息交换平台及分布式集群组建方法 | |
EP1180886B1 (en) | Load balancing method and system | |
US10659427B1 (en) | Call processing continuity within a cloud network | |
CN107888551A (zh) | 一种远程服务调用方法、装置和*** | |
CN111757353A (zh) | 5g核心网中的网络数据处理方法及装置 | |
CN111917838B (zh) | 基于微服务的处理方法及装置、存储介质、电子装置 | |
US20150006622A1 (en) | Web contents transmission method and apparatus | |
US9806965B2 (en) | Automatic user redundancy determination | |
CN113873005B (zh) | 一种微服务集群的节点选主方法、***、设备及介质 | |
CN109120556B (zh) | 一种云主机访问对象存储服务器的方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |