在Java Web程序中低侵入式使用CDN加速服务的方法以及系统技术方案

技术编号:25834429 阅读:29 留言:0更新日期:2020-10-02 14:15
本发明专利技术涉及一种在Java Web程序中低侵入式使用CDN加速服务的方法以及系统。该方法包括如下步骤:1)Java Web收到用户端发送的访问请求后,判断系统配置开关是否开启CDN,如果开启CDN,则进入步骤2),否则返回原始页面;2)在Java Web应用程序中配置过滤器,使目标页面使用CDN服务;其中,在过滤器中检测是否有资源文件的链接,如果有则将该资源文件的链接替换至CDN服务链接。本发明专利技术极大简化了接入CDN服务的过程,在实际使用中可灵活判断开关CDN的接入、替换CDN服务域名而不需要改写全部资源链接。

【技术实现步骤摘要】
在JavaWeb程序中低侵入式使用CDN加速服务的方法以及系统
本专利技术属于CDN加速服务领域,尤其涉及一种在JavaWeb程序中低侵入式使用CDN加速服务的方法以及系统。
技术介绍
在网络中,当一个网页接收到访问请求时,通常会通过CDN向访问者提供加速路径,以便用户能够通过较短的路径进行访问,其中CDN(ContentDeliveryNetwork,内容分发网络)通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络。CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。当前IT行业中,大部分高并发场景下需要依赖CDN网络来加速用户端的访问,在流行的JavaWeb程序中如何快速接入CDN服务是决定用户何时才能获得最佳体验的因素之一。现有的一种技术是对所有JavaWeb程序中页面的资源链接替换成CDN服务链接。这种病技术需要修改所有页面资源链接,从而导致修改效率低、易出错、不易维护等缺点。现有技术中,JavaWeb程序中页面的资源链接替换成CDN服务链接时,需要修改所有页面资源链接,修改效率低、易出错、不易维护。
技术实现思路
本技术方案的目的在于采用低侵入式方式提供一个全局开关来实现集成CDN服务。本专利技术的第一方面在于提供一种在JavaWeb程序中低侵入式使用CDN加速服务的方法,包括如下步骤:1)JavaWeb收到用户端发送的访问请求后,判断系统配置开关是否开启CDN,如果开启CDN,则进入步骤2),否则返回原始页面;2)在JavaWeb应用程序中配置过滤器,使目标页面使用CDN服务;其中,在过滤器中检测是否有资源文件的链接,如果有则将该资源文件的链接替换至CDN服务链接。本专利技术的第二方面在于提供一种一种在JavaWeb程序中低侵入式使用CDN加速服务的系统,包括:接收单元,其用于接收用户端的访问请求;过滤单元,其用于过滤掉不期望的请求,识别出期望使用CDN服务的目标页面;替换单元,其用于将目标页面的链接替换至CDN服务链接。本专利技术通过采用在去除框架或者模块时代码的改动较小的低侵入式方式提供一个判断CDN是否开启的全局开关来集成CDN服务。本专利技术极大简化了接入CDN服务的过程,在实际使用中可灵活判断开关CDN的接入、替换CDN服务域名而不需要改写全部资源链接。附图说明参照附图阅读本专利技术的多种实施方式之后,本领域技术人员更容易理解本专利技术的方法和系统的目的和特征,附图说明如下:图1是本专利技术方法的一个实施例的流程图。具体实施方式下文结合附图描述本专利技术提供的方法或系统的实施方式。通篇附图中采用相似的附图标记描述相似或相同的部件。这里披露的不同特征可以单独使用,或者彼此改变组合,没有规定将本专利技术限定于文中描述的特定组合。由此,所描述的实施方式不用于限定权利要求的范围。说明中可能采用短语“在一实施方式中”、“在实施方式中”、“在一些实施方式中”,或者“在其他实施方式中”,分别可以各指根据本文披露的一个或多个相同或者不同的实施方式。还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的物品或者设备中还存在另外的相同要素。CDN是一种新型网络构建方式,它是为了能在传统的IP网发布宽带丰富媒体而特别优化的网络覆盖层。从广义的角度,CDN代表了一种基于质量与秩序的网络服务模式。简单地说,CDN是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理4个要件,而内容管理和全局的网络流量管理(TrafficManagement)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保了内容以一种极为高效的方式为用户的请求提供服务。总的来说,内容服务基于缓存服务器,也称作代理缓存(Surrogate)实现。代理缓存位于网络的边缘,距用户仅有“一跳”(SingleHop)之遥。同时,代理缓存是内容提供商源服务器(通常位于CDN服务提供商的数据中心)的一个透明镜像。这样的架构使得CDN服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用户是不能容忍请求响应时间有任何延迟的。CDN的基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。本专利技术提出的在JavaWeb程序中低侵入式使用CDN加速服务的方法。图1是本专利技术一个实施例的流程图。如图1所示,本专利技术的CDN加速服务的方法包括如下步骤:1)JavaWeb收到用户端发送的访问请求后,判断系统配置开关是否开启CDN,如果开启CDN,则进入步骤2),否则返回原始页面;2)在JavaWeb应用程序中配置过滤器,使目标页面使用CDN服务;其中,在过滤器中检测是否有资源文件的链接,如果有则将该资源文件的链接替换至CDN服务链接。其中访问请求可以是用户的网页请求、视频请求、音频请求等。现在web项目很注重优化用户体验,用户体验很重要的一方面是页面的响应速度,而现在很多是依赖CDN网络来加速用户端的访问。本专利技术提供了一个判断CDN是否开启的全局开关就可以集成CDN服务。配置过滤器是提供全局开关的基础。如果没有过滤器,则没法实现低侵入式方式使用CDN加速服务,只能是高侵入式使用CDN加速服务,代码改动大。在本专利技术的方法中,步骤1)可以进一步包括:检测CDN服务地址是否不为空且以http开头,如不满足则将访问请求转至原始页面,如满足则进入步骤2)。这里的判断逻辑相当于一个CDN判断开关,可灵活判断开关CDN的接入、替换CDN服务域名而不需要改写全部资源链接。在本专利技术的方法中,过滤器可以配置为使目标页面为包含第一字符串为开头的页面。目标页面可以是客户希望将其替换为CDN服务的页面。第一字符串指的是访问地址前缀。因为一般提供的网页中大多是带一些以当前访问地址前缀为开头的资源,算是本站资源。此处将目标页面设置为包含第一字符串为开头的页面能够过滤掉不必要使用CDN服务的页面,大大提高CDN服务的效率。在本专利技术本文档来自技高网...

