CN101257485A - web应用系统及方法 - Google Patents
web应用系统及方法 Download PDFInfo
- Publication number
- CN101257485A CN101257485A CNA2007100796942A CN200710079694A CN101257485A CN 101257485 A CN101257485 A CN 101257485A CN A2007100796942 A CNA2007100796942 A CN A2007100796942A CN 200710079694 A CN200710079694 A CN 200710079694A CN 101257485 A CN101257485 A CN 101257485A
- Authority
- CN
- China
- Prior art keywords
- data
- request
- web
- web server
- applications client
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种web应用系统及方法,所述系统包括:web服务器,安装有web应用客户端的浏览器,与web应用客户端和web服务器相连的请求代理单元,以及与请求代理单元相连的数据中心;数据中心用于在浏览器端缓存web应用客户端通过请求代理单元向web服务器请求的数据并对其进行集中管理;请求代理单元根据web应用客户端的请求从数据中心获取所需数据,或通过请求从web服务器获取所需数据,同时将web服务器返回的数据提供给数据中心,并将数据返回给web应用客户端。利用本发明,可以有效地减少客户端与服务器的交互次数,提高客户端的请求响应速度,并避免冗余数据,从而提高web应用的性能。
Description
技术领域
本发明涉及网络通信技术领域,具体涉及一种web应用系统及方法。
背景技术
作为一种资源的组织和表达机制,web已成为Internet(因特网)最主要的信息传送媒介,web系统在现在网络中广泛使用,完整的web结构包括:HTTP(超文本传输协议)协议,web服务器,web服务器接口,web应用程序接口,web浏览器。
web服务器是指驻留在因特网上某种类型计算机的程序。它是在网络中信息提供者基于HTTP的为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器,其主要功能是提供网上信息浏览服务。当web浏览器(客户端)连到web服务器并请求文件时,web服务器将处理该请求并将文件发送到该web浏览器上。
目前,随着web应用规模的增大和可交互性的增强,浏览器与服务器的交互次数和数据量大大增加了。而大量的数据交互成为了web应用最大的性能杀手。一方面,浏览器与服务器的频繁交互加重了服务器的负载,使得服务器的并发处理能力和响应速度降低;另一方面,大量的动态数据增加了客户端的内存负担,也增加了数据传输时间,导致用户的操作等待时间变长,用户体验变差。
在现有技术中,为了提高web应用的性能,通常在浏览器端采取以下方法来缓存动态数据:
1.使用浏览器内建的缓存机制,可以持久化少量静态数据,例如IE浏览器的Cookie。
如图1所示,客户端始终持有Cookie,并在每次与服务器进行交互的时候将Cookie发送到服务器。
2.在各页面上缓存数据,这是一种最自然和常用的方法,目前绝大部分应用都采取该方式。
如图2所示,客户端通过与服务器进行1和1′的交互,获得页面1的数据,并缓存其中的数据一、二和数据三;进行2和2′的交互,获得页面2的数据,并缓存其中的数据一、二。在需要刷新页面1时,直接从本地获取存储的数据一、二和数据三,而无需再向服务器请求这些数据。
以上方法都能够在一定程度上提高web应用的性能,但也有一定的局限性,主要体现在以下几方面:
1.web应用正朝着提供智能、动态的客户交互体验的方向发展,浏览器端的处理逻辑大大增加,浏览器中展示的往往是大量的动态数据。开启浏览器内建的缓存机制后,可以缓存这些动态数据,但是如果缓存全部或者大部分动态数据将会得不偿失:一方面,根据HTTP(超文本传输协议)协议规定,客户端的每次HTTP请求都会把Cookie的全部数据作为参数发送到服务器端,如果把动态数据缓存在了Cookie中,每次HTTP请求将会发送大量数据到服务器端,这将会大大加重网络负担,给web应用造成非常严重的性能问题;另一方面,Cookie数据是可以设置为持久化到本地文件系统中的,如果将动态数据保存在Cookie中,将会造成敏感数据泄漏的隐患,这在安全性要求较高的web应用中是不可接受的。因此,Cookie仅限于保存极少量动态数据或者静态数据。
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应用的性能。
附图说明
图1是现有技术中使用Cookie缓存数据的示意图;
图2是现有技术中在各页面上缓存数据的web应用方式示意图;
图3是本发明系统第一实施例的原理框图;
图4是本发明系统第二实施例的原理框图;
图5是图4所示实施例中无缓存数据情况下的查询工作流程图;
图6是图4所示实施例中缓存数据过期情况下的查询工作流程图;
图7是图4所示实施例中缓存数据有效情况下的查询工作流程图;
图8是图4所示实施例中在数据缓存单元中新增数据时的工作流程图;
图9是图4所示实施例中修改数据缓存单元中数据时的工作流程图;
图10是图4所示实施例中删除数据缓存单元中数据时的工作流程图;
图11是本发明方法的一个优选实施例的流程图。
具体实施方式
本发明实施例对客户端与服务器之间的交互数据进行缓存,对交互数据进行集中管理,将用户向服务器请求的数据统一缓存在一个独立的全局缓冲区,即数据缓存单元中,所有页面的数据从该数据缓存单元中取得,页面不缓存数据。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
参照图3,图3示出了本发明系统第一实施例的原理框图:
在该实施例中,本发明系统包括:web服务器21、安装有web应用客户端22的浏览器220,与web应用客户端22和web服务器21相连的请求代理单元31,以及与请求代理单元31相连的数据中心32。其中,数据中心32用于缓存web应用客户端22通过请求代理单元31与web服务器21的交互数据并对这些数据进行集中管理。
请求代理单元31根据web应用客户端22的请求从数据中心32获取或通过请求从web服务器21获取所需数据,并将这些数据返回给web应用客户端22。如果是从web服务器21获取到所需的数据,在将这些数据返回给web应用客户端22之前,还需要将这些数据拷贝一份提供给数据中心32,由数据中心32对这些数据进行缓存。请求代理单元31是用户使用数据中心32的入口,浏览器220中的web应用客户端22不再直接向web服务器21发起请求,而是使用请求代理单元31来请求数据。
为了实现数据中心32的功能,在该实施例中,数据中心32包括:数据缓存单元322和数据管理器321。
其中,数据缓存单元322用于存储web应用客户端22通过请求代理单元31向web服务器21请求的数据,数据缓存单元322可以是浏览器端的一块全局的独立的内存区域,该数据缓存单元可以是一个,也可以是多个。每个数据缓存单元有自己独立的逻辑空间,对于同一份数据,只存储一个副本。由数据管理器321对这些数据进行集中管理,因此不仅可以完全消除冗余数据,而且增强了对这些数据的可控性,从而可以提高web应用的性能。
数据管理器321用于将请求代理单元31通过请求从web服务器21获取的数据存储到数据缓存单元322,并对数据缓存单元322中存储的数据进行维护,比如根据所述请求代理单元31的请求,对数据缓存单元322中的数据进行增加、或修改、或删除等操作。数据管理器321还可以负责数据缓存单元的创建和销毁。
当用户需要获取新的数据时,由web应用客户端22向请求代理单元31发送请求。请求代理单元31收到该请求后,首先向数据管理器321查询该数据是否缓存,数据管理器321收到查询请求后,查询数据缓存单元322中是否有相应的数据。如果有,则从数据缓存单元322中取出该数据,然后交给请求代理单元31,由请求代理单元31将该数据返回给web应用客户端22。如果没有,则数据管理器321将查询结果通知请求代理单元31。请求代理单元31再向web服务器21请求数据,并将web服务器21返回的数据交给数据管理器321处理,数据管理器321将该数据存储到数据缓存单元322中,然后通知请求代理单元31将数据返回给web应用客户端22。
为了使数据缓存单元322中保存的数据有效,也就是说与web服务器端提供的数据能够一致,还可以按照一定的更新策略对这些数据进行更新。
参照图4所示本发明系统第二实施例的原理框图:
与图3所示第一实施例不同的是,在数据中心42中还设置有与数据管理器321相连的数据处理器323、与数据处理器323相连的策略单元324,数据处理器323用于根据数据管理器321的指令对数据缓存单元322中的数据进行处理。该处理至少包括以下过程:
在数据管理器321将数据写入数据缓存单元322前,对该数据设置更新策略(该更新策略可以是数据处理器默认的更新策略);和/或在数据管理器321从数据缓存单元322中获取客户端请求的数据后,根据该数据对应的更新策略检查该数据是否有效。
数据处理器323可以针对不同的数据更新策略对存入数据缓存单元的数据进行相应的处理。比如,可以采用以下任意一种默认的数据更新策略:
(1)定时更新,即设定一个时间间隔,自动定时从服务器更新数据。
(2)超时更新,即设定一个超时时长,同时给存入数据缓存单元的数据打上时间戳。当用户查询该数据时,检测数据的最后更新时间与当前时间的间隔是否超过了设定的时长,如果超时,则从服务器更新数据。
当然,还可以设定其他方式的更新策略。一般说来,一个web应用的数据更新策略只有一个。为了支持在一个应用中可以针对不同数据使用不同数据更新策略,增强其灵活性,还可以在数据中心42中设置策略单元324,与数据处理器323相连,以提供数据处理器323更新数据缓存单元322中的数据所需的更新策略。可以将多种不同的更新策略预先设置到策略单元324中,在不同的应用环境中由用户根据需要来选择。
基于上述实施例中的架构,下面进一步详细说明本发明系统对用户请求数据的处理过程。
参照图5,图5示出了无缓存数据情况下的查询工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出数据请求,该请求包含web服务器的URL(统一资源定位地址)和请求参数;例如查询一件商品价格的请求:服务器的URL为http://shop/queryprice.do、请求参数为itemId=123;
2.请求代理单元向数据管理器发出查询数据请求,该请求包含步骤1中请求的URL和请求参数信息;
3.数据管理器根据步骤2中的请求所包含的URL和请求参数向数据缓存单元查询数据;
4.数据管理器在数据缓存单元中未找到相应的数据;
5.数据管理器通知请求代理单元重新请求数据;
6.请求代理单元向web服务器请求数据,该请求与步骤1中的请求中包含的信息相同;
7.web服务器向与请求代理单元相连的数据管理器返回数据;
8.数据管理器将获取的数据发送给数据处理器;
9.数据处理器根据相应的策略处理数据,例如给数据加上时间戳;
10.数据处理器处理数据完毕后,将处理后的数据返回给数据管理器;
11.数据管理器将该数据放入数据缓存单元中;
12.数据管理器向请求代理单元返回从web服务器得到的数据,数据管理器的处理过程对外透明;
13.请求代理单元将得到的数据发送给web应用客户端。
参照图6,图6示出了缓存数据过期情况下的查询工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出数据请求,该请求包含web服务器的URL和请求参数;例如查询一件商品价格的请求:服务器的URL为http://shop/queryprice.do、请求参数为itemId=123;
2.请求代理单元向数据管理器发出查询数据请求,该请求包含上述步骤1中请求的URL和请求参数信息;
3.数据管理器根据步骤2中的请求所包含的URL和请求参数向数据缓存单元查询数据;
4.数据管理器在数据缓存单元中找到了相应的数据;
5.数据管理器通知数据处理器,根据该数据的更新策略检查该数据的有效性;
6.数据处理器向数据管理器返回检查结果:数据已过期;
7.数据管理器通知请求代理单元数据已过期,重新请求数据;
8.请求代理单元向web服务器请求数据,该请求与步骤1中的请求相同;
9.web服务器向数据管理器返回数据;
10.数据管理器将获取的数据发送给数据处理器;
11.数据处理器根据相应的策略处理数据,例如给数据加上时间戳;
12.数据处理器处理完毕,将处理后的数据返回给数据管理器;
13.数据管理器将该数据放入数据缓存单元中;
14.数据管理器向请求代理单元返回从web服务器得到的数据;
15.请求代理单元将得到的数据返回给web应用客户端。
参照图7,图7示出了缓存数据有效情况下的查询工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出数据请求,该请求包含web服务器的URL和请求参数;例如查询一件商品价格的请求:服务器的URL为http://shop/queryprice.do、请求参数为itemId=123;
2.请求代理单元向数据管理器发出查询数据请求,该请求包含上述步骤1中请求的URL和请求参数信息;
3.数据管理器根据步骤2中的请求所包含的URL和请求参数向数据缓存单元查询数据;
4.数据管理器在数据缓存单元中找到了相应的数据;
5.数据管理器通知数据处理器根据该数据的更新策略检查该数据的有效性;
6.数据处理器向数据管理器返回检查结果:数据有效;
7.数据管理器将查找到的数据返回给请求代理单元;
8.请求代理单元将得到的数据返回给web应用客户端。
参照图8,图8示出了在数据缓存单元中新增数据时的工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出新增数据请求,该请求包含web服务器的URL和请求参数;例如在商品库中新增一件商品的请求:服务器的URL为http://shop/additem.do、请求参数为name=显示器&color=black&price=1999;
2.请求代理单元向web服务器提交新增数据请求,该请求包含上述步骤1中请求的URL和请求参数信息;
3.web服务器根据该请求增加相应的数据,例如在数据库中插入一条显示器的商品记录,并在添加数据完成后,向请求代理单元返回处理完成消息;
4.请求代理单元收到该消息后,将相应的数据发送给数据管理器,通知数据管理器将数据加入到数据缓存单元中;
5.数据管理器调用数据处理器处理数据处理该数据;
6.数据处理器选择相应策略处理数据,例如给数据加上时间戳;
7.数据处理器处理完成后,向数据管理器返回处理完成消息;
8.数据管理器将处理后的数据存入数据缓存单元;
9.数据管理器向请求代理单元返回处理结果;
10.请求代理单元将处理结果通知web应用客户端,新增数据流程结束。
参照图9,图9示出了修改数据缓存单元中数据时的工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出修改数据请求,该请求包含web服务器的URL和请求参数;例如修改商品库中一件商品价格的请求:web服务器的URL为http://shop/modifyprice.do、请求参数为itemId=123&price=500。;
2.请求代理单元向web服务器提交修改数据请求,该请求包含上述步骤1中请求的URL和请求参数信息;
3.web服务器根据该请求修改相应的数据,例如在数据库中把itemId为123的商品价格修改为500,并在修改数据完成后,向请求代理单元返回处理完成消息;
4.请求代理单元收到该消息后,通知数据管理器修改数据缓存单元中的数据;该通知中包含步骤1中的URL和请求参数信息,数据管理器根据这些信息在数据缓存单元中查找到对应的缓存数据,并修改该缓存数据。例如根据URL=http://shop/modifyprice.do和itemId=123&price=500查找到缓存的itemId=123的商品数据,并将该商品数据的price修改为500;
5.数据管理器调用数据处理器处理数据;
6.数据处理器选择相应策略修改数据,例如给数据加上时间戳;
7.数据处理器处理数据完成后,向数据管理器返回处理完成消息;
8.数据管理器将处理后的数据存入数据缓存单元;
9.数据管理器向请求代理单元返回处理结果;
10.请求代理单元将处理结果通知web应用客户端,修改数据流程结束。
参照图10,图10示出了删除数据缓存单元中数据时的工作流程,包括以下步骤:
1.web应用客户端向请求代理单元发出删除数据请求,该请求包含web服务器的URL和请求参数;例如删除商品库中一件商品的请求:web服务器的URL为http://shop/deleteitem.do、请求参数为itemId=123;
2.请求代理单元向web服务器提交删除数据请求,该请求包含上述步骤1中请求的URL和请求参数信息;
3.web服务器根据该请求删除相应的数据,例如在数据库中删除itemId=123的商品记录,并在删除数据后,向请求代理单元返回处理完成消息;
4.请求代理单元收到该消息后,通知数据管理器删除数据缓存单元中的相应数据;该通知中包含步骤1中的URL和请求参数信息,数据管理器根据这些信息在数据缓存单元中查找到对应的缓存数据,并修改该缓存数据。例如根据URL=http://shop/deleteitem.do和itemId=123查找到缓存的itemId=123的商品数据,并将该商品数据从数据缓存单元中删除;
5.数据管理器直接删除数据缓存单元中的相应数据;
6.数据管理器处理完成后,向请求代理单元返回删除完成消息;
7.请求代理单元将返回的结果通知web应用客户端,删除数据流程结束。
基于前面所述的本发明系统架构,本发明还提供了一种web应用方法,在本发明方法中,将每次从web服务器获取的不同web页面的数据统一保存在一个独立的本地缓存区中,用户可以使用请求代理从web服务器请求数据。当web应用客户端请求数据时,请求代理单元将作为web应用客户端的代理来请求数据,请求代理单元首先从本地缓存中获取所需的数据,如果本地缓存中没有所需的数据,再向服务器请求该数据,然后请求代理单元将从服务器获取的数据保存到本地缓存中,并将数据返回给web应用客户端。在将数据保存到本地缓存时,可以对这些数据设置一些相应的更新策略,以进一步保证本地缓存中的数据有效,即与web服务器中的数据一致。不同的数据可以对应不同的策略,当然,也可以采用统一的更新策略。在前面对本发明系统的描述中已有详细介绍。
参照图11,图11是本发明方法的一个优选实施例的流程,包括以下步骤:
步骤111:web应用客户端通过请求代理向web服务器请求数据。
步骤112:请求代理检查本地缓存中是否存在与该请求对应的数据。如果没有,则进到步骤116;否则,进到步骤113。
步骤113:从本地缓存中取出该数据。
步骤114:检查该数据是否有效。如果有效,则进到步骤118;否则,进到步骤115。
前面提到,本发明在将从服务器获取的数据保存到本地缓存时,可以对该数据设置相应的更新策略,因此,在取出该数据时,就可以根据其对应的更新策略检查该数据是否已过期,如果未过期,则表明该数据仍有效;如果已过期,则表明该数据已失效,此时可以直接将该数据从本地缓存中删除。
步骤115:从本地缓存中删除该数据。
步骤116:请求代理向web服务器请求数据。
步骤117:web服务器向请求代理返回请求的数据。
步骤118:请求代理将获取的数据返回给web应用客户端。
如果需要对本地缓存中的数据进行增加、修改或删除等操作,则需要请求代理先向web服务器申请相应的操作,然后,根据web服务器返回的处理结果对本地缓存中的数据进行相应的维护操作。
比如,需要在本地缓存中增加数据时,先向web服务器提交新增数据请求,web服务器进行相应处理,然后返回处理结果。如果web服务器增加数据成功,即请求代理收到web服务器增加数据成功的消息后,将该数据添加到本地缓存中。当然,在添加该数据时,也可以对其设置相应的更新策略。如果web服务器未成功增加该数据,则也不需要将该数据添加到本地缓存中,从则保持本地缓存中的数据和web服务器中数据的一致性。处理完毕后,请求代理向web应用客户端返回相应的通知消息。
同样,修改或删除本地缓存中数据的过程与上述类似,而且在前面也已有详细描述,在此不再赘述。
由以上本发明实施例可见,本发明通过使用数据缓存机制,对浏览器与服务器之间的交互数据进行缓存,对交互数据进行集中管理。用户向服务器请求的数据会缓存在一块单独的全局缓存区中,所有页面的数据从缓存区中取得,页面不缓存数据,因此也就无需编写相应的代码来保证各页面数据的一致性。利用本发明,不仅有效地减少了客户端与服务器的交互次数,避免了冗余数据,而且进一步通过提供多种灵活可配置的数据更新策略,根据实际应用场景选择适当的更新策略,可以在数据实时性和系统性能之间取得很好的平衡。相对于现有技术中的Cookie方式,本发明系统中通过使用数据缓存机制,对web应用客户端的请求,不需要每次都从服务器端获取相应数据,而且每次HTTP请求也不需要发送大量数据到服务器端;同时,web应用客户端只通过请求代理单元与服务器交互,因而对web应用的侵入性很小,在实现上,只需要将普通web请求封装为一个请求接口,就可以屏蔽本发明系统,使得本发明系统对普通技术人员完全透明,例如提供如下接口:RequestProxy.request(URL,parameters),从而保证了数据的安全性。
以上对本发明实施例所提供的系统及方法进行了详细介绍,本文中应用了具体实施方式对本发明进行了阐述,以上实施例的说明只是用于帮助理解本发明的系统及方法;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1. 一种web应用系统,包括:web服务器,安装有web应用客户端的浏览器,其特征在于,还包括:与所述web应用客户端和所述web服务器相连的请求代理单元,以及与所述请求代理单元相连的数据中心;
所述数据中心用于在浏览器端缓存所述web应用客户端通过所述请求代理单元向所述web服务器请求的数据并对其进行集中管理;
所述请求代理单元根据所述web应用客户端的请求从所述数据中心获取数据,或所述请求代理单元通过请求从所述web服务器获取所需数据,同时将所述web服务器返回的数据拷贝一份提供给所述数据中心,并将所述数据返回给所述web应用客户端。
2. 根据权利要求1所述的系统,其特征在于,所述数据中心包括:
数据管理器,与所述请求代理单元相连,用于将所述请求代理单元从所述服务器获取的数据存储到所述数据缓存单元,并根据所述请求代理单元的请求对所述数据缓存单元中存储的数据进行增加、或修改、或删除操作。
数据缓存单元,与所述数据管理器相连,用于存储所述客户端向所述服务器请求的数据。
3. 根据权利要求2所述的系统,其特征在于,所述数据中心还包括:
数据处理器,与所述数据管理器相连,根据所述数据管理器的指令对所述数据缓存单元中的数据进行处理,所述数据处理操作至少包括:
在所述数据管理器将数据写入所述数据缓存单元前,对该数据设置更新策略;和/或
在所述数据管理器从所述数据缓存单元中获取客户端请求的数据后,根据该数据对应的更新策略检查该数据是否有效。
4. 根据权利要求3所述的系统,其特征在于,所述数据中心还包括:
策略单元,用于提供所述数据处理器处理所述数据缓存单元中的数据所需的更新策略。
5. 一种web应用方法,其特征在于,所述方法包括:
web应用客户端通过请求代理请求数据;
如果本地缓存中有所述web应用客户端请求的数据,则所述请求代理从所述本地缓存中获取所需的数据;
如果所述本地缓存中没有所述web应用客户端请求的数据,则所述请求代理从web服务器获取所述数据,并将从所述web服务器获取的数据保存到所述数据中心;
将从所述本地缓存中获取的数据或者从所述web服务器获取的数据返回给所述web应用客户端。
6. 根据权利要求5所述的方法,其特征在于,所述请求代理将每次从所述web服务器获取的不同web页面的数据统一保存在所述本地缓存中。
7. 根据权利要求5所述的方法,其特征在于,所述方法还包括:
在将所述数据保存到所述本地缓存中之前,对该数据设置更新策略。
8. 根据权利要求7所述的方法,其特征在于,
对保存到所述本地缓存中的不同数据,设置相同或不同的更新策略。
9. 根据权利要求7所述的方法,其特征在于,所述从本地缓存中获取所需的数据的步骤包括:
根据所述web应用客户端的请求,从所述本地缓存中查找是否存在与所述请求对应的数据;
如果存在,则根据所述数据对应的更新策略检查所述数据是否已过期;
如果未过期,则获取所述数据。
10. 根据权利要求5至9任一项所述的方法,其特征在于,所述方法还包括:
当所述web应用客户端需要增加、或修改、或删除本地缓存中的数据时,首先向所述web服务器请求;
根据所述web服务器的处理结果增加、或修改、或删除本地缓存中的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100796942A CN101257485A (zh) | 2007-03-02 | 2007-03-02 | web应用系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100796942A CN101257485A (zh) | 2007-03-02 | 2007-03-02 | web应用系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101257485A true CN101257485A (zh) | 2008-09-03 |
Family
ID=39891958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007100796942A Pending CN101257485A (zh) | 2007-03-02 | 2007-03-02 | web应用系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101257485A (zh) |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010148659A1 (zh) * | 2009-11-24 | 2010-12-29 | 中兴通讯股份有限公司 | Web系统中的数据处理方法、装置及系统 |
CN101958916A (zh) * | 2009-07-17 | 2011-01-26 | 华为技术有限公司 | 一种基于富客户端应用的数据处理方法及装置 |
CN101997927A (zh) * | 2010-11-18 | 2011-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种web平台数据缓存的方法和系统 |
CN102012907A (zh) * | 2010-11-10 | 2011-04-13 | 上海光芒科技有限公司 | 一种浏览器客户端侧的缓存方法及系统 |
CN102025750A (zh) * | 2009-09-15 | 2011-04-20 | 天津七所信息技术有限公司 | 网络缓存代理服务系统 |
CN102148759A (zh) * | 2011-04-01 | 2011-08-10 | 许旭 | 通过缓存加速系统节省主干网出口带宽的方法 |
CN102521252A (zh) * | 2011-11-17 | 2012-06-27 | 四川长虹电器股份有限公司 | 一种远程数据的访问方法 |
CN102622266A (zh) * | 2012-02-14 | 2012-08-01 | 中国民航信息网络股份有限公司 | 一种移动应用html和native交互系统及其方法 |
CN102789469A (zh) * | 2011-05-20 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 页面更新方法及系统 |
CN103077196A (zh) * | 2012-12-25 | 2013-05-01 | 宁波公众信息产业有限公司 | 一种从公网web网站到内网数据库的访问方法 |
CN103220331A (zh) * | 2013-03-12 | 2013-07-24 | 广东欧珀移动通信有限公司 | 一种发送大量图片方法及移动智能终端 |
CN103401926A (zh) * | 2013-08-01 | 2013-11-20 | 星云融创(北京)信息技术有限公司 | 一种提高网络资源访问速度的方法及装置 |
CN103440143A (zh) * | 2013-08-02 | 2013-12-11 | 安徽科大讯飞信息科技股份有限公司 | 移动web应用升级系统及方法 |
WO2014047951A1 (zh) * | 2012-09-29 | 2014-04-03 | 华为技术有限公司 | 一种网络存储的方法、交换设备和控制器 |
CN103729247A (zh) * | 2012-10-12 | 2014-04-16 | 阿里巴巴集团控股有限公司 | 数据获取请求的处理方法、系统及服务器 |
CN104427373A (zh) * | 2013-09-06 | 2015-03-18 | 中兴通讯股份有限公司 | 一种基于iptv的数据处理方法及终端 |
CN104484186A (zh) * | 2014-12-31 | 2015-04-01 | 天津南大通用数据技术股份有限公司 | 一种基于web前端的数据分析的设计方法 |
CN104580226A (zh) * | 2015-01-15 | 2015-04-29 | 上海瀚之友信息技术服务有限公司 | 一种共享会话数据的系统和方法 |
CN105245560A (zh) * | 2014-07-11 | 2016-01-13 | 阿里巴巴集团控股有限公司 | 一种实现分布式缓存的方法、装置及系统 |
CN105610945A (zh) * | 2015-12-30 | 2016-05-25 | 赛尔网络有限公司 | 一种搜索流量入口本地化处理方法及装置 |
CN105718291A (zh) * | 2016-01-25 | 2016-06-29 | 山东蓝创网络技术有限公司 | 一种混合桌面应用的多级缓存加速方法 |
CN106021384A (zh) * | 2016-05-12 | 2016-10-12 | 广西尊达电子商务有限公司 | 一种web页面缓存方法 |
CN106682193A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇虎科技有限公司 | 基于缓存的数据持久化存储方法及装置 |
CN106709071A (zh) * | 2017-02-03 | 2017-05-24 | 北京小米移动软件有限公司 | 网络交易处理方法及装置 |
CN107908775A (zh) * | 2017-11-30 | 2018-04-13 | 掌阅科技股份有限公司 | 商品信息的动态展现方法、电子设备、存储介质 |
CN108519873A (zh) * | 2018-04-16 | 2018-09-11 | 中国科学院昆明植物研究所 | 一种自动处理参数的高效编程方法 |
CN108833565A (zh) * | 2018-06-26 | 2018-11-16 | 浙江齐聚科技有限公司 | 一种监控服务器的方法、装置、服务器和存储介质 |
CN109344349A (zh) * | 2018-09-28 | 2019-02-15 | 北京三快在线科技有限公司 | 一种数据缓存方法及装置、电子设备 |
CN110018867A (zh) * | 2018-11-12 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 用于页面交互的方法和装置 |
CN112364274A (zh) * | 2020-10-28 | 2021-02-12 | 北京中科网威信息技术有限公司 | Web站点访问加速方法及装置 |
-
2007
- 2007-03-02 CN CNA2007100796942A patent/CN101257485A/zh active Pending
Cited By (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9686724B2 (en) | 2009-06-05 | 2017-06-20 | Huawei Technologies Co., Ltd. | Network storage method, switch device, and controller |
CN101958916A (zh) * | 2009-07-17 | 2011-01-26 | 华为技术有限公司 | 一种基于富客户端应用的数据处理方法及装置 |
CN102025750A (zh) * | 2009-09-15 | 2011-04-20 | 天津七所信息技术有限公司 | 网络缓存代理服务系统 |
WO2010148659A1 (zh) * | 2009-11-24 | 2010-12-29 | 中兴通讯股份有限公司 | Web系统中的数据处理方法、装置及系统 |
CN102012907A (zh) * | 2010-11-10 | 2011-04-13 | 上海光芒科技有限公司 | 一种浏览器客户端侧的缓存方法及系统 |
CN101997927B (zh) * | 2010-11-18 | 2016-08-10 | 厦门市美亚柏科信息股份有限公司 | 一种web平台数据缓存的方法和系统 |
CN101997927A (zh) * | 2010-11-18 | 2011-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种web平台数据缓存的方法和系统 |
CN102148759A (zh) * | 2011-04-01 | 2011-08-10 | 许旭 | 通过缓存加速系统节省主干网出口带宽的方法 |
CN102789469B (zh) * | 2011-05-20 | 2016-01-06 | 腾讯科技(深圳)有限公司 | 页面更新方法及系统 |
CN102789469A (zh) * | 2011-05-20 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 页面更新方法及系统 |
CN102521252A (zh) * | 2011-11-17 | 2012-06-27 | 四川长虹电器股份有限公司 | 一种远程数据的访问方法 |
CN102622266A (zh) * | 2012-02-14 | 2012-08-01 | 中国民航信息网络股份有限公司 | 一种移动应用html和native交互系统及其方法 |
US10117140B2 (en) | 2012-09-29 | 2018-10-30 | Huawei Technologies Co., Ltd. | Network storage method, switch device, and controller |
WO2014047951A1 (zh) * | 2012-09-29 | 2014-04-03 | 华为技术有限公司 | 一种网络存储的方法、交换设备和控制器 |
CN103729247A (zh) * | 2012-10-12 | 2014-04-16 | 阿里巴巴集团控股有限公司 | 数据获取请求的处理方法、系统及服务器 |
CN103729247B (zh) * | 2012-10-12 | 2017-04-12 | 阿里巴巴集团控股有限公司 | 数据获取请求的处理方法、系统及服务器 |
CN103077196A (zh) * | 2012-12-25 | 2013-05-01 | 宁波公众信息产业有限公司 | 一种从公网web网站到内网数据库的访问方法 |
CN103077196B (zh) * | 2012-12-25 | 2016-04-20 | 宁波公众信息产业有限公司 | 一种从公网web网站到内网数据库的访问方法 |
CN103220331A (zh) * | 2013-03-12 | 2013-07-24 | 广东欧珀移动通信有限公司 | 一种发送大量图片方法及移动智能终端 |
CN103220331B (zh) * | 2013-03-12 | 2016-01-13 | 广东欧珀移动通信有限公司 | 一种发送大量图片方法及移动智能终端 |
CN103401926A (zh) * | 2013-08-01 | 2013-11-20 | 星云融创(北京)信息技术有限公司 | 一种提高网络资源访问速度的方法及装置 |
CN103401926B (zh) * | 2013-08-01 | 2016-08-24 | 星云融创(北京)科技有限公司 | 一种提高网络资源访问速度的方法及装置 |
CN103440143A (zh) * | 2013-08-02 | 2013-12-11 | 安徽科大讯飞信息科技股份有限公司 | 移动web应用升级系统及方法 |
CN104427373A (zh) * | 2013-09-06 | 2015-03-18 | 中兴通讯股份有限公司 | 一种基于iptv的数据处理方法及终端 |
CN105245560B (zh) * | 2014-07-11 | 2019-11-08 | 阿里巴巴集团控股有限公司 | 一种实现分布式缓存的方法、装置及系统 |
CN105245560A (zh) * | 2014-07-11 | 2016-01-13 | 阿里巴巴集团控股有限公司 | 一种实现分布式缓存的方法、装置及系统 |
CN104484186A (zh) * | 2014-12-31 | 2015-04-01 | 天津南大通用数据技术股份有限公司 | 一种基于web前端的数据分析的设计方法 |
CN104580226B (zh) * | 2015-01-15 | 2017-07-11 | 上海瀚之友信息技术服务有限公司 | 一种共享会话数据的系统和方法 |
CN104580226A (zh) * | 2015-01-15 | 2015-04-29 | 上海瀚之友信息技术服务有限公司 | 一种共享会话数据的系统和方法 |
CN105610945A (zh) * | 2015-12-30 | 2016-05-25 | 赛尔网络有限公司 | 一种搜索流量入口本地化处理方法及装置 |
CN105718291A (zh) * | 2016-01-25 | 2016-06-29 | 山东蓝创网络技术有限公司 | 一种混合桌面应用的多级缓存加速方法 |
CN106021384A (zh) * | 2016-05-12 | 2016-10-12 | 广西尊达电子商务有限公司 | 一种web页面缓存方法 |
CN106682193A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇虎科技有限公司 | 基于缓存的数据持久化存储方法及装置 |
CN106709071A (zh) * | 2017-02-03 | 2017-05-24 | 北京小米移动软件有限公司 | 网络交易处理方法及装置 |
CN107908775A (zh) * | 2017-11-30 | 2018-04-13 | 掌阅科技股份有限公司 | 商品信息的动态展现方法、电子设备、存储介质 |
CN107908775B (zh) * | 2017-11-30 | 2019-04-09 | 掌阅科技股份有限公司 | 商品信息的动态展现方法、电子设备、存储介质 |
CN108519873A (zh) * | 2018-04-16 | 2018-09-11 | 中国科学院昆明植物研究所 | 一种自动处理参数的高效编程方法 |
CN108833565A (zh) * | 2018-06-26 | 2018-11-16 | 浙江齐聚科技有限公司 | 一种监控服务器的方法、装置、服务器和存储介质 |
CN108833565B (zh) * | 2018-06-26 | 2021-07-27 | 浙江齐聚科技有限公司 | 一种监控服务器的方法、装置、服务器和存储介质 |
CN109344349A (zh) * | 2018-09-28 | 2019-02-15 | 北京三快在线科技有限公司 | 一种数据缓存方法及装置、电子设备 |
CN109344349B (zh) * | 2018-09-28 | 2020-12-29 | 北京三快在线科技有限公司 | 一种数据缓存方法及装置、电子设备 |
CN110018867A (zh) * | 2018-11-12 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 用于页面交互的方法和装置 |
CN112364274A (zh) * | 2020-10-28 | 2021-02-12 | 北京中科网威信息技术有限公司 | Web站点访问加速方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101257485A (zh) | web应用系统及方法 | |
US11520770B2 (en) | System and method for providing high availability data | |
US11288002B2 (en) | System and method for providing high availability data | |
US10785322B2 (en) | Server side data cache system | |
CN104468807B (zh) | 进行网页缓存的处理方法、云端装置、本地装置及系统 | |
KR100791430B1 (ko) | 네트워크 캐싱 방법 및 시스템 | |
US8103746B2 (en) | Method and system for distributing requests for content | |
US9448932B2 (en) | System for caching data | |
EP1522031B1 (en) | System and method for caching data for a mobile application | |
CA2369891C (en) | Web servers with queryable dynamic caches | |
US7890571B1 (en) | Serving dynamic web-pages | |
US20030163372A1 (en) | Delivering content and advertisement | |
US8495166B2 (en) | Optimized caching for large data requests | |
US20090037489A1 (en) | Method And System For Response Time Optimization | |
JP2005535944A (ja) | サイト内の移動を向上させるための、先回りおよび予測してページをキャッシュする方法およびシステム | |
US8494888B2 (en) | Offline modification of business data | |
US6917950B2 (en) | Modifying a shared resource | |
CN110083616A (zh) | 页面数据处理方法、装置、设备及计算机可读存储介质 | |
JP2004086299A (ja) | トランザクション処理システムにおけるデータ操作永続化方法及びリモートデータベースに対するデータ操作プログラム | |
US6898619B1 (en) | System and method for dynamically disabling resubmission of HTTP requests | |
US20240214449A1 (en) | Ensuring Coherency Across Responses When Handling A Series Of Client Requests | |
US10909209B2 (en) | Dynamic insertion of content into webpages | |
KR20020030383A (ko) | 컴퓨터 네트워크상에서의 유저에 따른 광고최적화방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080903 |