集群管理方法及其管理系统的制作方法

文档序号:10473780阅读:347来源:国知局
集群管理方法及其管理系统的制作方法
【专利摘要】本发明公开了一种集群管理方法,包括步骤:逻辑服务器向集群管理服务器注册自身服务;所述集群管理服务器接收服务消费端的服务请求;所述集群管理服务器发送与所述服务请求相匹配的逻辑服务器地址列表给所述服务消费端;所述服务消费端接收所述逻辑服务器地址列表;以及所述服务消费端从所述逻辑服务器地址列表中选择逻辑服务器来提供服务。基于上述集群管理方法可快速为服务消费者配备可选择的作为服务提供者的逻辑服务器,且本发明还公开了应用该集群管理方法的集群管理系统。
【专利说明】
集群管理方法及其管理系统
技术领域
[0001]本发明涉及分布式服务器集群管理领域,尤其涉及一种集群管理方法及其管理系统。
【背景技术】
[0002]分布式协作服务是云计算范畴的一个领域,传统的分布式协作服务系统中的服务提供者是通过服务注册端注册,再通过服务注册端将其注册到服务器上,服务消费者需要订阅服务时是通过服务订阅端再从服务器中获取服务信息,该方法未实现服务消费者、月艮务提供者以及服务器之间的直接通讯,因此不能快速配置服务提供者给服务消费者,尤其是当若干服务消费者请求服务时,容易造成系统瘫痪,尤其是随着智能产品的发展,应用产品后台支撑系统也越来越复杂和庞大,此时,更对有序管理以及快速处理服务请求方法更加迫切。

【发明内容】

