集群中服务的访问方法及系统的制作方法

文档序号:7652475阅读:141来源:国知局
专利名称:集群中服务的访问方法及系统的制作方法
技术领域
本发明涉及网络通信领域,特别涉及一种及集群中服务的访问方法及系统。
背景技术
传统集群中不同的服务部署在不同的服务器上,根据某一服务访问与其相关联的服务时,需要通过该服务所在的服务器访问关联服务所在的另一个服务器,如此访问时,需要通过网络输入输出(Input Output,简称I/O)接口进行通信。其中,集群是一种用于集团调度指挥通信的移动通信系统,它能够共享资源等。由多台服务器组成服务器集群。然而,通过网络I/O接口进行通信时,将数据从一个服务器传输到另一个服务器,经过网络通信,消耗大量的网络资源,且响应速度低。

发明内容
基于此,有必要提供一种节省网络资源且响应速度快的集群中服务的访问方法。一种集群中服务的访问方法,包括以下步骤在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务;获取根据所述起始服务访问目标服务的请求;判断所述起始服务所在的服务器上是否设有所述目标服务,若是,则根据所述访问请求,访问该服务器上的目标服务,否则,根据所述访问请求,访问其他服务器上的所述目标服务。优选地,当所述起始服务所在的服务器上设有所述目标服务时,包括通过本地环回访问该服务器上的目标服务的步骤;当所述起始服务所在的服务器上未设有所述目标服务时,包括将所述访问请求通过网络接口发送到具有所述目标服务的其他服务器上的步骤。优选地,在所述起始服务所在的服务器上设有所述目标服务时,进一步判断在该服务器上的所述目标服务是否可用,若是,则根据所述访问请求,访问该服务器上的目标服务,若否,则根据所述访问请求,访问其他服务器上的目标服务。 优选地,所述服务器上的所述目标服务不可用时,还包括步骤进一步判断所述起始服务的负载是否大于阈值,若是,则根据所述访问请求访问其他服务器上的目标服务,若否,则停止该服务器上的起始服务,并将所述负载分流到其他服务器。优选地,所述起始服务是根据用户提供的视频标识号返回视频链接的网络地址,所述目标服务包括提供视频文件名称以及访问视频数据库,根据该视频链接的网络地址访问视频文件名称和视频数据库的具体步骤包括获取根据视频链接的网络地址访问视频文件名称和视频数据库的请求;判断该视频链接的网络地址所在的服务器上是否设有所述视频文件名称和视频数据库,若是,则根据所述视频链接的网络地址访问该服务器上的视频文件名称及视频数据库,若否,则根据所述视频链接的网络地址访问其他服务器上的视频文件名称及视频数据库。此外,还有必要提供一种节省网络资源且响应速度快的集群中服务的访问系统。一种集群中服务的访问系统,包括设置模块,用于在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务;请求获取模块,用于获取根据所述起始服务访问目标服务的请求;判断模块,用于判断所述起始服务所在的服务器上是否设有所述目标服务;访问模块,用于在所述判断模块判断出所述起始服务所在的服务器上设有所述目标服务时,根据所述访问请求,访问该服务器上的目标服务,还用于在所述判断模块判断出所述起始服务所在的服务器上未有所述目标服务时,根据所述访问请求,访问其他服务器上的所述目标服务。优选地,当所述起始服务所在的服务器上设有所述目标服务时,所述访问模块还用于通过本地环回访问该服务器上的目标服务;当所述起始服务所在的服务器上未设有所述目标服务时,所述访问模块还用于将所述访问请求通过网络接口发送到具有所述目标服务的其他服务器上。优选地,所述判断模块还用于判断在所述服务器上的所述目标服务是否可用;所述查询模块还用于在所述服务器上的所述目标服务可用时,根据所述访问请求,访问该服务器上的目标服务,还用于在所述服务器上的所述目标服务不可用时,根据所述访问请求,访问其他服务器上的目标服务。优选地,还包括与所述判断模块相连的控制模块,所述判断模块在判断出该服务器上的所述目标服务不可用时,还用于进一步判断所述起始服务的负载是否大于阈值;所述查询模块还用于在所述起始服务的负载大于阈值时,根据所述访问请求访问其他服务器上的目标服务;所述控制模块用于在所述起始服务的负载不大于阈值时,停止该服务器上的起始服务,并将所述负载分流到其他服务器。优选地,所述起始服务是根据用户提供的视频标识号返回视频链接的网络地址,所述目标服务包括提供视频文件名称以及访问视频数据库,所述请求获取模块还用于获取根据视频链接的网络地址访问视频文件名称和视频数据库的请求;所述判断模块还用于判断该视频链接的网络地址所在的服务器上是否设有所述视频文件名称和视频数据库;所述查询模块还用于在所述视频链接的网络地址所在的服务器上设有所述视频文件名称和视频数据库时,根据所述视频链接的网络地址访问该服务器上的视频文件名称及视频数据库,还用于在所述视频链接的网络地址所在的服务器上未设有所述视频文件名称和视频数据库时,根据所述视频链接的网络地址访问其他服务器上的视频文件名称及视频数据库。上述集群中服务的访问方法及系统,采用在同一服务器上设置起始服务及与该起始服务相关联的目标服务,然后获取到根据起始服务访问目标服务的请求后,判断该目标服务是否在该起始服务所在的服务器上,若是,则直接根据访问请求访问该目标服务,节省了网络资源且响应速度快。


