CN105357253A - 网络数据请求处理装置及方法 - Google Patents
网络数据请求处理装置及方法 Download PDFInfo
- Publication number
- CN105357253A CN105357253A CN201510623856.9A CN201510623856A CN105357253A CN 105357253 A CN105357253 A CN 105357253A CN 201510623856 A CN201510623856 A CN 201510623856A CN 105357253 A CN105357253 A CN 105357253A
- Authority
- CN
- China
- Prior art keywords
- server
- data
- client
- fixed value
- cube computation
- 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.)
- Pending
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/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/14—Session management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种网络数据请求处理装置及方法,包括:接收模块用于接收客户端发送的网络数据请求,获取模块用于获取第一缓存数据以及所述客户端的用户参数,连接模块用于在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时建立所述客户端与所述固定值n对应服务器之间的数据连接。本发明提出的数据请求处理方法及装置,保证了客户端能访问服务器集群中固定服务器,使得用户的业务处理能够在同一台服务器上集群分发。
Description
技术领域
本发明涉及通讯技术领域,尤其涉及网络数据请求处理装置及方法。
背景技术
随着网络服务的日趋完善,我们在获得方便的同时,也面临着巨大的挑战,并发业务访问数量的直线增长,是对网络中的服务器工作能力的严峻考验。采用多服务器集群技术是解决上述问题的有效方案,而负载均衡是集群技术的核心问题。负载均衡能够将大量的并发访问请求合理地均分到集群内的各后端服务器上进行处理,有效地避免了单一服务器数据流过大的问题,同时能够使各个后端服务器的资源得到均衡的使用。负载均衡包括硬件和软件两种类型,硬件的成本高昂,软件的负载均衡配置部署灵活,越来越受到人们的亲睐。
软件负载均衡常用的是反向代理服务器,例如Nginx服务器。反向代理是指以代理服务器来接收网络中的连接请求,运用均衡策略将请求分发给内部网络上的服务器集群,并将从服务器集群上得到的结果返回给网络中发出连接请求的客户端。
针对一次业务处理时的网络数据请求需多次访问服务器的情况,例如分片上传文件,需要能够保证每次数据请求处理在同一台服务器。在某些情况下,例如在客户端访问一个页面时,该页面可能被存放在服务器集群的多个服务器中,客户端每次访问该页面可能访问的是不同的服务器,因此就需要多个不同的服务器之间共享用户数据,否则就会造成每次访问该页面时的数据更新不同步问题。
因此,需要提供一种在服务器集群中使客户端访问服务器集群中固定服务器的装置和方法。
发明内容
本发明的主要目的在于提出一种在服务器集群中使客户端访问服务器集群中固定服务器的装置和方法。
为实现上述目的,本发明提供的一种网络数据请求处理装置,所述网络数据请求处理装置包括:接收模块,用于接收客户端发送的网络数据请求;获取模块,用于获取第一缓存数据以及所述客户端的用户参数;以及连接模块,用于在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时建立所述客户端与所述固定值n对应服务器之间的数据连接。
优选的,所述网络数据请求处理装置还包括学习模块,用于将历史网络数据请求转换为固定值n,建立所述固定值n与N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存数据。
优选的,所述获取模块还用于在所述第一缓存数据中没有存储有所述客户端的用户参数与固定值n的对应关系时获取第二缓存数据,相应的,所述连接模块还用于根据所述第二缓存数据建立所述客户端与对应服务器的数据连接。
优选的,所述固定值n为自然数且n小于等于N,所述连接模块还用于根据所述第二缓存数据建立所述客户端与对应服务器的数据连接具体包括:在所述第二缓存数据中的最近一次历史数据中的固定值n等于N时建立所述客户端与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及在所述第二缓存数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
优选的,所述连接模块还用于在根据所述第二缓存数据建立所述客户端与对应服务器的数据连接之后将所述客户端的用户参数与所述固定值n之间的对应关系存入第一缓存数据。
本发明还提供的一种网络数据请求处理方法,所述方法包括步骤:接收客户端发送的网络数据请求;获取第一缓存数据以及所述客户端的用户参数;以及在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时建立所述客户端与所述固定值n对应服务器之间的数据连接。
优选的,所述方法还包括:将历史网络数据请求转换为固定值n;建立所述固定值n与N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存数据。
优选的,所述方法还包括:在所述第一缓存数据中没有存储有所述客户端的用户参数与固定值n的对应关系时获取第二缓存数据;根据所述第二缓存数据建立所述客户端与对应服务器的数据连接。
优选的,所述固定值n为自然数且n小于等于N,所述根据所述第二缓存数据建立所述客户端与对应服务器的数据连接具体包括:在所述第二缓存数据中的最近一次历史数据中的固定值n等于N时建立所述客户端与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及在所述第二缓存数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
优选的,所述根据所述第二缓存数据建立所述客户端与对应服务器的数据连接之后还包括步骤:将所述客户端的用户参数与所述固定值n之间的对应关系存入第一缓存数据。
本发明提出的数据请求处理方法及装置,通过接收客户端发送的网络数据请求来获取客户端的用户参数,将客户端的用户参数在第一缓存数据中进行比较和查询,在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时,建立所述客户端与所述固定值n对应服务器之间的数据连接,保证了客户端能访问服务器集群中固定服务器,使得用户的业务处理能够在同一台服务器上集群分发。
附图说明
图1为实现本发明各个实施例的***示意图;
图2为实现本发明各个实施例的处理装置的模块结构示意图;
图3为本发明第三实施例提供的数据请求处理方法流程示意图;
图4为本发明第三实施例中第二缓存建立历史数据的方法流程示意图;
图5为本发明第三实施例中通过第二缓存建立客户端和对应服务器数据连接的方法流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施例
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
请参考图1,为本发明实施例中数据请求处理装置210100通信***示意图,N个服务器组成服务器集群300,服务器集群300通过反向代理服务器200与客户端100通讯连接,其中服务器集群300和反向代理服务器200,以及反向代理服务器200与客户端100之间通过有线方式、无线方式或者有线方式和无线方式的组合通讯连接,例如万维网、局域网、基于卫星的通信***或者他们的组合。
本发明实施例中的数据请求处理装置210,后称处理装置210,可以运行在客户端100,专用服务器,例如运行有Nginx***的反向代理服务器200,或者网络中其他专用的电子装置中,在本实施例中,处理装置210运行在反向代理服务器200中,反向代理服务器200至少包括一个缓存,在本实施例中,反向代理服务器200包括两个缓存,分别是第一缓存220和第二缓存230,第一缓存220存储第一缓存220数据,第二缓存230存储第二缓存230数据。在本发明的其他实施例中,第一缓存220数据和第二缓存230数据也可以存储在同一缓存的不同存储区域里。
客户端100可以以各种形式来实施。例如,本发明中描述的客户端100可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施例的构造也能够应用于固定类型的终端。
客户端100中运行有浏览器,浏览器是指可以显示网页服务器或者文件***的HTML文件(标准通用标记语言的一个应用)内容,并让用户与这些文件交互的一种软件。它用来显示在万维网或局域网等内的文字、图像及其他信息。这些文字或图像,可以是连接其他网址的超链接,用户可迅速及轻易地浏览各种信息。网页中包括多个文档,每个文档都是分别从服务器集群300中的一个或多个服务器中获取的。网页文件包括图像、动画、视频、声音、流媒体等。
服务器是提供计算服务的电子设备。服务器响应服务请求,并进行处理。服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机硬件类似。在网络环境下,根据服务器提供的服务类型不同,分为文件服务器,数据库服务器,应用程序服务器,网页服务器等。在本实施例中,服务器集群300中的服务器为网页服务器。
服务器集群300中存储有网页文件或其他格式类型的数据和文件,本发明的服务器集群300采用负载均衡技术,每个网页文件存储在服务器集群300中的多个服务器中,每个网页文件的不同部分也可能存储在服务器集群300中的多个服务器中,客户端100通过浏览器向反向代理服务器200发送网络数据请求,反向代理服务器200通过处理装置210找到服务器集群300中对应的服务器,并建立对应服务器与客户端100的数据连接,以使客户端100的浏览器可以获取对应服务器的文件内容,从而使客户端100和对应服务器完成信息交互。
本发明的各种实施例中的处理装置210可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施例可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置210(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施。对于软件实施,诸如过程或功能的实施例可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器中并且由控制器执行。
基于上述客户端100、反向代理服务器200以及服务器集群300的硬件结构以及通信***,提出本发明方法各个实施例。
如图2所示,本发明第一实施例提出一种处理装置210,所述处理装置210包括接收模块211,获取模块212以及连接模块213。接收模块211用于接收客户端100发送的网络数据请求,获取模块212用于获取第一缓存220中的第一缓存220数据以及所述客户端100的用户参数,连接模块213用于在所述第一缓存220数据中存储有所述客户端100的用户参数与固定值n的对应关系时建立所述客户端100与所述固定值n对应服务器之间的数据连接。
在本实施例中,网络数据请求通过用户输入的URL(Uniform/UniversalResourceLocator,统一资源定位符)生成,URL是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网资源的地址,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
具体的说,客户端100的浏览器地址栏接收用户输入的URL并接收用户的输入触发,客户端100生成包含URL信息的网络数据请求并发送给处理装置210,其中,URL中可能包含网络中一位置的IP地址或者网址域名信息,在URL中包含的是网址域名信息时,还包括将URL中的域名信息在DNS服务器中查找到对应的IP地址。
接收模块211接收客户端100发送的网络数据请求,获取模块212获取所述客户端100的用户参数。,用户参数包括用户编号,令牌等可标示用户的参数,在本实施例中,用户参数为令牌,令牌代表执行某些操作的权利的对象。其中客户端100的用户参数可以通过网络数据请求一并发送,也可以在接收模块211接收到客户端100发送的网络数据请求之后获取模块212向客户端100获取。
获取模块212还用于获取第一缓存220数据,第一缓存220数据存储在第一缓存220中,第一缓存220可以为网络中独立的缓存服务器,也可以是集群服务器或客户端100中的缓存模块。连接模块213在所述第一缓存220数据中存储有所述客户端100的用户参数与固定值n的对应关系时建立所述客户端100与所述固定值n对应服务器之间的数据连接。
固定值n与服务器集群300中的服务器具有一一对应关系,可以将服务器集群300中多个服务器按顺序编号,例如,当n为1时,对应服务器集群300中的编号为1的服务器,当n为2时,对应服务器集群300中的编号为1的服务器。也可以设置n的取值范围对应服务器集群300中的不同服务器,例如,当n的值为二进制00000001-00001000时对应服务器集群300中对应的某特定服务器。在本实施例中,n为自然数,且小于服务器集群300中的服务器数目N。
如果在第一缓存220中存储有客户端100的用户参数和固定值n的对应关系,那么便可以通过获取的客户端100的用户参数在第一缓存220中的第一缓存220数据中查询得到该客户端100用户参数对应的固定值n,从而根据该固定值n确定对应服务器集群300中的服务器,从而使客户端100通过处理装置210建立与该服务器的连接,从而保证每次相同用户参数的客户端100的数据请求都是在该服务器上存取和处理。
在本实施例中,固定值n具体为对URL执行哈希算法后的哈希值。处理装置210还包括学习模块214,用于将历史网络数据请求转换为固定值n,建立所述固定值n与服务器集群300中N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系以及对应的网络数据请求信息中包含的用户参数信息存入第二缓存230的第二缓存230数据中。
具体来说,学习模块214能将URL执行哈希算法以得到固定值n,通过固定值n,即哈希值,从而使该URL能定向到服务器集群300中的固定一台服务器,学习模块214将历史操作中,对URL的哈希结果以及哈希结果和服务器集群300中某一服务器的对应关系存入第二缓存230的第二缓存230数据中。
在本发明的其他实施例中,第二缓存230数据中存储的历史数据也可有其他方法得到,例如在服务器集群300中的服务器数量较少时,通过自定义预设固定值n和对应服务器之间的对应关系。
获取模块212还用于在所述第一缓存220数据中没有存储有所述客户端100的用户参数与固定值n的对应关系时从第二缓存230中获取第二缓存230数据,相应的,所述连接模块213还用于根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接。
在本实施例中,连接模块213还用于根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接具体包括:在所述第二缓存230数据中的最近一次历史数据中的固定值n等于N时建立所述客户端100与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及在所述第二缓存230数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端100与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
在第一缓存220210中不存在标示客户端100身份的令牌和哈希值对应关系时,从第二缓存230中获取历史数据,并从历史数据中取出最近一次被调用的哈希值。
例如当服务器集群300中有9台服务器时,当发现第二缓存230中最近一次被调用的哈希值是9,则建立客户端100和服务器中第一个服务器,或者编号为1的服务器的数据连接,并将哈希值修改为1。当发现第二缓存230中最近一次被调用的哈希值是7,不等于9时,则建立客户端100和服务器中第7个服务器,或者编号为8的服务器的数据连接,并将哈希值修改为8。当发现第二缓存230中最近一次被调用的哈希值是1不等于9时,则建立客户端100和服务器中第2个服务器,或者编号为2的服务器的数据连接,并将哈希值修改为2。
连接模块213还用于在根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接之后将所述客户端100的用户参数与所述固定值n之间的对应关系存入第一缓存220数据。
在客户端100和对应的服务器建立连接之中,连接模块213将该客户端100的令牌以及刚刚完成数据连接的哈希值和服务器以及他们的对应关系存入第一缓存220的第一缓存220数据中,以使得下一次相同用户参数的客户端100发送数据请求时,直接从第一缓存220中查询对应的哈希值和服务器位置以及编号,从而建立该客户端100和对应服务器的数据连接。
在被发明的第二实施例中,连接模块213直接从第二缓存230中根据历史数据中最近一次调用的哈希值找到对应服务器建立客户端100与对应服务器的数据连接,并将客户端100用户参数和哈希值与服务器的对应关系存储在第二缓存230中,而不需要先从第一缓存220中进行查询和判断。
本发明提出的处理装置210,通过接收客户端100发送的网络数据请求来获取客户端100的用户参数,将客户端100的用户参数在第一缓存220第一缓存数据中进行比较和查询,在所述第一缓存数据中存储有所述客户端100的用户参数与固定值n的对应关系时,建立所述客户端100与所述固定值n对应服务器之间的数据连接,保证了客户端100能访问服务器集群300中固定服务器,使得用户的业务处理能够在同一台服务器上集群分发。
本发明第三实施例提供一种数据请求处理方法,所述方法通过处理装置210执行,处理装置210包括接收模块211,获取模块212以及连接模块213。接收模块211用于接收客户端100发送的网络数据请求,获取模块212用于获取第一缓存220数据以及所述客户端100的用户参数,连接模块213用于在所述第一缓存220数据中存储有所述客户端100的用户参数与固定值n的对应关系时建立所述客户端100与所述固定值n对应服务器之间的数据连接。
请参照图3,所述方法包括步骤:
S101:接收模块211接收客户端100发送的网络数据请求。
在本实施例中,网络数据请求通过用户输入的URL(Uniform/UniversalResourceLocator,统一资源定位符)生成,URL是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网资源的地址,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
具体的说,客户端100的浏览器地址栏接收用户输入的URL并接收用户的输入触发,客户端100生成包含URL信息的网络数据请求并发送给处理装置210,其中,URL中可能包含网络中一位置的IP地址或者网址域名信息,在URL中包含的是网址域名信息时,还包括将URL中的域名信息在DNS服务器中查找到对应的IP地址。
S102:获取模块212获取客户端100的用户参数。
接收模块211接收客户端100发送的网络数据请求,获取模块212获取所述客户端100的用户参数。,用户参数包括用户编号,令牌等可标示用户的参数,在本实施例中,用户参数为令牌,令牌代表执行某些操作的权利的对象。其中客户端100的用户参数可以通过网络数据请求一并发送,也可以在接收模块211接收到客户端100发送的网络数据请求之后获取模块212向客户端100获取。
S103:获取模块212获取第一缓存220数据。
获取模块212还用于获取第一缓存220数据,第一缓存220数据存储在第一缓存220中,第一缓存220可以为网络中独立的缓存服务器,也可以是集群服务器或客户端100中的缓存模块。连接模块213在所述第一缓存220数据中存储有所述客户端100的用户参数与固定值n的对应关系时建立所述客户端100与所述固定值n对应服务器之间的数据连接。
其中,在其他实施例中,步骤S102和步骤S103可为同一个步骤,或者步骤S103在步骤S102之前。
S104:连接模块213判断第一缓存220数据中是否存储有客户端100的用户参数与固定值n的对应关系,是则进入步骤S105。
S105:连接模块213在所述第一缓存220数据中存储有所述客户端100的用户参数与固定值n的对应关系时建立所述客户端100与所述固定值n对应服务器之间的数据连接。
固定值n与服务器集群300中的服务器具有一一对应关系,可以将服务器集群300中多个服务器按顺序编号,例如,当n为1时,对应服务器集群300中的编号为1的服务器,当n为2时,对应服务器集群300中的编号为1的服务器。也可以设置n的取值范围对应服务器集群300中的不同服务器,例如,当n的值为二进制00000001-00001000时对应服务器集群300中对应的某特定服务器。在本实施例中,n为自然数,且小于服务器集群300中的服务器数目N。
如果在第一缓存220中存储有客户端100的用户参数和固定值n的对应关系,那么便可以通过获取的客户端100的用户参数在第一缓存220中的第一缓存220数据中查询得到该客户端100用户参数对应的固定值n,从而根据该固定值n确定对应服务器集群300中的服务器,从而使客户端100通过处理装置210建立与该服务器的连接,从而保证每次相同用户参数的客户端100的数据请求都是在该服务器上存取和处理。
请参考图4,在本实施例中,所述方法还包括以下步骤:
S201:学习模块214将历史网络数据请求转换为固定值n;
S202:学习模块214建立所述固定值n与N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存230数据。
在本实施例中,固定值n具体为对URL执行哈希算法后的哈希值。处理装置210还包括学习模块214,用于将历史网络数据请求转换为固定值n,建立所述固定值n与服务器集群300中N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存230的第二缓存230数据中。
具体来说,学习模块214能将URL执行哈希算法以得到固定值n,通过固定值n,即哈希值,从而使该URL能定向到服务器集群300中的固定一台服务器,学习模块214将历史操作中,对URL的哈希结果以及哈希结果和服务器集群300中某一服务器的对应关系存入第二缓存230的第二缓存230数据中。
在本发明的其他实施例中,步骤S201和步骤S202中第二缓存230数据中存储的历史数据也可有其他方法得到,例如在服务器集群300中的服务器数量较少时,通过自定义预设固定值n和对应服务器之间的对应关系。
对应的,请参考图5,在本实施例中,还包括以下步骤:
在步骤S104中,若连接模块213在所述第一缓存220数据中没有存储有所述客户端100的用户参数与固定值n的对应关系时进入步骤S106:获取模块获取第二缓存230数据;
S107:获取模块212获取第二缓存230数据中的最近一次历史数据中的固定值n。
S108:连接模块213判断n是否等于N,若是则进入步骤S111,若否则进入步骤S109。
在步骤S108中,若n不等于N则进入步骤S109:连接模块213建立客户端100与服务器集群300中第n+1个服务器之间的数据连接。
S110:连接模块213设置n=n+1,然后进入步骤S113。
在步骤S108中,若n等于N则进入步骤S111:连接模块213建立客户端100与服务器集群300中第1个服务器之间的数据连接。
S110:连接模块213设置n=1,然后进入步骤S113。
步骤S113:连接模块213将客户端100的用户参数与固定值n之间的对应关系存入第一缓存220数据。
获取模块212还用于在所述第一缓存220数据中没有存储有所述客户端100的用户参数与固定值n的对应关系时从第二缓存230中获取第二缓存230数据,相应的,所述连接模块213还用于根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接。
在本实施例中,连接模块213还用于根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接具体包括:在所述第二缓存230数据中的最近一次历史数据中的固定值n等于N时建立所述客户端100与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及在所述第二缓存230数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端100与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
在第一缓存220中不存在标示客户端100身份的令牌和哈希值对应关系时,从第二缓存230中获取历史数据,并从历史数据中取出最近一次被调用的哈希值。
例如当服务器集群300中有9台服务器时,当发现第二缓存230中最近一次被调用的哈希值是9,则建立客户端100和服务器中第一个服务器,或者编号为1的服务器的数据连接,并将哈希值修改为1。当发现第二缓存230中最近一次被调用的哈希值是7,不等于9时,则建立客户端100和服务器中第7个服务器,或者编号为8的服务器的数据连接,并将哈希值修改为8。当发现第二缓存230中最近一次被调用的哈希值是1不等于9时,则建立客户端100和服务器中第2个服务器,或者编号为2的服务器的数据连接,并将哈希值修改为2。
连接模块213还用于在根据所述第二缓存230数据建立所述客户端100与对应服务器的数据连接之后将所述客户端100的用户参数与所述固定值n之间的对应关系存入第一缓存220数据。
在客户端100和对应的服务器建立连接之中,连接模块213将该客户端100的令牌以及刚刚完成数据连接的哈希值和服务器以及他们的对应关系存入第一缓存220的第一缓存220数据中,以使得下一次相同用户参数的客户端100发送数据请求时,直接从第一缓存220中查询对应的哈希值和服务器位置以及编号,从而建立该客户端100和对应服务器的数据连接。
在被发明的第四实施例中,在第三实施例中的步骤S102之后直接进入步骤S106,连接模块213直接从第二缓存230中根据历史数据中最近一次调用的哈希值找到对应服务器建立客户端100与对应服务器的数据连接,并将客户端100用户参数和哈希值与服务器的对应关系存储在第二缓存230中,而不需要先从第一缓存220中进行查询和判断。
本发明提出的数据请求处理装置方法,通过接收客户端100发送的网络数据请求来获取客户端100的用户参数,将客户端100的用户参数在第一缓存220第一缓存数据中进行比较和查询,在所述第一缓存数据中存储有所述客户端100的用户参数与固定值n的对应关系时,建立所述客户端100与所述固定值n对应服务器之间的数据连接,保证了客户端100能访问服务器集群300中固定服务器,使得用户的业务处理能够在同一台服务器上集群分发。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣,在不冲突的情况下,本发明实施例及实施例中的特征可以相互组合实施。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施例。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种网络数据请求处理装置,其特征在于,所述网络数据请求处理装置包括:
接收模块,用于接收客户端发送的网络数据请求;
获取模块,用于获取第一缓存数据以及所述客户端的用户参数;以及
连接模块,用于在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时建立所述客户端与所述固定值n对应服务器之间的数据连接。
2.根据权利要求1所述的网络数据请求处理方法,其特征在于,所述网络数据请求处理装置还包括学习模块,用于将历史网络数据请求转换为固定值n,建立所述固定值n与N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存数据。
3.根据权利要求1或2所述的网络数据请求处理方法,其特征在于,所述获取模块还用于在所述第一缓存数据中没有存储有所述客户端的用户参数与固定值n的对应关系时获取第二缓存数据,相应的,所述连接模块还用于根据所述第二缓存数据建立所述客户端与对应服务器的数据连接。
4.根据权利要求3所述的网络数据请求处理方法,其特征在于,所述固定值n为自然数且n小于等于N,所述连接模块还用于根据所述第二缓存数据建立所述客户端与对应服务器的数据连接具体包括:
在所述第二缓存数据中的最近一次历史数据中的固定值n等于N时建立所述客户端与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及
在所述第二缓存数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
5.根据权利要求4所述的网络数据请求处理方法,其特征在于,所述连接模块还用于在根据所述第二缓存数据建立所述客户端与对应服务器的数据连接之后将所述客户端的用户参数与所述固定值n之间的对应关系存入第一缓存数据。
6.一种网络数据请求处理方法,其特征在于,所述方法包括步骤:
接收客户端发送的网络数据请求;
获取第一缓存数据以及所述客户端的用户参数;以及
在所述第一缓存数据中存储有所述客户端的用户参数与固定值n的对应关系时建立所述客户端与所述固定值n对应服务器之间的数据连接。
7.根据权利要求6所述的网络数据请求处理方法,其特征在于,所述方法还包括:
将历史网络数据请求转换为固定值n;
建立所述固定值n与N个服务器之间的对应关系,并将所述固定值n与N个服务器之间的对应关系存入第二缓存数据。
8.根据权利要求6或7所述的网络数据请求处理方法,其特征在于,所述方法还包括:
在所述第一缓存数据中没有存储有所述客户端的用户参数与固定值n的对应关系时获取第二缓存数据;
根据所述第二缓存数据建立所述客户端与对应服务器的数据连接。
9.根据权利要求8所述的网络数据请求处理方法,其特征在于,所述固定值n为自然数且n小于等于N,所述根据所述第二缓存数据建立所述客户端与对应服务器的数据连接具体包括:
在所述第二缓存数据中的最近一次历史数据中的固定值n等于N时建立所述客户端与所述N个服务器中的第一个服务器之间数据连接,并将固定值n赋值为1;以及
在所述第二缓存数据中的最近一次历史数据中的固定值n1不等于N时建立所述客户端与所述N个服务器中的第n+1个服务器之间数据连接,并将固定值n的值加1。
10.根据权利要求9所述的网络数据请求处理方法,其特征在于,所述根据所述第二缓存数据建立所述客户端与对应服务器的数据连接之后还包括步骤:将所述客户端的用户参数与所述固定值n之间的对应关系存入第一缓存数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510623856.9A CN105357253A (zh) | 2015-09-28 | 2015-09-28 | 网络数据请求处理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510623856.9A CN105357253A (zh) | 2015-09-28 | 2015-09-28 | 网络数据请求处理装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105357253A true CN105357253A (zh) | 2016-02-24 |
Family
ID=55333112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510623856.9A Pending CN105357253A (zh) | 2015-09-28 | 2015-09-28 | 网络数据请求处理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105357253A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107493308A (zh) * | 2016-06-12 | 2017-12-19 | 阿里巴巴集团控股有限公司 | 一种发送消息的方法和装置及分布式设备集群*** |
CN112448968A (zh) * | 2019-08-28 | 2021-03-05 | 华为技术有限公司 | 一种处理网络请求的方法、相关装置和存储*** |
CN112911010A (zh) * | 2021-02-05 | 2021-06-04 | 上海锐伟电子科技有限公司 | 一种适用于多种设备端连接的管理方法及*** |
CN114827233A (zh) * | 2022-04-27 | 2022-07-29 | 平安普惠企业管理有限公司 | 基于双活集群的交互连接方法、装置、计算机设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100180208A1 (en) * | 2009-01-15 | 2010-07-15 | Kasten Christopher J | Server side data cache system |
CN102790784A (zh) * | 2011-05-18 | 2012-11-21 | 阿里巴巴集团控股有限公司 | 分布式缓存方法及***、缓存解析方法及解析*** |
CN102882939A (zh) * | 2012-09-10 | 2013-01-16 | 北京蓝汛通信技术有限责任公司 | 负载均衡方法、设备及泛域名加速访问*** |
-
2015
- 2015-09-28 CN CN201510623856.9A patent/CN105357253A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100180208A1 (en) * | 2009-01-15 | 2010-07-15 | Kasten Christopher J | Server side data cache system |
CN102790784A (zh) * | 2011-05-18 | 2012-11-21 | 阿里巴巴集团控股有限公司 | 分布式缓存方法及***、缓存解析方法及解析*** |
CN102882939A (zh) * | 2012-09-10 | 2013-01-16 | 北京蓝汛通信技术有限责任公司 | 负载均衡方法、设备及泛域名加速访问*** |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107493308A (zh) * | 2016-06-12 | 2017-12-19 | 阿里巴巴集团控股有限公司 | 一种发送消息的方法和装置及分布式设备集群*** |
CN112448968A (zh) * | 2019-08-28 | 2021-03-05 | 华为技术有限公司 | 一种处理网络请求的方法、相关装置和存储*** |
CN112448968B (zh) * | 2019-08-28 | 2022-08-09 | 华为云计算技术有限公司 | 一种处理网络请求的方法、相关装置和存储*** |
CN112911010A (zh) * | 2021-02-05 | 2021-06-04 | 上海锐伟电子科技有限公司 | 一种适用于多种设备端连接的管理方法及*** |
CN114827233A (zh) * | 2022-04-27 | 2022-07-29 | 平安普惠企业管理有限公司 | 基于双活集群的交互连接方法、装置、计算机设备及介质 |
CN114827233B (zh) * | 2022-04-27 | 2023-11-24 | 光禹莱特数字科技(上海)有限公司 | 基于双活集群的交互连接方法、装置、计算机设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107948324B (zh) | 请求传输***、方法、装置及存储介质 | |
CN108200165B (zh) | 请求传输***、方法、装置及存储介质 | |
CN103347089A (zh) | 一种对网站动态资源和静态资源分离加速的方法及装置 | |
CN103246667A (zh) | 数据跨域传递的方法及装置 | |
CN103731487A (zh) | 一种资源文件的下载方法、装置、***及路由器 | |
CN105357253A (zh) | 网络数据请求处理装置及方法 | |
CN104965690B (zh) | 数据处理方法及装置 | |
CN102413151A (zh) | 分享网络资源的方法及*** | |
CN103973835A (zh) | 一种域名***dns服务器选择方法及装置 | |
CN104601712A (zh) | 资源推送方法及*** | |
CN102122281A (zh) | 一种生成页面表单的方法、装置和*** | |
CN104978358A (zh) | 桌面展示网页片段的方法及截取网页片段至桌面展示*** | |
CN101808051A (zh) | 应用整合网关及其控制方法 | |
CN109561167A (zh) | 一种域名解析方法及装置 | |
CN104283920A (zh) | 一种网络应用路由的方法、服务器、终端和*** | |
CN101895550B (zh) | 一种应用于互联网网站的兼容动静态内容的缓冲加速方法 | |
CN103561068B (zh) | 一种提高网页浏览速度的方法及装置 | |
EP2719151A2 (en) | Methods and systems for access to real-time full-duplex web communications platforms | |
US9515959B2 (en) | Systems and methods for reduced bandwidth data transmission between network connected devices | |
CN102647463B (zh) | 网址导航的生成方法、无线路由终端及*** | |
CN104601721A (zh) | 一种多终端间信息处理方法和装置 | |
CN105721398A (zh) | 数据访问的方法及装置 | |
CN109600452B (zh) | 服务器集群、消息推送方法及相关服务器 | |
CN111343172A (zh) | 网络访问权限动态处理方法及装置 | |
CN104717122B (zh) | 一种业务信息交互方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160224 |