【技术保护点】
1.一种在Java Web程序中低侵入式使用CDN加速服务的方法,包括如下步骤:/n1)Java Web收到用户端发送的访问请求后,判断系统配置开关是否开启CDN,如果开启CDN,则进入步骤2),否则返回原始页面;/n2)在Java Web应用程序中配置过滤器,使目标页面使用CDN服务;/n其中,在过滤器中检测是否有资源文件的链接,如果有则将该资源文件的链接替换至CDN服务链接。/n

【技术特征摘要】
1.一种在JavaWeb程序中低侵入式使用CDN加速服务的方法,包括如下步骤:
1)JavaWeb收到用户端发送的访问请求后,判断系统配置开关是否开启CDN,如果开启CDN,则进入步骤2),否则返回原始页面;
2)在JavaWeb应用程序中配置过滤器,使目标页面使用CDN服务;
其中,在过滤器中检测是否有资源文件的链接,如果有则将该资源文件的链接替换至CDN服务链接。


2.根据权利要求1所述的方法,其特征在于,步骤1)进一步包括:检测CDN服务地址是否不为空且以http开头,如不满足则将访问请求转至原始页面,如满足则进入步骤2)。


3.根据权利要求1所述的方法,其特征在于,所述过滤器配置为使所述目标页面为包含第一字符串为开头的页面。


4.根据权利要求3所述的方法,其特征在于,所述过滤器根据用户请求获取媒体类型,判断类型是否为HTM...

【专利技术属性】
技术研发人员:杨仕方
申请(专利权)人:北京慧博科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1