CN113434793B - 一种基于web反向代理的平滑过渡方法和系统 - Google Patents
一种基于web反向代理的平滑过渡方法和系统 Download PDFInfo
- Publication number
- CN113434793B CN113434793B CN202110620450.0A CN202110620450A CN113434793B CN 113434793 B CN113434793 B CN 113434793B CN 202110620450 A CN202110620450 A CN 202110620450A CN 113434793 B CN113434793 B CN 113434793B
- Authority
- CN
- China
- Prior art keywords
- original web
- accessible data
- reverse proxy
- server
- data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了基于WEB反向代理的平滑过渡方法和系统。本申请将反向代理服务器对可访问数据的缓存与各个原始WEB服务器的可访问数据迭代更新结合起来,提供了访问请求的负载在反向代理服务器与原始WEB服务器之间平滑过渡的解决机制。
Description
技术领域
本申请涉及网络通信技术领域,特别涉及一种基于WEB反向代理的平滑过渡方法和系统。
背景技术
反向代理是WEB访问当中常用的一种通信方式。众所周知,WEB服务器的主要功能是存储、处理以及向请求WEB访问的客户端传输数据。而WEB反向代理的目的是为了降低原始WEB服务器所承载的负荷,从而防止原始WEB服务器的过载。
反向代理服务器设置在原始WEB服务器和互联网之间。该反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求,从而承担了针对原始WEB服务器的全部或者部分访问请求所带来的负荷,避免了原始WEB服务器和互联网的直接通信。其中,如果反向代理服务器上缓存了客户端所请求访问的数据,则反向代理服务器会直接将缓存的数据发送给互联网的客户端。相反,如果反向代理服务器没有缓存客户端所请求的数据,则该反向代理服务器先向原始WEB服务器发出请求,从原始WEB服务器取回被请求访问的数据并在本地缓存,然后再发送给请求该数据的客户端。
可见,反向代理服务器一方面起到缓存器的作用,即缓存原始WEB服务器上的一部分可访问数据,另一方面,也可以起到负载均衡器的作用,也就是将客户端的访问请求分配给若干个原始WEB服务器之一,这些原始WEB服务器上都存储有被请求访问的数据,通过在这些原始WEB服务器间分配来自各个客户端的访问请求,达到保持各个原始WEB服务器之间负载均衡的效果。
但是,在实际运行过程中,反向代理服务器在缓解原始WEB服务器的负荷方面,往往无法实现最优化。一方面,由于可访问数据具有不同的访问热度,且访问热度快速迭代,反向代理服务器要频繁地向原始WEB服务器请求取回当前访问热度高的数据,从而降低了其作为缓存器的作用;另一方面,可访问数据难以在若干个原始WEB服务器上可访问数据的完全同步迭代,导致反向代理服务器在分配访问请求的时候无法有效贯彻负载均衡的规则,且加大了访问请求分配的操作难度。
发明内容
基于此,本申请提供了基于WEB反向代理的平滑过渡方法和系统。本申请将反向代理服务器对可访问数据的缓存与各个原始WEB服务器的可访问数据迭代更新结合起来,提供了访问请求的负载在反向代理服务器与原始WEB服务器之间平滑过渡的解决机制。
本发明提供了一种WEB反向代理的平滑过渡方法,其特征在于,包括以下步骤:
通过原始WEB服务器存储可访问数据;
通过反向代理服务器向各个原始WEB服务器发出缓存请求,获得并在反向代理服务器自身具有的缓存空间中缓存可访问数据的副本;
通过反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求;
通过反向代理服务器解析该访问请求;如果缓存空间之中缓存了客户端所请求访问的数据,则反向代理服务器会直接将缓存的可访问数据发送给互联网的客户端;如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端。
其中,在反向代理服务器中,针对若干个原始WEB服务器其中的每一个,分别为其配置可调整的缓存空间占用量。
其中,确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率;根据每一个原始WEB服务器的所述访问热度迭代速率,调整该原始WEB服务器对应的缓存空间占用量,并且原始WEB服务器的所述访问热度迭代速率越高,则分配的缓存空间占用量越大。
其中,由原始WEB服务器建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息;原始WEB服务器将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
其中,反向代理服务器从各个原始WEB服务器获得访问解析表,整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息;通过代理解析表还记录了可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中。
其中,所述反向代理服务器在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求。
本发明还提供了一种WEB反向代理的平滑过渡系统,其特征在于,包括:
原始WEB服务器,用于存储可访问数据;以及针对客户端面向可访问数据的访问请求,将其定位到可访问数据,从而将该可访问数据传输给反向代理服务器;
反向代理服务器,用于向各个原始WEB服务器发出缓存请求,获得并在反向代理服务器自身具有的缓存空间中缓存可访问数据的副本;从互联网的客户端接收面向原始WEB服务器的访问请求;以及解析该访问请求;如果缓存空间之中缓存了客户端所请求访问的数据,则直接将缓存的可访问数据发送给互联网的客户端;如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端。
其中,所述反向代理服务器包括缓存空间调整模块,用于针对若干个原始WEB服务器其中的每一个,分别为其配置可调整的缓存空间占用量。
其中,所述缓存空间调整模块确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率;根据每一个原始WEB服务器的所述访问热度迭代速率,调整该原始WEB服务器对应的缓存空间占用量,并且原始WEB服务器的所述访问热度迭代速率越高,则分配的缓存空间占用量越大。
其中,所述原始WEB服务器包括访问解析模块,用于建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息;以及将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
其中,所述反向代理服务器包括代理解析模块,用于从各个原始WEB服务器获得访问解析表,整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息;通过代理解析表还记录了可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中。
其中,所述代理解析模块在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求。
本发明在反向代理服务器和原始WEB服务器之间建立了负载分配机制,对每一个原始WEB服务器配置的缓存空间占用量的动态调整,与反向代理服务器基于负载均衡规则进行的请求分配结合,能够更为有效的实现访问请求负载的平滑过渡。
附图说明
以下参考附图描述的实施例是示例性的,旨在用于解释和说明本申请,而不能理解为对本申请的保护范围的限制。
图1是本申请公开的WEB反向代理的平滑过渡方法流程图;
图2是本申请公开的WEB反向代理的平滑过渡系统架构图。
具体实施方式
为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行更加详细的描述。
如图1所示,本发明提供的WEB反向代理的平滑过渡方法,包括以下步骤:
通过原始WEB服务器存储可访问数据;
通过反向代理服务器向各个原始WEB服务器发出缓存请求,获得并在反向代理服务器自身具有的缓存空间中缓存可访问数据的副本;
通过反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求;
通过反向代理服务器解析该访问请求;如果缓存空间之中缓存了客户端所请求访问的数据,则反向代理服务器会直接将缓存的可访问数据发送给互联网的客户端;如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端。
在本申请中,由原始WEB服务器存储可访问数据,并且针对客户端面向可访问数据的访问请求,传输所请求访问的数据。这里谈到的可访问数据包括但不限于网页、流媒体、文件等形式。原始WEB服务器会解析收到的访问请求,将其定位到可访问数据,从而将该可访问数据传输给反向代理服务器。原始WEB服务器会建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息。原始WEB服务器将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
对于互联网来说,由于原始WEB服务器需要提供海量可访问数据,且需要面对海量的客户端的访问请求,因此为了分摊数据存储、处理、传输、请求响应等方面的负荷,部署若干个原始WEB服务器,可访问数据的相同副本被存储在多个原始WEB服务器上。
反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求,如前文所述,反向代理服务器为原始WEB服务器起到缓存器和负载均衡器的作用。反向代理服务器自身具有缓存空间,可以向各个原始WEB服务器发出缓存请求,从而从原始WEB服务器获得可访问数据的副本,缓存于该原始WEB服务器在反向代理服务器上的所述缓存空间之内。在收到客户端的访问请求之后,反向代理服务器解析该访问请求,如果缓存空间之中缓存了客户端所请求访问的数据,则反向代理服务器会直接将缓存的可访问数据发送给互联网的客户端。相反,如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则该反向代理服务器确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端。
反向代理服务器从各个原始WEB服务器获得访问解析表,如果一个原始WEB服务器的访问解析表进行了更新,则需要同步将该访问解析表上传给反向代理服务器。反向代理服务器将各个原始WEB服务器的访问解析表整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息。代理解析表还记录了可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中。反向代理服务器将客户端的访问请求对照该代理解析表,首先确定各个原始WEB服务器在反向代理服务器的缓存空间之中是否存在被请求的可访问数据,如果存在则确定该可访问数据在缓存空间中的定位信息,以便从缓存空间中查找到被请求的可访问数据并提供给客户端;如果缓存空间中没有被请求的可访问数据,则反向代理服务器通过代理解析表确定具有该被请求的可访问数据的原始WEB服务器,并依据所述负载均衡的规则将该访问请求分配给其中一个原始WEB服务器。
为了进一步节约反向代理服务器的缓存空间,避免相同的可访问数据副本占用多个原始WEB服务器在反向代理服务器上的缓存空间,反向代理服务器在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求。
可见,全部原始WEB服务器其中的每一个都会在反向代理服务器中占用一定大小的缓存空间,而反向代理服务器会为每一个原始WEB服务器配置缓存空间占用量,从每一个原始WEB服务器获得并缓存的可访问数据副本所占用的反向代理服务器的缓存空间大小不能超出所配置的缓存空间占用量。
反向代理服务器可以动态调整为每一个原始WEB服务器配置的缓存空间占用量。显然,为其中一个原始WEB服务器配置的缓存空间占用量越大,则反向代理服务器上缓存的自该原始WEB服务器获得的可访问数据副本越多,则反向代理服务器能够直接满足客户端针对这些可访问数据的访问请求,不需要继续向原始WEB服务器发送缓存请求,从而降低了该原始WEB服务器的负载。因此,对每一个原始WEB服务器配置的缓存空间占用量的动态调整,与反向代理服务器基于负载均衡规则进行的请求分配结合,能够更为有效的实现访问请求负载的平滑过渡。
具体来说,反向代理服务器根据收到的客户端的访问请求指向的可访问数据的统计,确定可访问数据的访问热度;进而,在监测访问热度的时间窗口上,确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率。根据每一个原始WEB服务器的所述迭代更新速率,调整该原始WEB服务器对应的缓存空间占用量,并且原始WEB服务器的所述迭代更新速率越高,则分配的缓存空间占用量越大。
如图2所示,本发明提供的WEB反向代理的平滑过渡系统,包括若干原始WEB服务器和反向代理服务器;所述原始WEB服务器与反向代理服务器通过专用网络——例如局域网——相互通信连接,且所述反向代理服务器通过互联网连接到用户客户端,接受客户端面向可访问数据的访问。
原始WEB服务器用于存储可访问数据,并且针对客户端面向可访问数据的访问请求,传输所请求访问的数据。这里谈到的可访问数据包括但不限于网页、流媒体、文件等形式。原始WEB服务器会解析收到的访问请求,将其定位到可访问数据,从而将该可访问数据传输给反向代理服务器。原始WEB服务器包括访问解析模块,访问解析模块会建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息。原始WEB服务器的访问解析模块将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
对于互联网来说,由于原始WEB服务器需要提供海量可访问数据,且需要面对海量的客户端的访问请求,因此为了分摊数据存储、处理、传输、请求响应等方面的负荷,部署若干个原始WEB服务器,可访问数据的相同副本被存储在多个原始WEB服务器上。
反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求,如前文所述,反向代理服务器为原始WEB服务器起到缓存器和负载均衡器的作用。反向代理服务器自身具有缓存空间,可以向各个原始WEB服务器发出缓存请求,从而从原始WEB服务器获得可访问数据的副本,缓存于该原始WEB服务器在反向代理服务器上的所述缓存空间之内。所述反向代理服务器还包括代理解析模块;在收到客户端的访问请求之后,代理解析模块解析该访问请求,如果缓存空间之中缓存了客户端所请求访问的数据,则会直接将缓存的可访问数据发送给互联网的客户端。相反,如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则代理解析模块确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端。
反向代理服务器的代理解析模块从各个原始WEB服务器获得访问解析表,如果一个原始WEB服务器的访问解析表进行了更新,则需要同步将该访问解析表上传给反向代理服务器。代理解析模块将各个原始WEB服务器的访问解析表整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息。代理解析表还记录了可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中。反向代理服务器通过代理解析模块,将客户端的访问请求对照该代理解析表,首先确定各个原始WEB服务器在反向代理服务器的缓存空间之中是否存在被请求的可访问数据,如果存在则确定该可访问数据在缓存空间中的定位信息,以便从缓存空间中查找到被请求的可访问数据并提供给客户端;如果缓存空间中没有被请求的可访问数据,则反向代理服务器通过代理解析表确定具有该被请求的可访问数据的原始WEB服务器,并依据所述负载均衡的规则将该访问请求分配给其中一个原始WEB服务器。
为了进一步节约反向代理服务器的缓存空间,避免相同的可访问数据副本占用多个原始WEB服务器在反向代理服务器上的缓存空间,代理解析模块在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求。
可见,全部原始WEB服务器其中的每一个都会在反向代理服务器中占用一定大小的缓存空间,而反向代理服务器包括缓存空间调整模块,该模块会为每一个原始WEB服务器配置缓存空间占用量,从每一个原始WEB服务器获得并缓存的可访问数据副本所占用的反向代理服务器的缓存空间大小不能超出所配置的缓存空间占用量。
反向代理服务器的缓存空间调整模块可以动态调整为每一个原始WEB服务器配置的缓存空间占用量。显然,为其中一个原始WEB服务器配置的缓存空间占用量越大,则反向代理服务器上缓存的自该原始WEB服务器获得的可访问数据副本越多,则反向代理服务器能够直接满足客户端针对这些可访问数据的访问请求,不需要继续向原始WEB服务器发送缓存请求,从而降低了该原始WEB服务器的负载。因此,对每一个原始WEB服务器配置的缓存空间占用量的动态调整,与反向代理服务器基于负载均衡规则进行的请求分配结合,能够更为有效的实现访问请求负载的平滑过渡。
具体来说,缓存空间调整模块确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率。根据每一个原始WEB服务器的所述迭代更新速率,调整该原始WEB服务器对应的缓存空间占用量,并且原始WEB服务器的所述迭代更新速率越高,则分配的缓存空间占用量越大。
本发明在反向代理服务器和原始WEB服务器之间建立了负载分配机制,对每一个原始WEB服务器配置的缓存空间占用量的动态调整,与反向代理服务器基于负载均衡规则进行的请求分配结合,能够更为有效的实现访问请求负载的平滑过渡。
本文中的模块、单元或组件的划分仅仅是一种逻辑功能的划分,在实际实现时可以有其他的划分方式,例如多个模块和/或单元可以结合或集成于另一个系统中。作为分离部件说明的模块、单元、组件在物理上可以是分开的,也可以是不分开的。作为单元显示的部件可以是物理单元,也可以不是物理单元,即可以位于一个具体地方,也可以分布到网格单元中。因此可以根据实际需要选择其中的部分或全部的单元来实现实施例的方案。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (6)
1.一种WEB反向代理的平滑过渡方法,其特征在于,包括以下步骤:
通过原始WEB服务器存储可访问数据;并建立并动态更新访问解析表,该表格中记录了原始WEB服务器上全部可访问数据的定位信息;
通过反向代理服务器向各个原始WEB服务器发出缓存请求,获得并在反向代理服务器自身具有的缓存空间中缓存可访问数据的副本;
通过反向代理服务器从互联网的客户端接收面向原始WEB服务器的访问请求;
通过反向代理服务器解析该访问请求;如果缓存空间之中缓存了客户端所请求访问的数据,则反向代理服务器会直接将缓存的可访问数据发送给互联网的客户端;如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,原始WEB服务器将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端;
所述平滑过渡方法还包括:通过反向代理服务器从各个原始WEB服务器获得访问解析表,将各个原始WEB服务器的访问解析表整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息,以及可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中;所述反向代理服务器将客户端的访问请求对照该代理解析表,首先确定各个原始WEB服务器在反向代理服务器的缓存空间之中是否存在被请求的可访问数据,如果存在则确定该可访问数据在缓存空间中的定位信息,以便从缓存空间中查找到被请求的可访问数据并提供给客户端;
反向代理服务器在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求,当缓存空间中没有被请求的可访问数据时,反向代理服务器通过代理解析表确定具有该被请求的可访问数据的原始WEB服务器,并依据所述负载均衡的规则将该访问请求分配给其中一个原始WEB服务器;
以及,通过反向代理服务器动态调整为每一个原始WEB服务器配置的缓存空间占用量,为其中一个原始WEB服务器配置的缓存空间占用量越大,则反向代理服务器上缓存的自该原始WEB服务器获得的可访问数据副本越多;其中,所述反向代理服务器根据收到的客户端的访问请求指向的可访问数据的统计,确定可访问数据的访问热度;进而,在监测访问热度的时间窗口上,确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率;根据每一个原始WEB服务器的所述迭代更新速率,调整该原始WEB服务器对应的缓存空间占用量。
2.根据权利要求1所述的WEB反向代理的平滑过渡方法,其特征在于,原始WEB服务器的所述访问热度迭代速率越高,则分配的缓存空间占用量越大。
3.根据权利要求1所述的WEB反向代理的平滑过渡方法,其特征在于,由原始WEB服务器建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息;原始WEB服务器将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
4.一种WEB反向代理的平滑过渡系统,其特征在于,包括:
原始WEB服务器,用于存储可访问数据;以及针对客户端面向可访问数据的访问请求,将其定位到可访问数据,从而将该可访问数据传输给反向代理服务器;
反向代理服务器,用于向各个原始WEB服务器发出缓存请求,获得并在反向代理服务器自身具有的缓存空间中缓存可访问数据的副本;从互联网的客户端接收面向原始WEB服务器的访问请求;以及解析该访问请求;如果缓存空间之中缓存了客户端所请求访问的数据,则直接将缓存的可访问数据发送给互联网的客户端;如果经解析确定,反向代理服务器的缓存空间没有缓存客户端所请求的数据,则确定存储了该被请求的数据的原始WEB服务器,并基于负载均衡的规则分配给其中一个原始WEB服务器,向被分配的原始WEB服务器转发该访问请求,从被分配的原始WEB服务器取回被请求访问的数据并缓存在该原始WEB服务器在反向代理服务器上的缓存空间中,然后再发送给请求该数据的客户端;以及,
所述原始WEB服务器包括访问解析模块,访问解析模块会建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息;访问解析模块将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器;
所述反向代理服务器包括代理解析模块,所述代理解析模块用于从各个原始WEB服务器获得访问解析表,将各个原始WEB服务器的访问解析表整合形成代理解析表,代理解析表记录了全部原始WEB服务器的可访问数据及其定位信息,以及可访问数据是否缓存于原始WEB服务器在反向代理服务器的缓存空间之中;所述反向代理服务器将客户端的访问请求对照该代理解析表,首先确定各个原始WEB服务器在反向代理服务器的缓存空间之中是否存在被请求的可访问数据,如果存在则确定该可访问数据在缓存空间中的定位信息,以便从缓存空间中查找到被请求的可访问数据并提供给客户端;
所述代理解析模块在向原始WEB服务器发送上述缓存请求或者是转发客户端的访问请求之前,首先在代理解析表中遍历查询全部原始WEB服务器在反向代理服务器的缓存空间中缓存的可访问数据,确认被请求的可访问数据在缓存空间中不存在,才允许发出所述缓存请求或者转发所述访问请求,当缓存空间中没有被请求的可访问数据时,反向代理服务器通过代理解析表确定具有该被请求的可访问数据的原始WEB服务器,并依据所述负载均衡的规则将该访问请求分配给其中一个原始WEB服务器;
所述反向代理服务器包括缓存空间调整模块,用于动态调整为每一个原始WEB服务器配置的缓存空间占用量,为其中一个原始WEB服务器配置的缓存空间占用量越大,则反向代理服务器上缓存的自该原始WEB服务器获得的可访问数据副本越多;其中,所述缓存空间调整模块根据收到的客户端的访问请求指向的可访问数据的统计,确定可访问数据的访问热度;进而,在监测访问热度的时间窗口上,确定每一个所述原始WEB服务器上可访问数据的访问热度迭代速率,根据每一个原始WEB服务器的所述迭代更新速率,调整该原始WEB服务器对应的缓存空间占用量。
5.根据权利要求4所述的WEB反向代理的平滑过渡系统,其特征在于,原始WEB服务器的所述访问热度迭代速率越高,则分配的缓存空间占用量越大。
6.根据权利要求4所述的WEB反向代理的平滑过渡系统,其特征在于,所述原始WEB服务器包括访问解析模块,用于建立并动态更新访问解析表,该表格中记录了该原始WEB服务器上全部可访问数据的定位信息;以及将访问请求对照该访问解析表,确定所述定位信息并查找到被请求的可访问数据,以便提供给反向代理服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110620450.0A CN113434793B (zh) | 2021-06-03 | 2021-06-03 | 一种基于web反向代理的平滑过渡方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110620450.0A CN113434793B (zh) | 2021-06-03 | 2021-06-03 | 一种基于web反向代理的平滑过渡方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434793A CN113434793A (zh) | 2021-09-24 |
CN113434793B true CN113434793B (zh) | 2022-11-04 |
Family
ID=77803554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110620450.0A Active CN113434793B (zh) | 2021-06-03 | 2021-06-03 | 一种基于web反向代理的平滑过渡方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434793B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095658B2 (en) * | 2004-05-07 | 2012-01-10 | International Business Machines Corporation | Method and system for externalizing session management using a reverse proxy server |
US7333990B1 (en) * | 2004-06-22 | 2008-02-19 | Sun Microsystems, Inc. | Dynamic reverse proxy |
CN101217483A (zh) * | 2008-01-21 | 2008-07-09 | 中兴通讯股份有限公司 | 用于实现集群服务器内负载分担代理的方法 |
CN108933829A (zh) * | 2018-07-10 | 2018-12-04 | 浙江数链科技有限公司 | 一种负载均衡方法及装置 |
CN109120722B (zh) * | 2018-10-24 | 2021-12-07 | 北京计算机技术及应用研究所 | 一种基于反向代理模式的访问控制方法 |
-
2021
- 2021-06-03 CN CN202110620450.0A patent/CN113434793B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113434793A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220086254A1 (en) | Content delivery network (CDN) cold content handling | |
US11134134B2 (en) | Routing for origin-facing points of presence | |
US10798203B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
US10904205B2 (en) | Content delivery network optimization system | |
US11032387B2 (en) | Handling of content in a content delivery network | |
US10880390B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
US7558854B2 (en) | Access relaying apparatus | |
KR101567385B1 (ko) | 콘텐츠 중심 네트워크에 대한 협동 캐싱 방법 | |
EP2266043B1 (en) | Cache optimzation | |
US5864854A (en) | System and method for maintaining a shared cache look-up table | |
US20070124309A1 (en) | Content retrieval system | |
US20100023693A1 (en) | Method and system for tiered distribution in a content delivery network | |
WO2001045349A2 (en) | Scalable domain name system with persistence and load balancing | |
EP1308853A1 (en) | Data caching | |
US20190007522A1 (en) | Method of optimizing traffic in an isp network | |
KR100375121B1 (ko) | 웹 콘텐츠 전송 제어 방법 | |
CN113434793B (zh) | 一种基于web反向代理的平滑过渡方法和系统 | |
US8849970B1 (en) | Transparent redirection of clients to a surrogate payload server through the use of a proxy location server | |
CN109873855A (zh) | 一种基于区块链网络的资源获取方法和系统 | |
CN114268635A (zh) | 一种p2p流媒体文件定位与节点选择的系统及其方法 | |
CN113901335A (zh) | 技术资源动态感知与路由方法 | |
Hasan et al. | An Efficient Content Retrieval Mechanism based on Clustering in the CCN environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Yang Xiao Inventor after: Zhang Yuming Inventor after: Guo Siqi Inventor after: Yang Chengfei Inventor after: Cluster Inventor before: Guo Siqi Inventor before: Zhang Yuming Inventor before: Yang Chengfei Inventor before: Cluster |
|
GR01 | Patent grant | ||
GR01 | Patent grant |