一种接入应用服务器的方法和装置制造方法

文档序号:7988348阅读:185来源:国知局
一种接入应用服务器的方法和装置制造方法
【专利摘要】本发明实施例提供一种接入应用服务器的方法,所述方法包括:从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名;采用所述获取的IP地址或服务器域名发起对应用服务器进行访问;在对所述应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。本发明实施例提供的方法减少了应用程序客户端进行服务器域名解析的频率,降低对服务器域名解析的依赖,能够自适应多种网络场景和网络环境的变化,提高用户的平均接入速度,并且通过在应用服务器一侧根据应用程序的特点进行负载均衡,提高用户的接入成功率。
【专利说明】一种接入应用服务器的方法和装置
【技术领域】
[0001]本发明涉及互联网应用领域,尤其涉及一种接入应用服务器的方法和装置。
【背景技术】
[0002]随着智能终端技术的发展,智能手机、平板电脑等各种智能终端功能越来越强大,其表现之一是可以安装、运行越来越多的客户端应用程序(Application)。而互联网技术的发展,通过将客户端应用程序通过互联网接入应用服务器,已经成为智能终端用户应用智能终端的通常方式。
[0003]现有技术一种将客户端应用程序接入应用服务器的方式是如个人电脑等传统终端访问后台服务器一样,通过固定的因特网协议(Internet Protocol,IP)地址访问应用服务器。
[0004]上述现有的接入应用服务器的方式主要缺陷在于不能很好地适应变化,这是因为,一方面,提供服务的IP地址可能会变化,例如,固定的IP地址被运营商回收,或者与固定的IP地址绑定的机器无法再提供原有的服务等等;另一方面,不能进行负载均衡,例如,当业务量逐渐增大时,应用服务器新增IP地址后,已经外发的客户端应用程序不知道该新增的IP地址,仍然访问原IP地址,如此,新的IP地址所在的应用服务器负载量较小,而原IP地址所在的应用服务器负载量较大。

【发明内容】
[0005]本发明实施例提供一种接入应用服务器的方法和装置,以提高接入应用服务器的效率和均衡负载。
[0006]本发明实施例提供一种接入应用服务器的方法,所述方法包括:
[0007]从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,所述接入点列表初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前;
[0008]采用所述获取的IP地址或服务器域名发起对应用服务器进行访问;
[0009]在对所述应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
[0010]可选地,所述从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名包括:以所述接入点列表的首位置为起点遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对所述应用服务器进行访问的IP地址或服务器域名。
[0011]可选地,所述采用所述获取的IP地址或服务器域名发起对应用服务器进行访问包括:以所述获取的IP地址或服务器域名发起对应用服务器的首次访问;若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,直至对所述应用服务器的访问成功。
[0012]可选地,所述更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至对所述接入点列表的首位置包括:接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址;将所述应用服务器根据负载均衡策略下发的IP地址保存至所述空位表项。
[0013]可选地,所述更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至对所述接入点列表的首位置包括:将首次访问成功时的IP地址保存至所述空位表项,所述首次访问成功时的IP地址为所述保底IP地址表项中的保底IP地址或通过对服务器域名表项中的服务器域名进行解析时获得的IP地址;接收所述应用服务器根据负载均衡策略下发的IP地址;将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
[0014]本发明实施例提供一种接入应用服务器的装置,所述装置包括:
[0015]获取模块,用于从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,所述接入点列表初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前;
[0016]访问发起模块,用于采用所述获取的IP地址或服务器域名发起对应用服务器进行访问;
[0017]列表更新模块,用于在对所述应用服务器访问成功后,更新接入点列表以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
[0018]可选地,所述获取模块包括:遍历单元,用于以所述接入点列表的首位置为起点遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对所述应用服务器进行访问的IP地址或服务器域名。
[0019]可选地,所述访问发起模块包括:首次访问发起单元,用于以所述获取的IP地址或服务器域名发起对应用服务器的首次访问;循环访问发起单元,用于若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名直至对所述应用服务器的访问成功。
[0020]可选地,所述列表更新模块包括:第一接收单元,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址;更新单元,用于将所述应用服务器根据负载均衡策略下发的IP地址保存所述空位表项。
[0021]可选地,所述列表更新模块包括:第一保存单元,用于将首次访问成功时的IP地址保存至所述空位表项,所述首次访问成功时的IP地址为所述保底IP地址表项中的保底IP地址或通过对服务器域名表项中的服务器域名进行解析时获得的IP地址;第二接收单元,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址;第二保存单元,用于将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
[0022]从上述本发明实施例可知,由于在对应用服务器访问成功后,更新接入点列表,以将应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。与现有技术提供的接入应用服务器的方法相比,本发明实施例提供的方法减少了应用程序客户端进行服务器域名解析的频率,降低对服务器域名解析的依赖,能够自适应多种网络场景和网络环境的变化,提高用户的平均接入速度,并且通过在应用服务器一侧根据应用程序的特点进行负载均衡,提高用户的接入成功率。
【专利附图】

