页面压缩方法和系统的利记博彩app

文档序号:6399913阅读:262来源:国知局
专利名称:页面压缩方法和系统的利记博彩app
技术领域
本发明涉及计算机网络领域,尤其涉及页面压缩方法和系统。
背景技术
计算机网络中传输的网络页面文件和脚本文件有很多冗余的数据,例如无效的空格和注释数据,去掉这些数据不会影响页面正常显示。同时,通过压缩页面,可以提高页面的下载速度,从而更快地在浏览器中打开页面,让用户得到更好的上网体验。现有技术的页面压缩方法是在网站服务器上将页面进行压缩,然后提供给用户进行浏览。这种方法其有如下缺点:页面压缩之后的页面没有清晰的格式,很难进行维护;如果既保存未压缩的原始格式的页面文件,又保存压缩格式的页面文件,那么容易存在版本不一致的情况,也很难维护。

发明内容
本发明所要解决的技术问题是克服现有技术的上述缺点,提供一种页面压缩方法和系统。本发明不需要在网站服务器上故任何修改,页面文件可以保持原有格式,当页面数据流经本发明的页面压缩系统的web代理系统时页面数据被自动压缩。根据本发明的第一方面提供了一种页面压缩方法,包括步骤:通过与用户浏览器和网站服务器耦合的web代理系统代理用户浏览器的web请求,从网站服务器获得未压缩页面;在web代理系统处压缩所述未压缩页面;通过web代理系统向用户浏览器提供压缩之后的压缩页面。可选地,所述web代理系统代理用户浏览器的web清求、从网站服务器获得未压缩页面的步骤包括步骤:在接收到来自用户浏览器的访问页面请求之后,web代理系统根据用户浏览器送来的请求向将要访问页面的网站服务器发出访问页面请求,网站服务器根据web代理系统的请求将所请求访问的未压缩页面送到web代理系统。可选地,在web代理系统处压缩所述未压缩页面的步骤包括步骤:第一步骤S310:将从网站服务器获得的未压缩页面文件缓存在缓存器中;第二步骤S320:缓存完成之后,生成页面文件被写入的inotify消息;第三步骤S330:在页面压缩控制器监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩,如果需要对缓存的未压缩页面文件进行压缩,则执行如下第四步骤S340 ;如果不需要对缓存的未压缩页面进行压缩,则执行所述通过web代理系统向用户浏览器提供压缩之后的压缩页面的步骤;第四步骤S340:页面压缩控制器创建压缩任务消息,并将此消息传递给页面压缩引擎;第五步骤S350:页面压缩控制器将缓存的未压缩页面文件放入压缩文件目录树,并将该缓存的未压缩页面文件的文件路径加入压缩任务队列;第六步骤S360:页面压缩引擎获取压缩任务队列文件并进行压缩处理;第七步骤S370:用压缩之后的页面文件覆盖已缓存的未压缩页面文件,产生文件被覆盖的inotify消息。通过web代理系统向用户浏览器提供压缩之后的压缩页面的步骤包括从缓存器中读出压缩之后的页面文件并向用户浏览器提供压缩之后的页面文件。可选地,监控缓存的未压缩页面文件以判断缓存的未压缩页面文件是否为新的页面文件,如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件不是新的页面文件,不需要对缓存的未压缩页面文件进行压缩;所述新的页面文件包括创建页面文件或更新页面文件。可选地,通过未压缩页面文件的修改时间标记来判断缓存的未压缩页面文件是否为新的页面文件;如果缓存的未压缩页面文件的修改时间标记为新的时间标记,则判断缓存的未压缩页面文件为新的页面文件,如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则判断缓存的未压缩页面文件不是新的页面文件。可选地,在缓存未压缩页面文件时记录未压缩页面文件的修改时间标记;在用压缩之后的页面文件替换未压缩页面文件之后,压缩之后的页面文件的修改时间标记与未压缩页面文件的修改时间标记相同。可选地,所述进行压缩处理进一步包括步骤:解析所述新的页面文件的文件格式,删除页面数据中不影响页面正常显示的冗余的数据,并优化数据格式;所述冗余的数据包括无效的空格和/或注释。可选地,所述进行压缩处理进一步包括使用多线程对文件进行压缩。可选地,在用压缩之后的页面文件覆盖已缓存的未压缩页面文件之后,将缓存的压缩页面文件放入已经进行压缩的文件目录树。根据本发明的第二方面提供了一种页面压缩系统,页面压缩系统包括web代理系统,所述web代理系统分别与用户浏览器和网站服务器耦合或相连,web代理系统包括:web代理装置,代理用户浏览器的web请求,从网站服务器(130)获得页面;页面压缩装置,对所述页面进行压缩;其中web代理装置(122)还用于向用户浏览器提供压缩之后的页面。可选地,所述页面压缩装置包括缓存器、页面压缩控制器和页面压缩引擎,所述页面为未压缩页面。缓存器用于缓存从网站服务器(130)获得的未压缩页面文件或由页面压缩引擎压缩之后的页面文件。页面压缩控制器用于监控缓存的未压缩页面文件以判断是否需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩,页面压缩控制器创建压缩任务消息、将压缩任务消息传递给页面压缩引擎,以及将压缩任务放到压缩任务队列中;如果缓存的未压缩页面文件不是新的页面文件,则不需要对缓存的未压缩页面文件进行压缩,页面压缩控制器不创建压缩任务消息;所述新的页面文件包括创建页面文件或更新页面文件。页面压缩引擎用于在收到压缩任务消息之后,获取压缩任务队列文件并压缩所述新的页面文件并用压缩之后的页面文件覆盖已缓存的新的页面文件。在用压缩之后的页面文件覆盖已缓存的新的页面文件后,web代理装置从缓存器读出所述压缩之后的页面文件并向用户浏览器提供压缩之后的页面文件;如果页面压缩控制器判断缓存的未压缩页面文件不是新的页面文件,则页面压缩引擎不对缓存的未压缩页面文件进行压缩,Web代理装置直接从缓存器中读出与该缓存的未压缩页面文件对应的压缩之后的页面文件并向用户浏览器提供压缩之后的页面文件。可选地,页面压缩控制器通过缓存的未压缩页面文件的修改时间标记判断缓存的未压缩页面文件是否为新的页面文件;如果页面压缩控制器判断缓存的未压缩页面文件的修改时间标记为新的时间标记,则缓存的未压缩页面文件是新的页面文件;如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则缓存的未压缩页面文件不是新的页面文件;其中在缓存未压缩页面文件时记录未压缩页面文件的修改时间标记,用压缩之后的页面文件替换未压缩页面文件之后,压缩之后的页面文件的修改时间标记与未压缩页面文件的修改时间标记相同。可选地,所述页面压缩引擎包括:用于解析所述新的页面文件的文件格式、删除页面数据中不影响页面正常显示的冗余的数据并优化数据格式的装置,所述冗余的数据包括无效的空格和/或注释。可选地,web代理系统使用采用文件系统的变化通知inotify,在缓存从网站服务器获得的页面文件之后,生成页面文件被写入的inotify消息;在压缩文件已覆盖缓存的未压缩页面文件之后产生文件被覆盖的inotify消息;页面压缩控制器在监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩。可选地,采用gzip压缩协议或deflate压缩协议进行压缩。可选地,从网站服务器(130)获得的页面至少包括html页面、调用js文件的页面、调用CSS文件的页面中的一种或多种。本发明具有如下优点:本发明在web代理系统上对页面的数据流进行压缩,当用户访问页面时页面数据自动在web代理系统处被压缩并缓存,不需要原站做任何修改;支持对html、js、css页面文件进行压缩,支持gzip压缩和deflate压缩;通过缓存机制保存压缩数据,确保对同一个页面不重复压缩;通过压缩页面,可以提高页面的下载速度,从而更快地在浏览器中打开页面,让用户得到更好的上网体验