[0003]有鉴于此,实有必要提供一种快速为服务消费者配备可选择的服务提供者的集群管理系统及其方法。
[0004]本发明提供的技术方案:一种集群管理方法,包括步骤:逻辑服务器向集群管理服务器注册自身服务;所述集群管理服务器接收服务消费端的服务请求;所述集群管理服务器发送与所述服务请求相匹配的逻辑服务器地址列表给所述服务消费端;所述服务消费端接收所述逻辑服务器地址列表;以及所述服务消费端从所述逻辑服务器地址列表中选择逻辑服务器来提供服务。
[0005]—种集群管理系统,包括集群管理服务器、若干个与集群管理服务器通讯的逻辑服务器以及若干个与集群管理服务器通讯的服务消费端,所述逻辑服务器充当服务提供者,用于为所述服务消费端提供服务;所述集群管理服务器用于统筹管理所述逻辑服务器以及所述消费服务端,所述逻辑服务器包括注册模块;所述集群管理服务器包括第一接收模块以及第一发送模块;所述服务消费端包括第二接收模块和选择模块,所述注册模块用于所述逻辑服务器向所述集群管理服务器注册自身服务;所述第一接收模块用于所述集群管理服务器接收所述服务消费端的服务请求;所述第一发送模块用于所述集群管理服务器发送与所述服务请求相匹配的逻辑服务器地址列表给所述服务消费端;所述第二接收模块用于接收所述逻辑服务器地址列表,以及所述选择模块用于所述服务消费端从所述逻辑服务器地址列表中选择逻辑服务器来提供服务。
[0006]基于上述集群管理方法和系统,集群管理服务器统筹管理逻辑服务器和服务消费端,建立了三者之间彼此的通讯,逻辑服务器作为服务提供者,直接将服务注册到集群管理服务器上,且服务消费端可直接向集群管理服务器请求服务,以便集群管理服务器提供与该服务请求匹配的逻辑服务器的地址列表给服务消费端,实现了快速为服务消费端提供了可选择的逻辑服务器,从而使系统业务处理速度提高,更加稳定,避免了因业务处理过慢而堆积,导致系统瘫痪情况发生。
【附图说明】
[0007]图1为本发明实施例的集群管理系统方法的流程图。
[0008]图2为本发明实施例的集群管理系统的示意图。
[0009]图3为本发明实施例的集群管理系统的功能模块图。
【具体实施方式】
[0010]下面将结合本发明实施方式中的附图,对实施方式中的技术方案进行清楚、完整的描述。
[0011]请参看图1,本发明实施例提供一种集群管理方法,其中,逻辑服务器作为服务提供者,并向集群管理服务器注册自身服务;服务消费端则向集群管理服务器请求服务,而集群管理服务器统筹管理逻辑服务器和服务消费端,建立三者之间彼此的通讯,以便为服务消费端提供与其所请求的服务相匹配的可选择的逻辑服务器的地址列表。该集群管理方法的包括步骤:
[0012]步骤SlOl,逻辑服务器向集群管理服务器注册自身服务。
[0013]步骤S102,集群管理服务器接收服务消费端的服务请求。
[0014]步骤S103,该集群管理服务器发送与该服务请求相匹配的逻辑服务器地址列表给所述服务消费端。具体地,由于逻辑服务器向集群管理服务器注册了其自身的服务,集群管理服务器中的路由表将新增该逻辑服务器,该路由表包含所有在线逻辑服务器的节点名以及目标地址等,一个节点名匹配一个逻辑服务器,因此,集群管理服务器可根据路由表中内容获取在线的逻辑服务器的名称、端口以及服务内容。当服务消费端请求服务时,集群管理服务器将当前与所请求的服务相匹配的逻辑服务器的地址列表发送给服务消费端以供服务消费端选择。例如,服务消费端请求通讯录信息,集群管理服务器将该时刻所有在线的且是通讯录服务的逻辑服务器的地址列表发送该服务请求端以供该服务请求端选择。
[0015]步骤S104,该服务消费端接收该逻辑服务器地址列表。
[0016]步骤S105,该服务消费端从该逻辑服务器地址列表中选择逻辑服务器来提供服务。具体地,服务消费端可随机从逻辑服务的地址列表中选择逻辑服务器提供服务或者根据逻辑服务器的当前性能指标从逻辑服务器地址列表中选择负载最低的逻辑服务器来提供服务,该当前性能指标具体表示为逻辑服务器的当前负载。本实施例子中,优选服务消费端选择负载最低的逻辑服务器来提供服务。
[0017]本实施例中,集群管理服务器与逻辑服务器以及服务消费者之间建立通讯,且逻辑服务器直接将其自身服务注册在集群管理服务器上,当服务消费者向集群管理服务器请求服务时,集群管理服务器可以直接为服务消费端提供与服务请求相匹配的逻辑服务器以供服务消费端选择,从而实现了快速为服务消费端提供了可选择的逻辑服务器。
[0018]相对于本实施例,进一步的方案为,步骤SlOl之前还包括步骤A,步骤S102之前还包括步骤B和步骤C,该步骤A、步骤B以及步骤C如下所示:
[0019]步骤A,逻辑服务器读取预存的逻辑服务器配置文件,以便获取集群管理服务器的地址以及该逻辑服务器的服务信息。具体地,该逻辑服务器配置文件为该逻辑服务器预存的其本身的配置文件,该逻辑服务器配置文件包含集群管理服务器的地址以及该逻辑服务器的服务信息,该服务信息包括该逻辑服务器的名称、端口以及服务内容。且逻辑服务器的名称和端口、服务内容相匹配,以便通过逻辑服务器的名称可快速确定逻辑服务器的服务类型以及通讯的端口。
[0020]步骤B,服务消费端读取预存的服务消费端配置文件,以便获取集群管理服务器的地址以及需要订阅的服务。具体地,该服务消费端配置文件包括集群管理服务器的地址以及需要订阅的服务的内容。
[0021 ]步骤C:服务消费端发送服务请求给集群管理服务器。
[0022]相对于本实施例,进一步的方案为,步骤SlOl后还包括步骤D以及步骤S103之后还包括步骤E,该步骤D和步骤E如下所示:
[0023]步骤D,逻辑服务器定时发送心跳包给集群管理服务器,以保证该逻辑服务器与集群管理服务器之间的连接的可靠性。具体地,本实施例子中,逻辑服务器通过UDP定时发送心跳,以便通知集群管理服务器该逻辑服务区是在线状态。
[0024]步骤E,服务消费端定时发送心跳包给集群管理服务器,以保证该服务消费端与集群管理服务器之间的连接的可靠性。具体地,本实施例子中,服务消费端也通过UDP定时发送心跳,以便通知集群管理服务器该服务消费端是在线状态。
[0025]上述逻辑服务器以及消费服务端通过定时发送心跳包给集群管理服务器来通知集群管理服务器其是否在线。而当服务消费端请求服务且集群管理服务器发送逻辑服务器的地址列表后,逻辑服务器可能随后将上线和下线,导致集群管理服务器发送给服务消费端的逻辑服务器的地址列表不是当前时刻与服务请求所匹配的最新的在线逻辑服务器的地址列表,因此,该集群管理方法还包括步骤F。
[0026]步骤F:集群管理服务器通过心跳包推送逻辑服务器的地址列表的变更数据给服务消费端。具体地,当逻辑服务器因上线和下线导致与服务请求相匹配的逻辑服务器地址列表有变动时,集群管理服务器通过UDP发送心跳包给服务消费端。因此,集群管理服务器在只管理在线的逻辑服务器且将其地址列表发送给服务消费端前提下,随时将逻辑服务器的动态传达给服务消费者,为服务消费端提供了更加可靠的可选择的逻辑服务器,可有效的防止服务消费端选择下线的逻辑服务器的情况发生。
[0027]相对于本实施例,进一步的方案为,该集群管理方法还包括步骤M:
[0028]步骤M:逻辑服务器和消费服务端还分别将自身占据内存的调用次数以及调用时间的统计数据发送给公共管理服务器,以便记录逻辑服务器以及消费服务端的运行状态和使用历史。具体地,公共缓存服务器将同时与集群管理服务器、逻辑服务器以及服务消费端保持通讯,因此本实施例子中,将逻辑服务器和消费服务端占据内存的调用次数以及调用时间的统计数据发送给公共管理服务器,可便于集群管理服务器、逻辑服务器以及服务消费端均可直接访问公共缓存服务器来获取所需逻辑服务器以及消费服务端的运行状态和使用历史相关数据。此外,本实施例子中,逻辑服务器的当前性能指标存储在公共缓存服务器中,因此服务消费端是直接从公共缓存服务器中获取当前性能指标。
[0029]请参看图2,本发明实施例提供的一种集群管理系统的示意图,集群管理系统100包括集群管理服务器10、与集群管理服务器10通讯的若干逻辑服务器20以及也与集群管理服务器10通讯的若干服务消费端30。其中,服务消费端30用于向集群管理服务器10请求服务,逻辑服务器20充当服务提供者,将其自身服务注册到集群管理服务器10上以便为服务消费端30提供服务;集群管理服务器10用于统筹管理所有的逻辑服务器20以及服务消费端30,建立三者之间彼此的通讯,实现逻辑服务器20与服务消费端30之间连通,以便为服务消费端30提供与所请求的服务相匹配的可选择的逻辑服务器20的地址列表。
[0030]请参看图3,集群管理服务器10包括第一接收模块101以及第一发送模块102;逻辑服务器20包括注册模块201;服务消费端30包括第二接收模块301以及选择模块302。
[0031]逻辑服务器20充当服务提供者,将其自身服务划分类型,具体地,逻辑服务器20依据服务类型将其划分为多种类型,例如,可分为通讯录管理的功能的逻辑服务器20、离线消息管理逻辑服务器20等各种类型。
[0032]注册模块201用于逻辑服务器20向集群管理服务器10注册自身的服务。
[0033]第一接收模块101用于接收逻辑服务器20的注册信息以及服务消费端30的服务请求。
[0034]第一发送模块102用于发送与服务消费端30所请求的服务相匹配的逻辑服务器地址列表给服务消费端30。具体地,由于逻辑服务器20向集群管理服务器10注册了其自身的服务,当服务消费端30请求服务时,集群管理服务器10将当前与所请求的服务相匹配的逻辑服务器地址列表发送给服务消费端30以供服务消费端30选择。
[0035]第二接收模块301用于接收集群管理服务器10发送的与服务请求匹配的逻辑服务器地址列表。
[0036]选择模块302用于从集群管理服务器10发送的与服务请求匹配的该逻辑服务器地址列表中选择逻辑服务器20提供服务。其中,选择模块302可随机从该逻辑服务器地址列表中选择逻辑服务器20提供服务,再或者选择模块302可根据逻辑服务器20的当前性能指标从该逻辑服务器地址列表中选择负载最低的逻辑服务器20来提供服务,该当前性能指标用于表示逻辑服务器30的当前负载。本实施例中,优选选择模块302选择负载最低的逻辑服务器20来提供服务,若选择的逻辑服务器20调用失败,选择模块302还可根据集群容错规则再选择调用其他逻辑服务器20。
[0037]该集群管理系统100利用集群管理服务器10与逻辑服务器20和服务消费端30之间的逻辑关系,集群管理服务器10统筹管理逻辑服务器20以及服务消费端30,并快速为服务消费端30匹配逻辑服务器20来提高服务。
[0038]相对于本实施例,进一步方案为:逻辑服务器20还包括第一读取模块,第一读取模块用于逻辑服务器20读取预存的逻辑服务器配置文件,以便获取集群管理服务器10的地址以及该逻辑服务器20的服务信息。其中,该逻辑服务器配置文件包含集群管理服务器10的地址以及该逻辑服务器20的服务信息,该服务信息包括该逻辑服务器20的名称、端口以及服务内容。其中该逻辑服务器20的名称和端口、服务内容相匹配,以便通过逻辑服务器20的名称可快速确定逻辑服务器20的服务类型以及通讯的端口。
[0039]服务消费端还包括第二读取模块以及第二发送模块,其中第二读取模块用于服务消费端30在发送服务请求之前读取预存的服务消费端配置文件,以便获取集群管理服务器10的地址以及需要订阅的服务。该服务消费端配置文件包括集群管理服务器10的地址以及需要订阅的服务的内容;以及第二发送模块用于发送服务请求给集群管理服务器10。
[0040]相对于本实施例,进一步方案为:逻辑服务器20还包括第三发送模块,该第三发明模块用于定时发送心跳包给集群管理服务器10,保证该逻辑服务器20与集群管理服务器10之间的连接的可靠性。具体地,本实施方式中,逻辑服务器20通过UDP定时发送心跳,以便通知集群管理服务器10该逻辑服务区20是在线状态。
[0041]服务消费端30的第二发送模块还用于定时发送心跳包给集群管理服务器10,保证该服务消费端30与集群管理服务器10之间的连接的可靠性。具体地,本实施方式中,服务消费端30通过UDP定时发送心跳,以便通知集群管理服务器10该服务消费端30是在线状态。
[0042]集群管理服务器10的第一发送模块102还用于推送逻辑服务器地址列表的变更数据给服务消费端30。具体地,当逻辑服务器地址列表有变动时,集群管理服务器10通过UDP发送心跳包给服务消费端30。因为当服务消费端30请求服务且集群管理服务器10发送逻辑服务器的地址列表后,逻辑服务器20可能随后将上线和下线,导致集群管理服务器10发送给服务消费端30的逻辑服务器的地址列表不是当前时刻与服务请求所匹配的最新的在线逻辑服务器地址列表,因此,集群管理服务器10在只管理在线的逻辑服务器且将其地址列表发送给服务消费端30前提下,随时将逻辑服务器20的动态传达给服务消费者,为服务消费端30提供了更加可靠的可选择的逻辑服务器20,可有效的防止服务消费端30选择下线的逻辑服务器20的情况发生。
[0043]相对于本实施例,进一步方案为:该集群管理系统100还包括与集群管理服务器10、逻辑服务器20以及服务消费端30的均通讯的公共缓存服务器,公共缓存服务器用于存储服务消费端30以及逻辑服务器20的运行数据,因此集群管理服务器10、逻辑服务器20以及服务消费端30均可直接访问公共缓存服务器来获取数据。本实施例中,逻辑服务器20的当前性能指标存储在公共缓存服务器中,因此服务消费端30是直接从公共缓存服务器中获取当前性能指标。此外,第三发送模块还将通过心跳包发送逻辑服务器20在内存中累计调用次数以及调用时间的统计数据到公共缓存服务器;第二发送模块还将通过心跳包发送服务消费端30在内存中累计调用次数以及调用时间的统计数据到公共缓存服务器,以便集群管理服务器10、逻辑服务器20以及服务消费端30可更加便捷的获取所需要的数据。
[0044]于其他实施例中,逻辑服务器20也可充当服务消费者来请求服务,例如,一个通讯录管理的逻辑服务器20可向其他逻辑服务器20请求非通讯录的其他服务。
[0045]上述集群管理方法以及集群管理系统,集群管理服务器可及时处理服务消费端的服务请求,且快速地为该服务消费端的服务请求匹配逻辑服务器,此外,集群管理服务器只为服务请求端提供在线的逻辑服务器,从而不在线的逻辑服务器将不占据集群管理服务器的管理空间,提高系统的运行能力以及运行速度,且实现了有序调配。
[0046]为了使得上述集群管理方法更加有序有效的进行,该集群管理方法及其系统还能将逻辑服务器因上线和下线导致服务消费端获取的逻辑服务器的地址列表不是最新的列表时,及时反馈逻辑服务器的地址列表的变更信息给服务消费端。此外,公共缓存服务器的存在使得集群管理服务器、逻辑服务器以及服务消费端可更加便捷的获取所需要的数据。
[0047]综合而言,上述集群管理方法和集群管理系统通过集群管理服务器的统筹管理,有序的为服务消费端匹配可供选择的逻辑服务器,且非在线的逻辑服务器不再占据系统的空间,从而提高了系统的运行速度和系统的稳定性。此外,集群管理服务器及时将逻辑服务器的变更信息发送给服务消费端,为服务消费端提供了更加可靠的可选择的逻辑服务器,可有效的防止服务消费端选择下线的逻辑服务器的情况发生。
[0048]对所公开实例的上述说明,使得本技术领域专业人员能够实现或者使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点一致的最宽范围。
【主权项】
1.一种集群管理方法,其特征在于,包括步骤: 逻辑服务器向集群管理服务器注册自身服务; 所述集群管理服务器接收服务消费端的服务请求; 所述集群管理服务器发送与所述服务请求相匹配的逻辑服务器地址列表给所述服务消费端; 所述服务消费端接收所述逻辑服务器地址列表;以及 所述服务消费端从所述逻辑服务器地址列表中选择逻辑服务器来提供服务。2.如权利要求1所述集群管理方法,其特征在于,所述集群管理方法包括步骤: 所述逻辑服务器向集群管理服务器注册自身服务步骤之前,所述逻辑服务器还读取预存的逻辑服务器配置文件,所述逻辑服务器配置文件包含所述集群管理服务器的地址以及所述逻辑服务器的服务信息,所述服务信息包括所述逻辑服务器的名称、端口以及服务内容; 所述集群管理服务器接收服务消费端的服务请求步骤之前,所述服务消费端还读取预存的服务消费端配置文件,所述服务消费端配置文件包含所述集群管理服务器的地址以及所述服务消费端所需要订阅的服务内容。3.如权利要求1所述集群管理方法,其特征在于,所述集群管理方法还包括步骤: 所述逻辑服务器定时发送心跳包给所述集群管理服务器; 所述服务消费端定时发送心跳包给所述集群管理服务器; 所述集群管理服务器通过心跳包发送与所述服务请求相匹配的所述逻辑服务器的变更信息给所述服务消费端。4.如权利要求1所述集群管理方法,其特征在于,所述集群管理方法还包括步骤: 所述逻辑服务器和所述服务消费端通过心跳包分别发送各自在内存中累计调用次数以及调用时间的统计数据到公共缓存服务器。5.如权利要求1所述集群管理方法,其特征在于,所述服务消费端根据所述逻辑服务器的所述当前性能指标从所述逻辑服务器地址列表中选当前负载最低的所述逻辑服务器来提供服务,所述当前性能指标表示为所述逻辑服务器的当前负载。6.一种集群管理系统,其特征在于,包括集群管理服务器、若干个与集群管理服务器通讯的逻辑服务器以及若干个与集群管理服务器通讯的服务消费端,所述逻辑服务器充当服务提供者,用于为所述服务消费端提供服务;所述集群管理服务器用于统筹管理所述逻辑服务器以及所述消费服务端,所述逻辑服务器包括注册模块;所述集群管理服务器包括第一接收模块以及第一发送模块;所述服务消费端包括第二接收模块以及选择模块, 所述注册模块用于所述逻辑服务器向所述集群管理服务器注册自身服务; 所述第一接收模块用于所述集群管理服务器接收所述服务消费端的服务请求; 所述第一发送模块用于所述集群管理服务器发送与所述服务请求相匹配的逻辑服务器地址列表给所述服务消费端; 所述第二接收模块用于接收所述逻辑服务器地址列表以及 所述选择模块用于所述服务消费端从所述逻辑服务器地址列表中选择逻辑服务器来提供服务。7.如权利要求6所述的集群管理系统,其特征在于,所述逻辑服务器还包括第一读取模块以及所述服务消费端包括第二读取模块, 所述第一读取模块用于所述逻辑服务器读取预存的逻辑服务器配置文件,所述逻辑服务器配置文件包含所述集群管理服务器的地址以及所述逻辑服务器的服务信息,所述服务信息包括所述逻辑服务器的名称、端口以及服务内容; 所述第二读取模块用于所述服务消费端读取预存的服务消费端配置文件,所述服务消费端配置文件包含所述集群管理服务器的地址以及所述服务消费端所需要订阅的服务内容。8.如权利要求6所述的集群管理系统,其特征在于,所述逻辑服务器还包括第三发送模块以及所述服务消费端还包括第二发送模块, 所述第三发送模块用于所述逻辑服务器定时发送心跳包给所述集群管理服务器; 所述第二发送模块用于所述服务消费端定时发送心跳包给所述集群管理服务器;所述第一发送模块用于所述集群管理服务器通过心跳包发送与所述逻辑服务器地址列表的变更信息给所述服务消费端。9.如权利要求6所述的集群管理系统,其特征在于,所述集群管理系统还包括与所述集群管理服务器、所述逻辑服务器以及所述服务消费端均通讯的公共缓存服务器,所述逻辑服务器还包括第三发送模块以及所述服务消费端还包括第二发送模块, 第三发送模块用于所述逻辑服务器通过心跳包发送其在内存中累计调用次数以及调用时间的统计数据到所述公共缓存服务器;以及 第二发送模块用于所述服务消费端通过心跳包发送其在内存中累计调用次数以及调用时间的统计数据到所述公共缓存服务器。10.如权利要求6所述的集群管理系统,其特征在于,所述选择模块根据所述逻辑服务器的所述当前性能指标从所述逻辑服务器地址列表中选择当前负载最低的所述逻辑服务器来提供服务,所述当前性能指标表示为所述逻辑服务器的当前负载。
【文档编号】H04L29/08GK105827687SQ201510793885
【公开日】2016年8月3日
【申请日】2015年11月17日
【发明人】周杜锦, 覃政仁, 陈康术
【申请人】广东亿迅科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1