【附图说明】
[0023]为了更清楚地说明本发明实施例的技术方案,下面将对现有技术或实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,还可以如这些附图获得其他的附图。
[0024]图1是本发明实施例提供的接入应用服务器的方法流程示意图;
[0025]图2_a是本发明实施例提供的接入点列表初始化时的示意图;
[0026]图2_b是本发明另一实施例提供的接入点列表初始化时的示意图;
[0027]图3_a是本发明实施例提供的在接入点列表中保存应用服务器下发的新IP地址示意图;
[0028]图3_b是本发明另一实施例提供的在接入点列表中保存应用服务器下发的新IP地址示意图;
[0029]图4_a是本发明另一实施例提供的在接入点列表中保存应用服务器下发的新IP地址示意图;
[0030]图4_b是本发明另一实施例提供的在接入点列表中保存应用服务器下发的新IP地址示意图;
[0031]图5_a是本发明实施例提供的更新接入点列表流程示意图;
[0032]图5-b是图4-a示例的接入点列表中保存应用服务器下发的新IP地址后接入点列表示意图;
[0033]图6是本发明实施例提供的应用服务器下发新IP地址后接入点列表变化示意图;
[0034]图7是本发明另一实施例提供的应用服务器下发新IP地址后接入点列表变化示意图;
[0035]图8是本发明实施例提供的应用程序客户端与应用服务器交互过程示意图;
[0036]图9是本发明实施例提供的接入应用服务器的装置结构示意图;
[0037]图10是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0038]图11是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0039]图12-a是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0040]图12-b是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0041]图12-c是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0042]图13-a是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0043]图13-b是本发明另一实施例提供的接入应用服务器的装置结构示意图;
[0044]图13-c是本发明另一实施例提供的接入应用服务器的装置结构示意图。 【具体实施方式】
[0045]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员所获得的所有其他实施例,都属于本发明保护的范围。[0046]请参阅附图1,是本发明实施例提供的接入应用服务器的方法流程示意图,其执行主体可以是智能终端或智能终端的应用程序模块,主要包括步骤S101、步骤S102和步骤S103,详细说明如下:
[0047]S101,从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名。
[0048]在本发明实施例中,智能终端维护一个由可访问的IP地址和服务器域名组成的接入点列表,该接入点列表是动态变化的,其在初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前,其中,服务器域名表项保存的是一个服务器域名,该表项的内容维持不变,而保底IP地址表项保存一个保底IP地址。所谓保底IP地址,其含义之一是接入点初始化时该IP地址就存在,另一含义是当通过解析域名表项保存的服务器域名而获取IP地址或访问应用服务器失败时,还可以使用该IP地址发起对应用服务器的访问。如附图2-a和附图2-b所示,分别是本发明实施例提供的初始化时包含一个保底IP地址表项、一个服务器域名表项和两个用于保存新IP地址的空位表项(空位表项I和空位表项2)的接入点列表示意图。
[0049]作为本发明从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名的一个实施例,可以是以接入点列表的首位置为起点,遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对应用服务器进行访问的IP地址或服务器域名。例如,对于附图2-a示例的接入点列表,初始化时其空表项均没有IP地址,可以以空位表项2作为接入点列表的首位置开始遍历该接入点列表。由于服务器域名表项位于保底IP地址表项之前,因此以遍历时首次获取的服务器域名表项中的服务器域名作为对应用服务器进行访问的服务器域名。对于附图2-b示例的接入点列表,初始化时其空表项均没有IP地址,可以以空位表项2作为接入点列表的首位置开始遍历该接入点列表。由于保底IP地址表项位于服务器域名表项之前,因此以遍历时首次获取的保底IP地址表项中的保底IP地址作为对应用服务器进行访问的IP地址。
[0050]S102,采用所述获取的IP地址或服务器域名发起对应用服务器进行访问。
[0051 ] 在本发明实施例中,采用获取的IP地址或服务器域名发起对应用服务器进行访问可以包括:以所述获取的IP地址或服务器域名发起对应用服务器的首次访问,若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,直至对所述应用服务器的访问成功。例如,假设获取的是IP地址(包括保底IP地址表项中的保底IP地址或者保存至空位表项中的新IP地址),则可以如现有技术使用固定的IP地址对应用服务器访问一样的方法发起对应用服务器的访问。若获取的是服务器域名表项中的服务器域名,则向域名服务器发送域名地址解析请求,域名服务器收到该解析请求后,将IP地址以响应的方式返回至客户端应用程序,客户端应用程序再按照域名服务器返回的IP地址发起对应用服务器进行访问。
[0052]S103,在对所述应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
[0053] 在本发明实施例中,负载均衡策略可以包括静态负载均衡策略和动态负载均衡策略等等。所谓静态负载均衡策略,是利用系统负载的平均信息,而忽视系统当前的负载状况的方法,典型地,例如轮询算法,该算法认为集群服务器每时每刻的处理能力是无差别的,每一次来自网络的请求轮流分配给内部中的每台服务器,从I至N然后重新开始。具体而言,在本发明实施例中,静态负载均衡策略包括轮询、优先级、基于IP、基于报头/请求和基于cookie中的一种或任意组合。所谓动态负载均衡策略,是根据系统当前的负载状况来调整任务划分的方法,典型地,例如加权轮询算法,该算法考虑服务器之间的性能差异,以及服务器当前的负载状况,动态调整权值,根据权值的高低顺序并按照轮询的方法将任务请求分配到各个服务器。权值高的服务器比权值低的服务器能处理更多的任务请求。具体而言,在本发明实施例中,动态负载均衡策略包括加权轮询、最小链接、加权最小链接、基于局部的最小链接、带复制的基于局部的最小链接和最快响应中的一种或其任意组合。例如,若服务器负载信息记录了服务器上的链接数目,则负载均衡策略可以是使用最少链接策略,即负载均衡装置在选择服务器为当前发起请求的客户端服务时,可以选择当前其上链接数目最少的服务器为这一请求服务。
[0054]作为本发明一个实施例,在对应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置可以是:接收对应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址;将所述应用服务器根据负载均衡策略下发的IP地址保存至接入点列表的空位表项。例如,假设某次对应用服务器访问后,附图2-a示例的接入点列表中的空位表项2保存了一个IP地址(假设是IP2),如附图3-a所示。进一步假设使用IP2对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP3。客户端接收下发的新的IP地址即IP3,将应用服务器根据负载均衡策略下发的IP地址即IP3保存至接入点列表中的空位表项1,保存IP3后的接入点列表如附图3-b所示。 [0055]作为本发明另一实施例,在对应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置可以是:将首次访问成功时的IP地址保存至接入点列表的空位表项;接收应用服务器根据负载均衡策略下发的IP地址;将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置,其中,所述首次访问成功时的IP地址为接入点列表保底IP地址表项中的保底IP地址或通过对域名表项中的服务器域名进行解析时获得的IP地址。例如,假设某次对应用服务器访问采用的是对附图2-a示例的接入点列表中的服务器域名进行解析时获得的IP地址,记该IP地址是IP2。进一步假设使用IP2对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP3。客户端接收下发的新的IP地址即IP3,并且,由于此时接入点列表的首位置是空位表项1,因此,将应用服务器根据负载均衡策略下发的IP地址即IP3保存至接入点列表中的空位表项1,保存IP3后的接入点列表如附图4-a所示。在下次对应用服务器访问时,通过对附图4-a示例的接入点列表进行遍历,使用IP3对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP4。客户端接收下发的新的IP地址即IP4,并且,由于此时接入点列表的首位置是空位表项1,因此,将应用服务器根据负载均衡策略下发的新IP地址即IP4保存至接入点列表中的空位表项1,保存IP4后的接入点列表如附图4-b所示。
[0056]从上述本发明实施例提供的接入应用服务器的方法可知,由于在对应用服务器访问成功后,更新接入点列表,以将应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。与现有技术提供的接入应用服务器的方法相比,本发明实施例提供的方法减少了应用程序客户端进行服务器域名解析的频率,降低对服务器域名解析的依赖,能够自适应多种网络场景和网络环境的变化,提高用户的平均接入速度,并且通过在应用服务器一侧根据应用程序的特点进行负载均衡,提高用户的接入成功率。
[0057]以下以附图4-a示例的接入点列表为例(假设保底IP地址是IP1),简要说明更新接入点列表的过程。如前所述,除了接入点列表中服务器域名表项的服务器域名不变之外,接入点列表中的空位表项1、空位表项2和保底IP地址表项都是动态变化的。当客户端建立TCP链接成功或者服务器根据均衡策略下发新的IP地址后,客户端会保存新的IP地址到接入点列表中,其保存一个新的IP地址到接入点列表的逻辑如附图5-a所示,包括步骤S501至步骤S505,说明如下:
[0058]S501,判断下发的新IP地址是否与空位表项I保存的IP地址即IP3相同。
[0059]若下发的新IP地址与空位表项I保存的IP地址即IP3相同,则流程转向步骤S502,否则,流程进入步骤S503。
[0060]S502,无需保存下发的新IP地址,返回。
[0061]S503,将空位表项2保存的IP地址即IP2保存至保底IP地址表项。
[0062]S504,将空位表项I保存的IP地址即IP3保存至空位表项2。
[0063]S505,将下 发的新IP地址保存至空位表项I。
[0064]附图4-a示例的接入点列表保存新IP地址后如附图5_b所示。
[0065]以下以采用服务器域名表项中的服务器域名成功访问应用服务器为例,说明接入点列表(假设保底IP地址为IPl)的变化过程,如附图6所示,说明如下:
[0066]601,第一次访问前,空位表项I和空位表项2均为空,经过遍历,使用服务器域名表项的服务器域名开始访问;
[0067]602,第一次访问过程包括:对服务器域名表项的服务器域名进行解析获得IP2,使用IP2访问成功,访问成功后应用服务器返回IP3 ;
[0068]602,第一次访问后,保存IP2与IP3,保存IP2与IP3后,空位表项I保存的是IP3,空位表项2保存的是IP2,服务器域名表项和保底IP地址表项的服务器域名和保底IP地址均保持不变;
[0069]602,第二次访问前,空位表项I保存的是IP3,空位表项2保存的是IP2,服务器域名表项保存的仍然是服务器域名,保底IP地址表项保存的仍然是IPI ;
[0070]603,第二次访问过程包括:使用空位表项I的IP3访问成功,访问成功后应用服务器下发新的IP地址即IP4;
[0071]604,第二次访问后,保存IP3与IP4,保存后,空位表项I保存的是IP4,空位表项2保存的是IP3,服务器域名表项保存的仍然是服务器域名,保底IP地址表项保存的是IP2。
[0072]以下以采用服务器域名表项中的服务器域名成功访问应用服务器为例,说明接入点列表(假设保底IP地址为IPl)的变化过程,如附图7所示,说明如下:
[0073]701,第一次访问前,经过遍历,使用服务器域名表项的服务器域名开始访问;
[0074]702,第一次访问过程包括:服务器域名解析失败,使用保底IP地址表项保存的保底IP地址即IPl访问成功,访问成功后应用服务器下发新的IP地址即IP2 ;
[0075]703,第一次访问后,保存IPl与IP2,保存IPl与IP2后,空位表项I保存的是IP2,空位表项2保存的是IP1,域名表项和保底IP地址表项的服务器域名和保底IP地址均保持不变,即保底IP地址表项的保底IP地址为IPl ;
[0076]704,第二次访问前,空位表项I保存的是IP2,空位表项2保存的是IPl,服务器域名表项保存的仍然是服务器域名,保底IP地址表项保存的仍然是IPI ;
[0077]705,第二次访问过程包括:使用空位表项I保存的IP2访问成功,访问成功后应用服务器下发新的IP地址即IP3;
[0078]706,第二次访问后,保存IP2与IP3,保存后,空位表项I保存的是IP4,空位表项2保存的是IP2,负载均衡策略域名表项保存的仍然是服务器域名,保底IP地址表项保存的仍然是IPl。
[0079]在本发明实施例中,应用程序(App )客户端在发起请求时,应用(App )服务器根据客户的接入点的IP,可以获取App客户端的地理信息与网络运营商信息。App服务器根据负载均衡策略,包括服务器的处理能力、App客户端的地理信息与网络运营商信息等选择一个最优的IP下发至客户端。请参阅附图8,是本发明实施例提供的应用程序客户端与应用服务器的交互过程,包括步骤S801至步骤S805,说明如下:
[0080]步骤S801,应用程序客户端建立与应用服务器的连接。
[0081]应用程序客户端遍历接入点列表,逐个使用其中的IP地址或者服务器域名连接应用服务器,如果连接成功,则保存本次连接成功的IP地址。
[0082]步骤S802, 应用服务器获取相应的负载均衡策略。
[0083]所谓负载均衡策略可以包括静态负载均衡策略和动态负载均衡策略等等。所谓静态负载均衡策略,是利用系统负载的平均信息,而忽视系统当前的负载状况的方法,典型地,例如轮询算法,该算法认为集群服务器每时每刻的处理能力是无差别的,每一次来自网络的请求轮流分配给内部中的每台服务器,从I至N然后重新开始。具体而言,在本发明实施例中,静态负载均衡策略包括轮询、优先级、基于IP、基于报头/请求和基于cookie中的一种或任意组合。所谓动态负载均衡策略,是根据系统当前的负载状况来调整任务划分的方法,典型地,例如加权轮询算法,该算法考虑服务器之间的性能差异,以及服务器当前的负载状况,动态调整权值,根据权值的高低顺序并按照轮询的方法将任务请求分配到各个服务器。权值高的服务器比权值低的服务器能处理更多的任务请求。具体而言,在本发明实施例中,动态负载均衡策略包括加权轮询、最小链接、加权最小链接、基于局部的最小链接、带复制的基于局部的最小链接和最快响应中的一种或其任意组合。例如,若服务器负载信息记录了服务器上的链接数目,则负载均衡策略可以是使用最少链接策略,即负载均衡装置在选择服务器为当前发起请求的客户端服务时,可以选择当前其上链接数目最少的服务器为这一请求服务。具体而言,在本发明实施例中,负载均衡策略可以是应用服务器按照客户端IP查询IP信息库,根据服务器的处理能力、App客户端的地理信息与网络运营商信息等等,获取相应的负载均衡策略。
[0084]步骤S803,应用服务器根据负载均衡策略选定一个最优IP地址。
[0085]步骤S804,应用服务器向应用程序客户端下发所选定的最优IP地址。
[0086]步骤S805,应用程序客户端将最优IP地址保存到其接入点列表中。
[0087]请参阅附图9,是本发明实施例提供的接入应用服务器的装置结构示意图。为了便于说明,仅仅示出了与本发明实施例相关的部分。附图9示例的接入应用服务器的装置可以是智能终端或智能终端中的某个功能模块/单元,其包括获取模块901、访问发起模块902和列表更新模块903,其中:
[0088]获取模块901,用于从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名。在本实施例中,智能终端维护一个由可访问的IP地址和服务器域名组成的接入点列表,该接入点列表是动态变化的,其在初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前,其中,服务器域名表项保存的是一个服务器域名,该表项的内容维持不变,而保底IP地址表项保存一个保底IP地址。所谓保底IP地址,其含义之一是接入点初始化时该IP地址就存在,另一含义是当通过解析域名表项保存的服务器域名而获取IP地址或访问应用服务器失败时,还可以使用该IP地址发起对应用服务器的访问。如附图2-a和附图2-b所示,分别是本发明实施例提供的初始化时包含一个保底IP地址表项、一个服务器域名表项和两个用于保存新IP地址的空位表项(空位表项I和空位表项2)的接入点列表示意图。
[0089]访问发起模块902,用于采用所述获取的IP地址或服务器域名发起对应用服务器进行访问。
[0090]列表更新模块903,用于在对所述应用服务器访问成功后,更新接入点列表以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的IP地址之前首位置。所谓负载均衡策略,可以包括静态负载均衡策略和动态负载均衡策略等等。所谓静态负载均衡策略,是利用系统负载的平均信息,而忽视系统当前的负载状况的方法,典型地,例如轮询算法,该算法认为集群服务器每时每刻的处理能力是无差别的,每一次来自网络的请求轮流分配给内部中的每台服务器,从I至N然后重新开始。具体而言,在本发明实施例中,静态负载均衡策略包括轮询、优先级、基于IP、基于报头/请求和基于cookie中的一种或任意组合。所谓动态负载均衡策略,是根据系统当前的负载状况来调整任务划分的方法,典型地,例如加权轮询算法,该算法考虑服务器之间的性能差异,以及服务器当前的负载状况,动态调整权值,根据权值的高低顺序并按照轮询的方法将任务请求分配到各个服务器。权值高的服务器比权值低的服务器能处理更多的任务请求。具体而言,在本发明实施例中,动态负载均衡策略包括加权轮询、最小链接、加权最小链接、基于局部的最小链接、带复制的基于局部的最小链接和最快响应中的一种或其任意组合。例如,若服务器负载信息记录了服务器上的链接数目,则负载均衡策略可以是使用最少链接策略,即负载均衡装置在选择服务器为当前发起请求的客户端服务时,可以选择当前其上链接数目最少的服务器为这一请求服务。
[0091]需要说明的是,以上接入应用服务器的装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例 如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将所述接入应用服务器装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成,例如,前述的获取模块,可以是具有执行前述从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名的硬件,例如获取器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备;再如前述的列表更新模块,可以是具有执行前述在对所述应用服务器访问成功后,更新接入点列表以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的IP地址之前首位置功能的硬件,例如列表更新器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备(本说明书提供的各个实施例都可应用上述描述原则)。
[0092]由于在对应用服务器访问成功后,列表更新模块更新接入点列表,以将应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。与现有技术提供的接入应用服务器的方法相比,本发明实施例提供的装置减少了应用程序客户端进行服务器域名解析的频率,降低对服务器域名解析的依赖,能够自适应多种网络场景和网络环境的变化,提高用户的平均接入速度,并且通过在应用服务器一侧根据应用程序的特点进行负载均衡,提高用户的接入成功率。
[0093]附图9示例的获取模块901可以包括遍历单元1001,如附图10所示本发明另一实施例提供的接入应用服务器的装置。遍历单元1001用于以所述接入点列表的首位置为起点遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对所述应用服务器进行访问的IP地址或服务器域名。例如,对于附图2-a示例的接入点列表,初始化时其空表项均没有IP地址,遍历单元1001可以以空位表项2作为接入点列表的首位置开始遍历该接入点列表。由于服务器域名表项位于保底IP地址表项之前,因此,访问发起模块902以遍历单元1001遍历时首次获取的服务器域名表项中的服务器域名作为对应用服务器进行访问的服务器域名。对于附图2-b示例的接入点列表,初始化时其空表项均没有IP地址,可以以空位表项2作为接入点列表的首位置开始遍历该接入点列表。由于保底IP地址表项位于服务器域名表项之前,因此,访问发起模块902以遍历单元1001遍历时首次获取的保底IP地址表项中的保底IP地址作为对应用服务器进行访问的IP地址。
[0094]附图9示例的访问发起模块902可以包括首次访问发起单元1101和循环访问发起单元1102,如附图11所示本发明另一实施例提供的接入应用服务器的装置,其中:
[0095]首次访问发起单元1101,用于以所述获取的IP地址或服务器域名发起对应用服务器的首次访问。例如,假设获取模块901获取的是IP地址(包括保底IP地址表项中的保底IP地址或者保存至空位表项中的新IP地址),则首次访问发起单元1101可以如现有技术使用固定的IP地址对应用服务器访问一样的方法发起对应用服务器的访问。若获取模块901获取的是服务器域名表项中的服务器域名,则客户端应用程序向域名服务器发送域名地址解析请求,域名服务器收到该解析请求后,将IP地址以响应的方式返回至客户端应用程序,首次访问发起单元1101再按照域名服务器返回的IP地址发起对应用服务器进行访问。
[0096]循环访问发起单元1102,用于若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名直至对所述应用服务器的访问成功。
[0097]附图9至附图11任一示例提供的列表更新模块901可以包括第一接收单元1201和更新单元1202,如附图12-a、附图12_b或附图12_c所示本发明另一实施例提供的接入应用服务器的装置,其中:
[0098] 第一接收单元1201,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址。在本实施例中,负载均衡策略可以包括静态负载均衡策略和动态负载均衡策略等等。所谓静态负载均衡策略,是利用系统负载的平均信息,而忽视系统当前的负载状况的方法,典型地,例如轮询算法,该算法认为集群服务器每时每刻的处理能力是无差别的,每一次来自网络的请求轮流分配给内部中的每台服务器,从I至N然后重新开始。具体而言,在本发明实施例中,静态负载均衡策略包括轮询、优先级、基于IP、基于报头/请求和基于cookie中的一种或任意组合。所谓动态负载均衡策略,是根据系统当前的负载状况来调整任务划分的方法,典型地,例如加权轮询算法,该算法考虑服务器之间的性能差异,以及服务器当前的负载状况,动态调整权值,根据权值的高低顺序并按照轮询的方法将任务请求分配到各个服务器。权值高的服务器比权值低的服务器能处理更多的任务请求。具体而言,在本发明实施例中,动态负载均衡策略包括加权轮询、最小链接、加权最小链接、基于局部的最小链接、带复制的基于局部的最小链接和最快响应中的一种或其任意组合。例如,若服务器负载信息记录了服务器上的链接数目,则负载均衡策略可以是使用最少链接策略,即负载均衡装置在选择服务器为当前发起请求的客户端服务时,可以选择当前其上链接数目最少的服务器为这一请求服务。
[0099]更新单元1202,用于将所述应用服务器根据负载均衡策略下发的IP地址保存所述空位表项。
[0100]例如,假设某次对应用服务器访问后,附图2-a示例的接入点列表中的空位表项2保存了一个IP地址(假设是IP2),如附图3-a所示。进一步假设使用IP2对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP3。第一接收单元1201接收下发的新的IP地址即IP3,更新单元1202将应用服务器根据负载均衡策略下发的IP地址即IP3保存至接入点列表中的空位表项1,保存IP3后的接入点列表如附图3-b所示。 [0101]附图9至附图11任一示例提供的列表更新模块901可以包括第一保存单元1301、第二接收单元1302和第二保存单元1303,如附图13-a、附图13_b或附图13_c所示本发明另一实施例提供的接入应用服务器的装置,其中:
[0102]第一保存单元1301,用于将首次访问成功时的IP地址保存至所述空位表项,所述首次访问成功时的IP地址为所述保底IP地址表项中的保底IP地址或通过对服务器域名表项中的服务器域名进行解析时获得的IP地址。
[0103]第二接收单元1302,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址。与附图12的类似,在本实施例中,负载均衡策略可以包括静态负载均衡策略和动态负载均衡策略等等。所谓静态负载均衡策略,是利用系统负载的平均信息,而忽视系统当前的负载状况的方法,典型地,例如轮询算法,该算法认为集群服务器每时每刻的处理能力是无差别的,每一次来自网络的请求轮流分配给内部中的每台服务器,从I至N然后重新开始。具体而言,在本发明实施例中,静态负载均衡策略包括轮询、优先级、基于IP、基于报头/请求和基于cookie中的一种或任意组合。所谓动态负载均衡策略,是根据系统当前的负载状况来调整任务划分的方法,典型地,例如加权轮询算法,该算法考虑服务器之间的性能差异,以及服务器当前的负载状况,动态调整权值,根据权值的高低顺序并按照轮询的方法将任务请求分配到各个服务器。权值高的服务器比权值低的服务器能处理更多的任务请求。具体而言,在本发明实施例中,动态负载均衡策略包括加权轮询、最小链接、加权最小链接、基于局部的最小链接、带复制的基于局部的最小链接和最快响应中的一种或其任意组合。例如,若服务器负载信息记录了服务器上的链接数目,则负载均衡策略可以是使用最少链接策略,即负载均衡装置在选择服务器为当前发起请求的客户端服务时,可以选择当前其上链接数目最少的服务器为这一请求服务。
[0104]第二保存单元1303,用于将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的IP地址之前首位置。
[0105]例如,假设某次对应用服务器访问采用的是对附图2-a示例的接入点列表中的服务器域名进行解析时获得的IP地址,记该IP地址是IP2。进一步假设使用IP2对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP3。第二接收单元1302接收下发的新的IP地址即IP3,并且,由于此时接入点列表的首位置是空位表项1,因此,第二保存单元1303将应用服务器根据负载均衡策略下发的IP地址即IP3保存至接入点列表中的空位表项1,保存IP3后的接入点列表如附图4-a所示。在下次对应用服务器访问时,通过对附图4-a示例的接入点列表进行遍历,使用IP3对应用服务器访问成功,则应用服务器会根据负载均衡策略下发一个新的IP地址,记该新的IP地址是IP4。第二接收单元1302接收下发的新的IP地址即IP4,并且,由于此时接入点列表的首位置是空位表项1,因此,第二保存单元1303将应用服务器根据负载均衡策略下发的新IP地址即IP4保存至接入点列表中的空位表项1,保存IP4后的接入点列表如附图4-b所示。
[0106]需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0107]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,比如以下各种方法的一种或多种或全部:
[0108]从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,所述接入点列表初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前;
[0109]采用所述获取的IP地址或服务器域名发起对应用服务器进行访问;
[0110]在对所述应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的IP地址之前首位置。
[0111]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccessMemory )、磁盘或光盘等。
[0112]以上对本发明实施例提供的一种接入应用服务器的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的 方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种接入应用服务器的方法,其特征在于,所述方法包括: 从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,所述接入点列表初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前; 采用所述获取的IP地址或服务器域名发起对应用服务器进行访问; 在对所述应用服务器访问成功后,更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
2.如权利要求1所述的方法,其特征在于,所述从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名包括: 以所述接入点列表的首位置为起点遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对所述应用服务器进行访问的IP地址或服务器域名。
3.如权利要求1所述的方法,其特征在于,所述采用所述获取的IP地址或服务器域名发起对应用服务器进行访问包括: 以所述获取的IP地址或服务器域名发起对应用服务器的首次访问; 若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,直至对所述应用服务器的访问成功。
4.如权利要求1至 3任意一项所述的方法,其特征在于,所述更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至对所述接入点列表的首位置包括: 接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址; 将所述应用服务器根据负载均衡策略下发的IP地址保存至所述空位表项。
5.如权利要求1至3任意一项所述的方法,其特征在于,所述更新接入点列表,以将所述应用服务器根据负载均衡策略下发的IP地址保存至对所述接入点列表的首位置包括: 将首次访问成功时的IP地址保存至所述空位表项,所述首次访问成功时的IP地址为所述保底IP地址表项中的保底IP地址或通过对服务器域名表项中的服务器域名进行解析时获得的IP地址; 接收所述应用服务器根据负载均衡策略下发的IP地址; 将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
6.一种接入应用服务器的装置,其特征在于,所述装置包括: 获取模块,用于从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名,所述接入点列表初始化时包含一个保底IP地址表项、一个服务器域名表项和至少一个用于保存新IP地址的空位表项,所述空位表项位于所述保底IP地址表项和服务器域名表项之前; 访问发起模块,用于采用所述获取的IP地址或服务器域名发起对应用服务器进行访问; 列表更新模块,用于在对所述应用服务器访问成功后,更新接入点列表以将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
7.如权利要求6所述的装置,其特征在于,所述获取模块包括:遍历单元,用于以所述接入点列表的首位置为起点遍历所述接入点列表,将遍历时首次获取的IP地址或服务器域名作为对所述应用服务器进行访问的IP地址或服务器域名。
8.如权利要求6所述的装置,其特征在于,所述访问发起模块包括: 首次访问发起单元,用于以所述获取的IP地址或服务器域名发起对应用服务器的首次访问; 循环访问发起单元,用于若对所述应用服务器的首次访问失败,则再次从接入点列表中获取对应用服务器进行访问的IP地址或服务器域名直至对所述应用服务器的访问成功。
9.如权利要求6至8任意一项所述的装置,其特征在于,所述列表更新模块包括: 第一接收单元,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址; 更新单元,用于将所述应用服务器根据负载均衡策略下发的IP地址保存所述空位表项。
10.如权利要求6至8任意一项所述的装置,其特征在于,所述列表更新模块包括: 第一保存单元,用于将首次访问成功时的IP地址保存至所述空位表项,所述首次访问成功时的IP地址为所述保底IP地址表项中的保底IP地址或通过对服务器域名表项中的服务器域名进行解析时获得的IP地址; 第二接收单元,用于接收对所述应用服务器访问成功后所述应用服务器根据负载均衡策略下发的IP地址; 第二保存单元,用于将所述应用服务器根据负载均衡策略下发的IP地址保存至所述接入点列表的首位置。
【文档编号】H04L29/08GK103905500SQ201210580442
【公开日】2014年7月2日 申请日期:2012年12月27日 优先权日:2012年12月27日
【发明者】赵杰, 柳锋, 唐韬, 傅建兵 申请人:腾讯数码(天津)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1