应说明的是,下面描述中的附图仅示意地示出了一些实施例,并没有包括所有可能的实施例。图1示出了根据本发明一个实施例的网络通信系统100的示意图;图2示出了根据本发明一个实施例的web代理系统120的示意性结构图;图3示出了根据本发明一个实施例的页面压缩的示意图;图4示出了根据本发明一个实施例的页面压缩方法的示意流程图;图5示出了根据本发明一个实施例的对页面进行压缩的工作时序图;图6示出了根据本发明一个实施例的压缩页面的示意流程图。
具体实施例方式下面将结合附图详细描述本发明的示例性实施例的技术方案。显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。所描述的实施例仅用于图示说明,而不是对本发明范围的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1示出了根据本发明一个实施例的网络通信系统100的示意图,在该网络通信系统100中示出了根据本发明一个实施例的web代理系统120在网络中的连接关系。如图1所示,网络通信系统100包括用户浏览器110、web代理系统120和网站服务器130,web代理系统120设置在用户浏览器110和网站服务器130之间并分别与户浏览器110和网站服务器130耦合或相连。用户浏览器110通过web代理系统120向网站服务器130请求页面,即web代理系统120代理用户浏览器110的web请求。当web代理系统120从网站服务器130获得页面之后,其并不直接将页面返回给用户浏览器110,而是向用户浏览器110提供压缩之后的页面文件。在web代理系统120处对页面进行压缩,去掉诸如无效的空格和注释之类的冗余数据,即页面的压缩是在web代理系统120处进行的。在完成了页面压缩之后,web代理系统120将压缩之后的页面文件提供给用户浏览器110。虽然,为了简洁,图1中只示出了由一个用户浏览器110、一个web代理系统120和一个网站服务器130构成的网络通信系统100,但是,本发明的网络通信系统可以包括多个用户浏览器110、多个web代理系统120和多个网站服务器130。 在现有技术中,用户计算机通常直接向网站服务器请求页面。即使系统具有页面压缩功能,也只是在网站服务器处对页面进行压缩,然后直接将压缩之后的页面文件提供给用户计算机的浏览器,而不引入“中介”系统或过程。在网站服务器上对页面进行压缩,得到的页面往往没有请晰的格式,很难进行维护。如果既保存未压缩的原始格式的页面文件,又保存压缩格式的页面文件,那么容易存在版本不一致的情况,也很难维护。而采用本发明的方法,不需要在网站服务器130上对页面做任何修改或压缩,页面可以保持原有格式,当其流经web代理系统120时被自动压缩。在本发明中,可以对来自网站服务器130的各种页面进行压缩,例如html页面、调用js文件的页面、调用CSS文件的页面,等等。在本发明中,对页面进行压缩例如包括删除不影响页面正常显示的冗余的数据,所述冗余的数据例如包括无效的空格和/或注释。本发明的压缩方式不仅包括删除页面中的注释和/或无效空格这样的简单js代码或CSS代码压缩,还包括采用gzip压缩协议或deflate压缩协议的较复杂的压缩。图2是本发明一个示例实施例的web代理系统120的结构图。如图2所示,web代理系统120包括web代理装置122和页面压缩装置126。Web代理装置122与用户浏览器110和网站服务器130通信。web代理装置122代理用户浏览器的web请求,从网站服务器130获得页面。例如,web代理装置122在收到来自用户浏览器的访问页面请求之后,根据用户浏览器送来的请求向将要访问页面的网站服务器130发出访问页面请求,从网站服务器130获得页面。换言之,web代理装置122先从用户浏览器110获知用户的web请求,然后代替用户浏览器110向网站服务器130请求页面并从网站服务器130获得页面。应当注意的是,在本发明中,网站服务器130不需要对页面数据做任何压缩和修改,web代理装置122获得的页面保持原有格式。页面压缩装置126用于在所述web代理系统120处压缩所述未压缩页面。根据本发明的一个示例实施例,如图3所示,页面压缩装置126包括缓存器122、页面压缩控制器127和页面压缩引擎128。缓存器122用于缓存从网站服务器(130)获得的页面文件或由页面压缩引擎压缩之后的页面文件。作为一个示例实施例,本发明采用文件系统的变化通知机制inotify。例如,在缓存从网站服务器(130)获得的页面文件之后,生成页面文件被写入的inotify消息;在压缩文件已覆盖缓存的未压缩页面文件之后产生文件被覆盖的inotify消息。页面压缩控制器127用于监控缓存的未压缩页面文件以判断是否需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩,页面压缩控制器创建压缩任务消息,将压缩任务消息传递给页面压缩引擎,以及将压缩任务放到压缩任务队列中;如果缓存的未压缩页面文件不是新的页面文件,则不需要对缓存的未压缩页面文件进行压缩,页面压缩控制器不创建压缩任务消息,在此情况下,页面压缩引擎不对页面文件进行压缩,Web代理装置直接从缓存器中读出与该缓存的未压缩页面文件对应的压缩之后的页面文件并向用户浏览器提供压缩之后的页面文件。新的页面文件包括创建页面文件或更新页面文件。页面压缩控制器127可以在监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩。页面压缩控制器127可以通过缓存的未压缩页面文件的修改时间标记判断缓存的未压缩页面文件是否为新的页面文件。根据本发明的一个实施例,在缓存未压缩页面文件时记录未压缩页面文件的修改时间标记,其中,在压缩所述未压缩页面文件之后,用压缩之后的页面文件替换未压缩页面文件,但压缩之后的页面文件的修改时间标记与未压缩页面文件的修改时间标记相同。如果页面压缩控制器判断缓存的未压缩页面文件的修改时间标记为新的时间标记,则缓存的未压缩页面文件是新的页面文件,如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则缓存的未压缩页面文件不是新的页面文件。页面压缩引擎128在收到压缩任务消息后压缩所述新的页面文件并用压缩之后的页面文件更新缓存器。作为本发明的一个实施例,页面压缩引擎包括:用于解析所述新的页面文件的文件格式、删除页面数据中不影响页面正常显示的冗余的数据并优化数据格式的装置。由页面压缩引擎进行的压缩可以是现有技术中在网站服务器处完成的各种压缩,包括gzip压缩、deflate压缩以及删除注释和/或无效空格的js代码或css代码压缩,等等。当压缩完毕,页面压缩引擎126将压缩之后的页面文件写入缓存器,即用压缩之后的页面文件更新缓存器,在缓存器中缓存了压缩之后的页面文件。根据本发明的一个实施例,在用压缩之后的页面文件替换未压缩页面文件后,web代理装置122从缓存器读出压缩之后的页面文件并向用户浏览器110提供压缩之后的页面。根据本发明的实施例,Web代理装置122获得页面后,通过与之耦合的缓存器对页面文件进行缓存。缓存器还与页面压缩控制器耦合,当页面压缩控制器监测到在缓存器处缓存了新的页面时小页面压缩控制器创建压缩任务消息并向页面压缩引擎发送压缩任务消息,页面压缩引擎在收到压缩任务消息后对该新的页面文件进行压缩。图4示出了根据本发明一个实施例的页面压缩方法的示意流程图。在步骤S200,通过web代理系统120,代理用户浏览器的web请求,从网站服务器130获得页面。在步骤S300,在web代理系统120处压缩从网站服务器130获得的页面。在步骤S400,通过web代理系统120向用户浏览器110提供压缩之后的页面。步骤S200包括步骤:在接收到来自用户浏览器的访问页面请求之后,web代理系统120根据用户浏览器送来的请求向网站服务器发出访问页面请求,网站服务器根据web代理系统120的请求将所请求访问的页面送到web代理系统120。可选地,根据本发明一个实施例的页面压缩方法还可以包括缓存步骤,即在所述web代理系统120处缓存压缩之后的页面文件。通过缓存机制保存压缩页面,可以确保对同一个页面不重复压缩。图6示出了在web代理系统120处压缩页面的示例方法。作为示例实施例,图6示出了所述步骤S300包括的子步骤以及所述步骤S400。如图6所示,所述在web代理系统120处压缩页面的步骤S300包括:步骤S310:将从网站服务器130获得的未压缩页面文件缓存在缓存器中;步骤S320:缓存完成之后,生成缓存变更消息,例如生成页面文件被写入的inotify 消息。步骤S330:在页面压缩控制器监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩,如果需要对缓存的未压缩页面文件进行压缩,则执行如下步骤S340,如果不需要对缓存的未压缩页面进行压缩,则执行所述步骤S400 ;步骤S340:页面压缩控制器创建压缩任务消息,并将此消息传递给页面压缩引擎;步骤S350:页面压缩控制器将缓存的未压缩页面文件放入压缩文件目录树,并将该缓存的未压缩页面文件的文件路径加入压缩任务队列。由于可能有大量的缓存页面要进行压缩,所以将压缩任务放到压缩任务队列中,任务队列可以保证任务依次执行。步骤S360:页面压缩引擎128获取压缩任务队列文件并进行压缩处理,例如可以使用多线程对文件进行压缩。步骤S370:用压缩之后的页面文件覆盖已缓存的未压缩页面文件,产生文件被覆盖的inotify消息。步骤S330包括步骤:监控缓存的未压缩页面文件以判断缓存的未压缩页面文件是否为新的页面文件,如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件不是新的页面文件,不需要对缓存的未压缩页面文件进行压缩。作为本发明的一个示例实施例,在缓存未压缩页面文件时记录未压缩页面文件的修改时间标记,在压缩所述未压缩页面文件之后,用压缩之后的页面文件替换未压缩页面文件,但压缩之后的页面文件的修改时间标记与其未压缩页面文件的修改时间标记相同。页面压缩控制器通过未压缩页面文件的修改时间标记判断缓存的未压缩页面文件是否为新的页面文件;如果缓存的未压缩页面文件的修改时间标记为新的时间标记,则判断缓存的未压缩页面文件为新的页面文件,如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则判断缓存的未压缩页面文件不是新的页面文件。根据本发明的一个实施例,在步骤S360,所述进行压缩处理进一步包括步骤:解析所述新的页面文件的文件格式,删除页面数据中不影响页面正常显示的冗余的数据,并优化数据格式;所述冗余的数据包括无效的空格和/或注释。可选择地,在步骤S370之后,将缓存的压缩页面文件放入已经进行压缩的文件目录树。所述步骤400包括从缓存器中读出压缩之后的页面文件并向用户浏览器110提供压缩之后的页面文件。应当注意的是,在本发明的web代理系统的各个部件中,根据其要实现的功能而对其中的部件进行了逻辑划分,但是,本发明不受限于此,可以根据需要对各个部件进行重新划分或者组合,例如,可以将一些部件组合为单个部件,或者可以将一些部件进一步分解为更多的子部件。位于部件之前的术语“一”或“一个”不排除存在多个这样的部件。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器、数字信号处理器(DSP)或者现场可编程逻辑门阵列(FPGA)等来实现根据本发明实施例的web代理系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的系统或者装置程序(例如,计算机程序和计算机程序产品)。还应该注意的是,以上对本发明的实施例的描述仅用于说明本发明的技术方案,而不是对本发明范围的限制,本发明并不限于所公开的这些实施例,本领域的技术人员可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,而这些修改或替换都应落入本发明的保护范围。
权利要求
1.一种页面压缩方法,包括步骤: 通过与用户浏览器(Iio)和网站服务器(130)耦合的web代理系统(120)代理用户浏览器的web请求,从网站服务器(130)获得未压缩页面; 在web代理系统(120)处压缩所述未压缩页面; 通过web代理系统(120)向用户浏览器(110)提供压缩之后的压缩页面。
2.根据权利要求1所述的页面压缩方法,其特征在于,所述web代理系统(120)代理用户浏览器的web请求,从网站服务器(130)获得未压缩页面的步骤包括步骤:在接收到来自用户浏览器的访问页面请求之后,web代理系统(120)根据用户浏览器送来的请求向将要访问页面的网站服务器发出访问页面请求,网站服务器根据web代理系统(120)的请求将所请求访问的未压缩页面送到web代理系统(120)。
3.根据权利要求1所述的页面压缩方法,其特征在于在web代理系统(120)处压缩所述未压缩页面的步骤包括步骤: 第一步骤(S310):将从网站服务器(130)获得的未压缩页面文件缓存在缓存器中; 第二步骤(S320):缓存完成之后,生成页面文件被写入的inotify消息; 第三步骤(S330):在页面压缩控制器监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩,如果需要对缓存的未压缩页面文件进行压缩,则执行如下第四步骤(S340);如果不需要对缓存的未压缩页面进行压缩,则执行所述通过web代理系统(120)向用户浏览器(110)提供压缩之后的压缩页面的步骤; 第四步骤(S340):页面压缩控制器创建压缩任务消息,并将此消息传递给页面压缩引擎; 第五步骤(S350):页面压缩控制器将缓存的未压缩页面文件放入压缩文件目录树,并将该缓存的未压缩页面文件的文件路径加入压缩任务队列; 第六步骤(S360):页面压缩引擎获取压缩任务队列文件并进行压缩处理; 第七步骤(S370):用压缩之后的页面文件覆盖已缓存的未压缩页面文件,产生文件被覆盖的inotify消息; 其特征还在于:所述通过web代理系统(120)向用户浏览器(110)提供压缩之后的压缩页面的步骤包括从缓存器中读出压缩之后的页面文件并向用户浏览器(110)提供压缩之后的页面文件。
4.根据权利要求3所述的页面压缩方法,其特征在于:第三步骤(S330)的判断是否需要对缓存的未压缩页面文件进行压缩包括步骤:监控缓存的未压缩页面文件以判断缓存的未压缩页面文件是否为新的页面文件,如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件不是新的页面文件,不需要对缓存的未压缩页面文件进行压缩;所述新的页面文件包括创建页面文件或更新页面文件。
5.根据权利要求4所述的页面压缩方法,其特征在于:所述判断缓存的未压缩页面文件是否为新的页面文件包括通过未压缩页面文件的修改时间标记来判断缓存的未压缩页面文件是否为新的页面文件;如果缓存的未压缩页面文件的修改时间标记为新的时间标记,则判断缓存的未压缩页面文件为新的页面文件,如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则判断缓存的未压缩页面文件不是新的页面文件。
6.根据权利要求5所述的页面压缩方法,其特征在于:在缓存未压缩页而文件时记录未压缩页面文件的修改时间标记;在用压缩之后的页面文件替换未压缩页面文件之后,压缩之后的页面文件的修改时间标记与未压缩页面文件的修改时间标记相同。
7.根据权利要求3-6中任一权利要求所述的页面压缩方法,其特征在于:所述第六步骤(S360)的进行压缩处理进一步包括步骤:解析所述新的页面文件的文件格式,删除页面数据中不影响页面正常显示的冗余的数据,并优化数据格式;所述冗余的数据包括无效的空格和/或注释。
8.根据权利要求3-6中任一权利要求所述的页面压缩方法,其特征在于:所述第六步骤(S360)的进行压缩处理进一步包括步骤包括使用多线程对文件进行压缩。
9.根据权利要求3-6中任一权利要求所述的页面压缩方法,其特征在于:在第七步骤(S370)之后,将缓存的压缩页面文件放入已经进行压缩的文件目录树。
10.一种页面压缩系统,其特征在于包括web代理系统(120),所述web代理系统(120)分别与用户浏览器(110)和网站服务器(130)耦合或相连,web代理系统(120)包括: web代理装置(122),代理用户浏览器的web请求,从网站服务器(130)获得页面; 页面压缩装置(126),对所述页面进行压缩; 其特征还在于web代理装置(122)还用于向用户浏览器(110)提供压缩之后的页面。
11.根据权利要求10所述的页面压缩系统,其特征在于所述页面压缩装置(126)包括缓存器(124)、页面压缩控制器(127)和页面压缩引擎(128),所述页面为未压缩页面,其中: 缓存器(124),用于缓存从网站服务器(130)获得的未压缩页面文件或由页面压缩引擎压缩之后的页面文件; 页面压缩控制器,用于监控缓存的未压缩页面文件以判断是否需要对缓存的未压缩页面文件进行压缩;如果缓存的未压缩页面文件是新的页面文件,则需要对缓存的未压缩页面文件进行压缩,页面压缩控制器创建压缩任务消息、将压缩任务消息传递给页面压缩引擎,以及将压缩任务放到压缩任务队列中;如果缓存的未压缩页面文件不是新的页面文件,则不需要对缓存的未压缩页面文件进行压缩,页面压缩控制器不创建压缩任务消息;所述新的页面文件包括创建页面文件或更新页面文件; 页面压缩引擎用于在收到压缩任务消息之后,获取压缩任务队列文件并压缩所述新的页面文件并用压缩之后的页面文件覆盖已缓存的新的页面文件; 其特征还在于在用压缩之后的页面文件覆盖已缓存的新的页面文件后,web代理装置(122)从缓存器读出所述压缩之后的页面文件并向用户浏览器(110)提供压缩之后的页面文件;如果页面压缩控制器判断缓存的未压缩页面文件不是新的页面文件,页面压缩引擎不对缓存的未压缩页面文件进行压缩,Web代理装置直接从缓存器中读出与该缓存的未压缩页面文件对应的压缩之后的页面文件并向用户浏览器提供压缩之后的页面文件。
12.根据权利要求11所述的页面压缩系统,其特征在于: 页面压缩控制器(127)通过缓存的未压缩页面文件的修改时间标记判断缓存的未压缩页面文件是否为新的页面文件;如果页面压缩控制器判断缓存的未压缩页面文件的修改时间标记为新的时间标记,则缓存的未压缩页面文件是新的页面文件;如果缓存的未压缩页面文件的修改时间标记不是新的时间标记,则缓存的未压缩页面文件不是新的页面文件;其中在缓存未压缩页面文件时记录未压缩页面文件的修改时间标记,用压缩之后的页面文件替换未压缩页面文件之后,压缩之后的页面文件的修改时间标记与未压缩页面文件的修改时间标记相同。
13.根据权利要求11所述的页面压缩系统,其特征在于: 所述页面压缩引擎包括:用于解析所述新的页面文件的文件格式、删除页面数据中不影响页面正常显示的冗余的数据并优化数据格式的装置,所述冗余的数据包括无效的空格和/或注释。
14.根据权利要求10-13中任一权利要求所述的页面压缩系统,其特征在于:web代理系统(120)使用采用文件系统的变化通知inotify,在缓存从网站服务器(130)获得的页面文件之后,生成页面文件被写入的inotify消息;在压缩文件已覆盖缓存的未压缩页面文件之后产生文件被覆盖的inotify消息;页面压缩控制器127在监听到页面文件被写入的inotify消息之后,判断是否需要对缓存的未压缩页面文件进行压缩。
15.根据权利要求10-13中任一权利要求所述的页面压缩系统,其特征在于:采用gzip压缩协议或deflate压缩协议进行压缩。
16.根据权利要求10-13中任一权利要求所述的页面压缩系统,其特征在于:从网站服务器(130)获得的页面至少包括html页面、调用js文件的页面、调用css文件的页面中的一种或多种。
全文摘要
本发明提供了一种页面压缩方法和系统,该方法包括步骤通过web代理系统代理用户浏览器的web请求,从网站服务器获得未压缩页面;在web代理系统处压缩未压缩页面;向用户浏览器提供压缩之后的压缩页面。页面压缩系统包括web代理系统,web代理系统包括代理用户浏览器的web请求、从网站服务器获得页面并向用户浏览器提供压缩之后的页面的web代理装置,对页面进行压缩的页面压缩装置。本发明在web代理系统上对页面进行压缩,当用户访问页面时页面数据自动在web代理系统处被压缩并缓存,不需要原网站服务器做任何修改;通过压缩页面,可以提高页面的下载速度,从而更快地在浏览器中打开页面,让用户得到更好的上网体验。
文档编号G06F17/30GK103218395SQ20131006747
公开日2013年7月24日 申请日期2013年3月4日 优先权日2013年3月4日
发明者白宇, 冯景辉, 刘松涛 申请人:星云融创(北京)信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1