图I为一个实施例中集群中服务的访问方法的流程图;图2为另一个实施例中集群中服务的访问方法的流程图;图3为根据视频链接的网址访问视频文件名称及视频数据库的方法流程图;图4为一个实施例中集群中服务的访问系统的结构示意图;
图5为另一个实施例中集群中服务的访问系统的结构示意图。
具体实施方式下面结合具体的实施例及附图对技术方案进行详细的描述。如图I所示,在一个实施例中,一种集群中服务的访问方法,包括以下步骤步骤S110,在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务。—个服务器集群包括多台服务器。在同一个服务器上设置起始服务及与该起始服务相关联的目标服务。其中,起始服务是指供用户触发或选择的某个应用程序等,目标服务是指起始服务链接到的服务。如在同一服务器上设置起始服务为根据用户提供的视频标识号返回视频链接的网络地址(Universal Resource Locator,简称URL),相关联的目标服务包括提供视频文件名称以及访问视频数据库。如起始服务为根据用户提供的微博标识号返回微博网络地址,相关联的目标服务为访问微博数据库等。再如起始服务可为订票服务,目标服务可为出票服务和物流送票服务。另外,该起始服务及目标服务不受限于所举例。在同一服务器上设置起始服务与相关联的目标服务,然后根据该起始服务访问同一服务器上的目标服务的方式,称为条带化部署。在每台服务器上均设置起始服务及与该起始服务相关联的目标服务。步骤S120,获取根据该起始服务访问目标服务的请求。用户可根据该起始服务访问目标服务,访问时需发送访问请求。用户可通过鼠标、按键、触摸屏等触发访问请求。如用户点击视频链接的网络地址,发送根据该网络地址访问视频数据库的请求。步骤S130,判断该起始服务所在的服务器上是否设有目标服务,若是,则执行步骤S140,若否,则执行步骤S150。 获取根据该起始服务访问目标服务的访问请求后,判断该起始服务所在的服务器上是否设有目标服务,若有,则根据该访问请求直接访问该服务器上的目标服务,若没有,则根据该访问请求访问其他服务器上的目标服务。目标服务与起始服务在同一服务器上,根据该起始服务直接访问该服务器上的目标服务,不需通过网络接口访问,响应速度快,且节省网络资源。步骤S140,根据该访问请求,访问该服务器上的目标服务。该服务器上设有目标服务,根据起始服务直接访问该服务器上的目标服务。步骤S150,根据该访问请求,访问其他服务器上的该目标服务。该服务器上没有目标服务时,需访问其他服务器上的目标服务。在一个实施例中,上述集群中服务的访问方法还包括当该起始服务所在的服务器上设有该目标服务时,通过本地环回访问该服务器上的目标服务的步骤;当该起始服务所在的服务器上未设有该目标服务时,将访问请求通过网络接口发送到具有该目标服务的其他服务器上的步骤。本地环回是指操作系统提供的一个网络优化,即当应用程序通过操作系统的网络接口发送访问请求时,操作系统会检查该访问请求是不是发送给本机,若是,则不通过网络接口发送,而是直接发送到该服务器的响应插口(socket),若否则通过网络接口发送到其他服务器。如图2所示,在一个实施例中,一种集群中服务的访问方法,包括以下步骤步骤S210,在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务。步骤S220,获取根据该起始服务访问目标服务的请求。步骤S230,判断该起始服务所在的服务器上是否设有目标服务,若是,则执行步骤S240,若否,则执行步骤S250。 步骤S240,判断在该服务器上的目标服务是否可用,若是,则执行步骤S260,若否,则执行步骤S270。该服务器上的目标服务是否可用主要是该目标服务是否无法访问,如目标服务程序出现死锁等。步骤S250,根据访问请求,访问其他服务器上的目标服务。步骤S260,根据该访问请求,访问该服务器上的目标服务。步骤S270,判断该起始服务的负载是否大于阈值,若是,则执行步骤S250,若否,则执行步骤S280。当该服务器上的目标服务不可用时,根据需要确定是否停止该起始服务,该实施例中采用判断起始服务的负载与阈值比较,若大于阈值,则根据访问请求,访问其他服务器上的目标服务,若小于等于该阈值,则停止该服务器上的起始服务,而且将负载分流到其他服务器。该阈值由系统设定。步骤S280,停止该服务器上的起始服务,并将该负载分流到其他服务器。如10台服务器,每台服务器上均设有起始服务A,目标服务B,若一台服务器上的目标服务B无法访问,设置的负载阈值为3万,判断该起始服务A的负载是否大于该阈值,若是,则根据该起始服务A访问其他9台服务器上的目标服务B,若否,则停止该服务器上的起始服务A,将已有的该服务器上的起始服务A的负载分流到其他9台服务器中的起始服务A0优选的实施例中,如图3所示,以起始服务是根据用户提供的视频标识号返回视频链接的网络地址,目标服务包括提供视频文件名称及访问视频数据库,根据该视频链接的网络地址访问视频文件名称和视频数据库的具体步骤包括步骤S310,在集群中的同一服务器上设置视频链接的网络地址以及视频文件名称和视频数据库。在同一服务器上设置视频链接的网络地址以及与该网络地址相对应的视频文件名称和视频数据库,视频数据库中存储视频具体内容。步骤S320,获取根据视频链接的网络地址访问视频文件名称和视频数据库的请求。获取到用户点击视频网络地址,触发访问视频文件名称和视频数据库的请求。步骤S330,判断该视频链接的网络地址所在的服务器上是否设有视频文件名称和视频数据库,若是,执行步骤S340,若否,执行步骤S350。步骤S340,根据视频链接的网络地址访问该服务器上的视频文件名称及视频数据库。
步骤S350,根据该视频链接的网络地址访问其他服务器上的视频文件名称及视频
数据库。如图4所示,一个实施例中,一种集群中服务的访问系统,包括设置模块410、请求获取模块420、判断模块430和访问模块440。其中,设置模块410用于在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务。一个服务器集群包括多台服务器。在同一个服务器上设置起始服务及与该起始服务相关联的目标服务。其中,起始服务是指供用户触发或选择的某个应用程序等,目标服务是指起始服务链接到的服务。如在同一服务器上设置起始服务为根据用户提供的视频标识号返回视频链接的网络地址(Universal Resource Locator,简称URL),相关联的目标服务包括提供视频文件名称及访问视频数据库。如起始服务为根据用户提供的微博网络地址为用户提供微博数据,相关联的目标服务为访问微博数据库等。在同一服务器上设置起始服务与相关联的目标服务,然后根据该起始服务访问同一服务器上的目标服务的方式,称为条带化部署。在每台服务器上均设置起始服务及与该起始服务相关联的目标服务。请求获取模块420用于获取根据该起始服务访问目标服务的请求。用户可根据该起始服务访问目标服务,访问时需发送访问请求。用户可通过鼠标、按键、触摸屏等触发访问请求。如用户点击视频链接的网络地址,发送根据该网络地址访问视频数据库的请求。判断模块430用于判断该起始服务所在的服务器上是否设有该目标服务。访问模块440用于在判断模块430判断出该起始服务所在的服务器上设有该目标服务时,根据该访问请求,访问该服务器上的目标服务,还用于在所述判断模块430判断出该起始服务所在的服务器上未有该目标服务时,根据该访问请求,访问其他服务器上的该目标服务。判断模块430判断该起始服务所在的服务器上是否设有目标服务,若有,则访问模块440根据该访问请求直接访问该服务器上的目标服务,若没有,则访问模块440根据该访问请求访问其他服务器上的目标服务。目标服务与起始服务在同一服务器上,根据该起始服务直接访问该服务器上的目标服务,不需通过网络接口访问,响应效率高,且节省网络资源。优选的实施例中,当该起始服务所在的服务器上设有该目标服务时,访问模块440还用于通过本地环回访问该服务器上的目标服务;当起始服务所在的服务器上未设有该目标服务时,访问模块440还用于将访问请求通过网络接口发送到具有所述目标服务的其他服务器上。本地环回是指操作系统提供的一个网络优化,即当应用程序通过操作系统的网络接口发送访问请求时,操作系统会检查该访问请求是不是发送给本机,若是,则访问模块440不通过网络接口发送访问请求,而是直接发送到该服务器的响应插口(socket),若否则访问模块440通过网络接口发送访问请求到其他服务器。优选的实施例中,判断模块430还用于判断在该服务器上的该目标服务是否可用,若是,则访问模块440还用于根据访问请求,访问该服务器上的目标服务,若否,则访问模块440还用于根据该访问请求,访问其他服务器上的目标服务。该服务器上的目标服务是否可用主要是该目标服务是否无法访问,如目标服务程序出现死锁等。如图5所示,在一个实施例中,上述集群中服务的访问系统,包括设置模块410、请求获取模块420、判断模块430和访问模块440,还包括与判断模块430相连的控制模块450。其中,判断模块430在判断出该服务器上的该目标服务不可用时,还用于判断起始服务的负载是否大于阈值。访问模块440还用于在该起始服务的负载大于阈值时,根据该访问请求访问其他服务器上的目标服务。控制模块450用于在该起始服务的负载不大于阈值时,停止该服务器上的起始服务,并将该负载分流到其他服务器。该阈值由系统设定。如10台服务器,每台服务器上均设有起始服务A,目标服务B,若一台服务器上的目标服务B无法访问,设置的负载阈值为3万,判断模块430判断该起始服务A的负载是否大于该阈值,若是,则访问模块440根据该起始服务A访问其他9台服务器上的目标服务B,若否,则控制模块450停止该服务器上的起始服务A,将已有的该服务器上的起始服务A的负载分流到其他9台服务器中的起始服务A。优选的实施例中,以起始服务为根据用户提供的视频标识号返回视频链接的网络地址,目标服务包括提供视频文件名称以及访问视频数据库,设置模块410还用于在集群中的同一服务器上设置视频链接的网络地址以及视频文件名称和视频数据库。在同一服务 器上设置视频链接的网络地址以及与该网络地址相对应的视频文件名称和视频数据库,视频数据库中存储视频具体内容。请求获取模块420还用于获取根据访问视频文件名称和视频数据库的请求。请求获取模块420获取到用户点击视频网络地址,触发访问视频文件名称和视频数据库的请求。判断模块430还用于判断该视频链接的网络地址所在的服务器上是否设有该视频文件名称和视频数据库,若是,则访问模块440还用于根据该视频链接的网络地址访问该服务器上的视频文件名称及视频数据库,若否,则访问模块440还用于根据该视频链接的网络地址访问其他服务器上的视频文件名称及视频数据库。上述集群中服务的访问方法及系统,采用在同一服务器上设置起始服务及与该起始服务相关联的目标服务,然后获取到根据起始服务访问目标服务的请求后,判断该目标服务是否在该起始服务所在的服务器上,若是,则直接根据访问请求访问该目标服务,节省了网络资源且响应速度快。另外,发送访问请求时,检测发送数据是否发送到该起始服务所在的服务器,若是,则不通过网络接口发送数据,节省了接口资源,节省响应时间;当起始服务所在的服务器上的目标服务不可用时,根据起始服务的负载与阈值比较,确定是否停止该起始服务,如此一个服务出现故障,只可能影响这个起始服务所部署的该服务器上的相关服务,提高了系统的安全性。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种集群中服务的访问方法,包括以下步骤 在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务; 获取根据所述起始服务访问目标服务的请求; 判断所述起始服务所在的服务器上是否设有所述目标服务,若是,则根据所述访问请求,访问该服务器上的目标服务,否则,根据所述访问请求,访问其他服务器上的所述目标服务。
2.根据权利要求I所述的集群中服务的访问方法,其特征在于,当所述起始服务所在的服务器上设有所述目标服务时,包括通过本地环回访问该服务器上的目标服务的步骤;当所述起始服务所在的服务器上未设有所述目标服务时,包括将所述访问请求通过网络接口发送到具有所述目标服务的其他服务器上的步骤。
3.根据权利要求I所述的集群中服务的访问方法,其特征在于,在所述起始服务所在的服务器上设有所述目标服务时,进一步判断在该服务器上的所述目标服务是否可用,若是,则根据所述访问请求,访问该服务器上的目标服务,若否,则根据所述访问请求,访问其他服务器上的目标服务。
4.根据权利要求3所述的集群中服务的访问方法,其特征在于,所述服务器上的所述目标服务不可用时,还包括步骤进一步判断所述起始服务的负载是否大于阈值,若是,则根据所述访问请求访问其他服务器上的目标服务,若否,则停止该服务器上的起始服务,并将所述负载分流到其他服务器。
5.根据权利要求I所述的集群中服务的访问方法,其特征在于,所述起始服务是根据用户提供的视频标识号返回视频链接的网络地址,所述目标服务包括提供视频文件名称以及访问视频数据库,根据该视频链接的网络地址访问视频文件名称和视频数据库的具体步骤包括 获取根据视频链接的网络地址访问视频文件名称和视频数据库的请求; 判断该视频链接的网络地址所在的服务器上是否设有所述视频文件名称和视频数据库,若是,则根据所述视频链接的网络地址访问该服务器上的视频文件名称及视频数据库,若否,则根据所述视频链接的网络地址访问其他服务器上的视频文件名称及视频数据库。
6.一种集群中服务的访问系统,其特征在于,包括 设置模块,用于在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务; 请求获取模块,用于获取根据所述起始服务访问目标服务的请求; 判断模块,用于判断所述起始服务所在的服务器上是否设有所述目标服务; 访问模块,用于在所述判断模块判断出所述起始服务所在的服务器上设有所述目标服务时,根据所述访问请求,访问该服务器上的目标服务,还用于在所述判断模块判断出所述起始服务所在的服务器上未有所述目标服务时,根据所述访问请求,访问其他服务器上的所述目标服务。
7.根据权利要求6所述的集群中服务的访问系统,其特征在于,当所述起始服务所在的服务器上设有所述目标服务时,所述访问模块还用于通过本地环回访问该服务器上的目标服务;当所述起始服务所在的服务器上未设有所述目标服务时,所述访问模块还用于将所述访问请求通过网络接口发送到具有所述目标服务的其他服务器上。
8.根据权利要求6所述的集群中服务的访问系统,其特征在于,所述判断模块还用于判断在所述服务器上的所述目标服务是否可用; 所述查询模块还用于在所述服务器上的所述目标服务可用时,根据所述访问请求,访问该服务器上的目标服务,还用于在所述服务器上的所述目标服务不可用时,根据所述访问请求,访问其他服务器上的目标服务。
9.根据权利要求8所述的集群中服务的访问系统,其特征在于,还包括与所述判断模块相连的控制模块,所述判断模块在判断出该服务器上的所述目标服务不可用时,还用于进一步判断所述起始服务的负载是否大于阈值 ; 所述查询模块还用于在所述起始服务的负载大于阈值时,根据所述访问请求访问其他服务器上的目标服务; 所述控制模块用于在所述起始服务的负载不大于阈值时,停止该服务器上的起始服务,并将所述负载分流到其他服务器。
10.根据权利要求6所述的集群中服务的访问系统,其特征在于,所述起始服务是根据用户提供的视频标识号返回视频链接的网络地址,所述目标服务包括提供视频文件名称以及访问视频数据库,所述请求获取模块还用于获取根据视频链接的网络地址访问视频文件名称和视频数据库的请求;所述判断模块还用于判断该视频链接的网络地址所在的服务器上是否设有所述视频文件名称和视频数据库;所述查询模块还用于在所述视频链接的网络地址所在的服务器上设有所述视频文件名称和视频数据库时,根据所述视频链接的网络地址访问该服务器上的视频文件名称及视频数据库,还用于在所述视频链接的网络地址所在的服务器上未设有所述视频文件名称和视频数据库时,根据所述视频链接的网络地址访问其他服务器上的视频文件名称及视频数据库。
全文摘要
本发明涉及一种集群中服务的访问方法及系统。该方法包括以下步骤在集群中的同一服务器上设置起始服务及与该起始服务相关联的目标服务;获取根据所述起始服务访问目标服务的请求;判断所述起始服务所在的服务器上是否设有所述目标服务,若是,则根据所述访问请求,访问该服务器上的目标服务,否则,根据所述访问请求,访问其他服务器上的所述目标服务。上述集群中服务的访问方法及系统,采用在同一服务器上设置起始服务及与该起始服务相关联的目标服务,然后获取到根据起始服务访问目标服务的请求后,判断该目标服务是否在该起始服务所在的服务器上,若是,则直接根据访问请求访问该目标服务,节省了网络资源且响应速度快。
文档编号H04L29/12GK102761527SQ20111010869
公开日2012年10月31日 申请日期2011年4月28日 优先权日2011年4月28日
发明者李玉龙 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1