Nothing Special   »   [go: up one dir, main page]

WO2001088762A2 - Distributed dynamic web page caching system - Google Patents

Distributed dynamic web page caching system Download PDF

Info

Publication number
WO2001088762A2
WO2001088762A2 PCT/US2001/015621 US0115621W WO0188762A2 WO 2001088762 A2 WO2001088762 A2 WO 2001088762A2 US 0115621 W US0115621 W US 0115621W WO 0188762 A2 WO0188762 A2 WO 0188762A2
Authority
WO
WIPO (PCT)
Prior art keywords
page
server
web page
cache memory
local cache
Prior art date
Application number
PCT/US2001/015621
Other languages
French (fr)
Other versions
WO2001088762A9 (en
WO2001088762A3 (en
Inventor
Julie Melbin
B. C. Krishna
Clark Wright
Original Assignee
Open Market, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Open Market, Inc. filed Critical Open Market, Inc.
Priority to JP2001585086A priority Critical patent/JP5465821B2/en
Priority to EP01935510A priority patent/EP1356394A2/en
Publication of WO2001088762A2 publication Critical patent/WO2001088762A2/en
Publication of WO2001088762A9 publication Critical patent/WO2001088762A9/en
Publication of WO2001088762A3 publication Critical patent/WO2001088762A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • This invention relates to distributed dynamic web page caching.
  • Computer networks such as the internet and private corporate networks, enable users to retrieve information from a wide variety of sources. They also enable publishers, information providers, advertisers and other information sources to supply information to these users.
  • "Servers” are computer systems that are connected to a network and that store and supply information.
  • One type of server on the internet is known as a “web server,” which provides access to a web site. Each web site can make available one or more "web pages,” which are formatted, tree-structured repositories of information, such as text, images, sounds, animations, and three- dimensional simulations.
  • Many publishers, such as newspapers and journals, as well as corporations, individuals and organizations have established web pages.
  • “Clients” are computer systems, each typically controlled by a user that may be connected to a network and request information from the servers on the network.
  • clients at various locations can view web pages by "downloading" replicas of the web pages from the servers on which these web pages are stored.
  • the invention features a method of dynamic web page caching includes receiving a request for a web page from a client and determining whether a page template and page component tags of the web page reside in a local cache memory. If the page template and page component tags do not reside in the local cache memory, the page template and page component tags are downloaded from a server to the local cache memory. The web page is assembled from the page template and page component tags residing in the local cache memory and the web page rendered to the client.
  • Embodiments may include one or more of the following. Passing a cookie representing a client session identification (ID) from the server to the local cache memory to may be used to manage a session.
  • ID client session identification
  • Page component tags may include page location information, parameters to be passed from the server to the page template, and expiration information. They may also include a binary large object (blob) component.
  • blob binary large object
  • the invention features a network including a server having a collection of data containing web pages and a server link connecting the server to an internet.
  • a cache system link connects a dynamic web page caching system to the internet.
  • the dynamic web page caching system includes an assembly engine that is used to assemble web pages from components found in its local cache and a delivery engine for delivering the web pages to a client.
  • Embodiments of the invention may have one or more of the following advantages.
  • Assembly of web pages containing dynamic components is done closer to the requesting client, minimizing or eUrninating the requirement of assembling the requested page at the server and sending the web page over the internet to the client.
  • dynamic page components are cached at the edge of the network, pushing the assembly and delivery of dynamic components away from the server. Caching assembly and delivery of the dynamic page components at the edge of the network results in a greater number of dynamic page views per day because a greater number of dynamic page components can be generated without having to travel through the internet.
  • a satellite server and/or server goes down, i.e., off-line, there can be another satellite server to perform the work required to assemble and deliver the page.
  • FIG. 1 is a block diagram of a web page.
  • FIG. 2 is a block diagram of a network containing a satellite server.
  • FIG. 3 is a block diagram of the satellite server of FIG. 2.
  • FIG. 4 is a flow diagram of a distributed dynamic web page caching process residing on the computer network of FIG. 2.
  • a web page 10 defines one or more regions, such as regions 14, 16, 18 and 20.
  • Each of the regions 14, 16, 18 and 20, also referred to as components, are part of a web page template 12.
  • Each of the components 14-20 may contain different types of information, such as text, images, graphics, animation, timers, links and so forth.
  • Each of the components 14 through 20 of the web page template 12 may be further classified as being static or dynamic.
  • a static component remains unchanged over a period of time.
  • a dynamic component is a component that is a result of a computational process executed at the time that the web page 10 is requested.
  • Dynamic components by their very nature, exist for a discrete period of time, and thus are typically assembled at the time a client requests them from a server. The server, using specific characteristics of the dynamic components, builds the web page and delivers the web page to the requesting client.
  • An example of a dynamic component is one that contains current weather.
  • the current weather may change between requests and therefore is assembled in response to a user request.
  • Another example of a dynamic component is one that contains a personalized message, such as 'Hi Joe.”
  • the web page 10 typically resides on a server (not shown).
  • a client requests viewing of the web page 10 from the server.
  • the server having details of each component 14-20 within the web page 10, assembles the web page 10 with its associated components 14-20 and sends the web page 10 to the requesting client.
  • the web page 10 may be preassembled and stored on a database associated with the server.
  • the server loads the web page previously stored and delivers it to a browser on the client's system
  • the server assembles the dynamic components in accordance with component details know only to the server prior to delivering the web page 10 to the client.
  • the server responsible for the web page 10 has detail knowledge of each component 14-20 of the web page template 12.
  • Each component 14-20 is defined by a series of parameters or tags known only to the server system. For example, each component will have an associated web page template 12, tags requesting where to get the information included in the component, what parameters, if any, need to be passed into the component, and duration information. These tags may include page information and blob information.
  • the blob is a Binary Large Object; it may be used to represent, for example, images. Only the server knows each of the parameters.
  • the components are wrapped around each of the components 14-20, enabling the server to assemble and render the web page 10 to the requesting client.
  • a network 40 having a distributed dynamic web page caching process is shown to include a number of internet service providers (ISPs) 42, 44, 46 and 48, connected to an internet 50.
  • the ISPs 42-48 provide client and server computer systems access to the internet 50.
  • the network 40 includes a server 52 connected to the ISP 44.
  • the network 40 also shows a client 54 having a browser 56 connected to the ISP 48.
  • the network 40 includes the placement of a satellite server 58 connected to the ISP 48 and a satellite server 60 connected to the internet 50.
  • the network 40 would contain either the satellite server 58 connected to the ISP 48 or the satellite server 60 connected to the internet 50.
  • satellite servers may be placed at other locations at "edges" of the network 40.
  • a network would have one satellite server per domain per port.
  • satellite server 58 for example, in conjunction with server 52, assembles the static and dynamic components of the web page and renders the web page to the browser 56.
  • a satellite server 80 is shown to include a content server 82 and a content server 84.
  • the content servers 82 and 84 are linked to a web server 86 and a web server 88 through respective plug-ins 90 and 92.
  • the web servers 86 and 88 are linked to cache memories labeled as 94, 96, 98 and 100, respectively. Each of the cache memories 94-100 are linked to a local director 102.
  • the local director 102 includes a link 104 that provides communication to an ISP or internet.
  • the local director 102 searches the cache memories 94 through 100 to determine whether the requested web page template and component tags are present. If the component tags of the requested web page are contained within one of the cache memories 94-100, the content server 82 or content server 84 assembles the web page from the cached template and component tags and sends the assembled web page though the link 104 to the requesting client.
  • a distributed dynamic web page caching process 120 includes receiving 122 a page request from a client.
  • the process 120 determines 124 whether the page component tags and web page template of the requested web page reside in one of the satellite server caches. If the web page and its associated web page template and page component tags reside within the satellite system server cache, the satellite system assembles 126 the web page according to its web page template and page component tags and delivers 128 the assembled page to the requesting client. If the web page template and component tags of the requested web page do not reside in the satellite server cache, the process 120 obtains 130 the web page template and associated page component tags from the server. When the information needed to assemble the page components are obtained from the server, the server stores 132 the information in one of its cache memories.
  • the process 120 sends 134 the assembled web page along with its web page template and associated page component tags to the satellite server wherein the process 120 stores 136 the web page template and component tags in the satellite server's cache memories and delivers 128 the assembled page to the requesting client.
  • a second page access finds the required information needed to assemble the requested web page in the satellite server cache memories. This is because the satellite server, from knowledge gained from the server, has knowledge of where to build that web page from the presence of the web page template and associated page component tags in the satellite server cache memory.
  • the satellite server may not have the logic to build the dynamic page components, but the satellite server can obtain the requisite logic from the server.
  • the process 120 maintains a replicated cache, i.e., all the cache components are residing in every content server within the network. Thus, if a single satellite server were to fail, another satellite server may perform the necessary work to render the requested web page. No synchronization between satellite servers is required because each is independent and unique, not being dependent on any other satellite server peer.
  • the process 120 also maintains session information.
  • session information is contained in cookies that are passed between the client and the satellite server. In this manner, a new session is not generated by a second request for a web page by the same user that had requested a web page from the satellite server.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

A method of generating a dynamic web page includes downloading a page template and page component tags of the dynamic web page into a local cache memory from a server, assembling the web page from the page template and page component tags residing in the local cache memory, and rendering the web page to the client.

Description

DISTRIBUTED DYNAMIC WEB PAGE CACHING SYSTEM
FIELD OF THE INVENTION
This invention relates to distributed dynamic web page caching.
BACKGROUND OF THE INVENTION
Computer networks, such as the internet and private corporate networks, enable users to retrieve information from a wide variety of sources. They also enable publishers, information providers, advertisers and other information sources to supply information to these users. "Servers" are computer systems that are connected to a network and that store and supply information. One type of server on the internet is known as a "web server," which provides access to a web site. Each web site can make available one or more "web pages," which are formatted, tree-structured repositories of information, such as text, images, sounds, animations, and three- dimensional simulations. Many publishers, such as newspapers and journals, as well as corporations, individuals and organizations have established web pages. "Clients" are computer systems, each typically controlled by a user that may be connected to a network and request information from the servers on the network. In particular, clients at various locations can view web pages by "downloading" replicas of the web pages from the servers on which these web pages are stored.
SUMMARY
In an aspect, the invention features a method of dynamic web page caching includes receiving a request for a web page from a client and determining whether a page template and page component tags of the web page reside in a local cache memory. If the page template and page component tags do not reside in the local cache memory, the page template and page component tags are downloaded from a server to the local cache memory. The web page is assembled from the page template and page component tags residing in the local cache memory and the web page rendered to the client.
Embodiments may include one or more of the following. Passing a cookie representing a client session identification (ID) from the server to the local cache memory to may be used to manage a session.
Page component tags may include page location information, parameters to be passed from the server to the page template, and expiration information. They may also include a binary large object (blob) component.
In another aspect, the invention features a network including a server having a collection of data containing web pages and a server link connecting the server to an internet. A cache system link connects a dynamic web page caching system to the internet. The dynamic web page caching system includes an assembly engine that is used to assemble web pages from components found in its local cache and a delivery engine for delivering the web pages to a client.
Embodiments of the invention may have one or more of the following advantages.
Assembly of web pages containing dynamic components is done closer to the requesting client, minimizing or eUrninating the requirement of assembling the requested page at the server and sending the web page over the internet to the client.
Specific details of dynamic page components are cached at the edge of the network, pushing the assembly and delivery of dynamic components away from the server. Caching assembly and delivery of the dynamic page components at the edge of the network results in a greater number of dynamic page views per day because a greater number of dynamic page components can be generated without having to travel through the internet.
If a satellite server and/or server goes down, i.e., off-line, there can be another satellite server to perform the work required to assemble and deliver the page.
No synchronization between satellite servers is required; each is independent and unique, not depending on any other satellite server pier.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims. DESCRIPTION OF THE DRAWINGS
The foregoing features and other aspects of the invention will be described further in detail by the accompanying drawings, in which: FIG. 1 is a block diagram of a web page. FIG. 2 is a block diagram of a network containing a satellite server.
FIG. 3 is a block diagram of the satellite server of FIG. 2. FIG. 4 is a flow diagram of a distributed dynamic web page caching process residing on the computer network of FIG. 2.
Like reference symbols in the various drawings indicate like elements.
■ DETAD ED DESCRD?TΪON
Referring to FIG. 1, a web page 10 defines one or more regions, such as regions 14, 16, 18 and 20. Each of the regions 14, 16, 18 and 20, also referred to as components, are part of a web page template 12. Each of the components 14-20 may contain different types of information, such as text, images, graphics, animation, timers, links and so forth. Each of the components 14 through 20 of the web page template 12 may be further classified as being static or dynamic. A static component remains unchanged over a period of time. A dynamic component is a component that is a result of a computational process executed at the time that the web page 10 is requested. Dynamic components, by their very nature, exist for a discrete period of time, and thus are typically assembled at the time a client requests them from a server. The server, using specific characteristics of the dynamic components, builds the web page and delivers the web page to the requesting client.
An example of a dynamic component is one that contains current weather. The current weather may change between requests and therefore is assembled in response to a user request. Another example of a dynamic component is one that contains a personalized message, such as 'Hi Joe."
The web page 10 typically resides on a server (not shown). A client requests viewing of the web page 10 from the server. The server, having details of each component 14-20 within the web page 10, assembles the web page 10 with its associated components 14-20 and sends the web page 10 to the requesting client. In the event that each of the components 14-20 are static components, the web page 10 may be preassembled and stored on a database associated with the server. Thus, when the web page 10 is requested by a client, the server loads the web page previously stored and delivers it to a browser on the client's system If one or more of the components 14-20 are dynamic, the server assembles the dynamic components in accordance with component details know only to the server prior to delivering the web page 10 to the client.
The server responsible for the web page 10 has detail knowledge of each component 14-20 of the web page template 12. Each component 14-20 is defined by a series of parameters or tags known only to the server system. For example, each component will have an associated web page template 12, tags requesting where to get the information included in the component, what parameters, if any, need to be passed into the component, and duration information. These tags may include page information and blob information. The blob is a Binary Large Object; it may be used to represent, for example, images. Only the server knows each of the parameters. The components are wrapped around each of the components 14-20, enabling the server to assemble and render the web page 10 to the requesting client.
Referring to FIG. 2, a network 40 having a distributed dynamic web page caching process is shown to include a number of internet service providers (ISPs) 42, 44, 46 and 48, connected to an internet 50. The ISPs 42-48 provide client and server computer systems access to the internet 50. The network 40 includes a server 52 connected to the ISP 44. The network 40 also shows a client 54 having a browser 56 connected to the ISP 48. The network 40 includes the placement of a satellite server 58 connected to the ISP 48 and a satellite server 60 connected to the internet 50. In a preferred embodiment, the network 40 would contain either the satellite server 58 connected to the ISP 48 or the satellite server 60 connected to the internet 50. In other embodiments, satellite servers may be placed at other locations at "edges" of the network 40. In general, a network would have one satellite server per domain per port. When the client 54 requests the "rendering" of a web page through its browser 56 from server 52, satellite server 58, for example, in conjunction with server 52, assembles the static and dynamic components of the web page and renders the web page to the browser 56. Referring to FIG. 3, a satellite server 80 is shown to include a content server 82 and a content server 84. The content servers 82 and 84 are linked to a web server 86 and a web server 88 through respective plug-ins 90 and 92. The web servers 86 and 88 are linked to cache memories labeled as 94, 96, 98 and 100, respectively. Each of the cache memories 94-100 are linked to a local director 102. The local director 102 includes a link 104 that provides communication to an ISP or internet.
In operation, when a request to render a web page is received on the link 104, the local director 102 searches the cache memories 94 through 100 to determine whether the requested web page template and component tags are present. If the component tags of the requested web page are contained within one of the cache memories 94-100, the content server 82 or content server 84 assembles the web page from the cached template and component tags and sends the assembled web page though the link 104 to the requesting client.
Referring to FIG. 4, a distributed dynamic web page caching process 120 includes receiving 122 a page request from a client. The process 120 determines 124 whether the page component tags and web page template of the requested web page reside in one of the satellite server caches. If the web page and its associated web page template and page component tags reside within the satellite system server cache, the satellite system assembles 126 the web page according to its web page template and page component tags and delivers 128 the assembled page to the requesting client. If the web page template and component tags of the requested web page do not reside in the satellite server cache, the process 120 obtains 130 the web page template and associated page component tags from the server. When the information needed to assemble the page components are obtained from the server, the server stores 132 the information in one of its cache memories. The process 120 sends 134 the assembled web page along with its web page template and associated page component tags to the satellite server wherein the process 120 stores 136 the web page template and component tags in the satellite server's cache memories and delivers 128 the assembled page to the requesting client. Using the process 120, a second page access finds the required information needed to assemble the requested web page in the satellite server cache memories. This is because the satellite server, from knowledge gained from the server, has knowledge of where to build that web page from the presence of the web page template and associated page component tags in the satellite server cache memory. The satellite server may not have the logic to build the dynamic page components, but the satellite server can obtain the requisite logic from the server. In steady state, the process 120 maintains a replicated cache, i.e., all the cache components are residing in every content server within the network. Thus, if a single satellite server were to fail, another satellite server may perform the necessary work to render the requested web page. No synchronization between satellite servers is required because each is independent and unique, not being dependent on any other satellite server peer.
The process 120 also maintains session information. In an embodiment, session information is contained in cookies that are passed between the client and the satellite server. In this manner, a new session is not generated by a second request for a web page by the same user that had requested a web page from the satellite server. A number of embodiments of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other embodiments are within the scope of the following claims.

Claims

WHAT IS CLAIMED IS:
1. A computer-implemented method of generating a dynamic web page comprising: receiving a request for a web page from a client; determining whether a page template and page component tags of the web page reside in a local cache memory; in response to the determining, downloading the page template and page component tags of the web page into the local cache memory from a server if the page template and page component tags do not reside in the local cache memory; assembling the web page from the page template and page component tags residing in the local cache memory; and rendering the web page to the client.
2. The computer-implemented method of claim 1 further comprising: passing a cookie representing a client session identification (ID) from the server to the local cache memory to manage a session.
3. The computer-implemented method of claim 1 wherein the page components tags comprise: page location information; parameters to be passed from the server to the page template; and expiration information.
4. The computer-implemented method of claim 3 wherein the page component tags comprise a binary large object (blob) component.
5. A computer program product residing on a computer readable medium comprising instructions for causing the computer to: receive a request for a web page from a client; determine whether a page template and page component tags of the web page reside in a local cache memory; download the page template and page component tags of the web page into the local cache memory from a server if the page template and page component tags do not reside in the local cache memory; assemble the web page from the page template and page component tags residing in the local cache memory; and render the web page to the client.
6. A network comprising: a server having a collection of data containing web pages; a server link, the server link connecting the server to an internet; a dynamic web page caching system connected to the internet and having cache memory containing component tags of the web pages, the dynamic web page caching system comprising: means for assembling the web pages from the component tags; and means for delivering the web pages to a client.
7. The network according to claim 6 further comprising a second dynamic web page caching system
8. The network according to claim 6 wherein the component tags comprise: page location information; parameters to be passed from the server to the page template; and expiration information.
9. The network according to claim 6 wherein the dynamic web page caching system further comprises means for managing cookies between the client and the server.
10. A computer-implemented method of generating a dynamic web page comprising: downloading a page template and page component tags of the dynamic web page into a local cache memory from a server; assembling the web page from the page template and page component tags residing in the local cache memory; and rendering the web page to the client.
11. The computer-implemented method of claim 10 wherein the local cache memory resides in a satellite server.
12. The computer-implemented method of claim 11 wherein the satellite server resides at an edge of a network.
13. The computer-implemented method of claim 10 wherein the page component tags comprise: page location; parameters to be passed from the server to the page template; expiration information; and a binary large object component.
PCT/US2001/015621 2000-05-16 2001-05-15 Distributed dynamic web page caching system WO2001088762A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001585086A JP5465821B2 (en) 2000-05-16 2001-05-15 Distribution dynamic web page caching system
EP01935510A EP1356394A2 (en) 2000-05-16 2001-05-15 Distributed dynamic web page caching system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US57268100A 2000-05-16 2000-05-16
US09/572,681 2000-05-16

Publications (3)

Publication Number Publication Date
WO2001088762A2 true WO2001088762A2 (en) 2001-11-22
WO2001088762A9 WO2001088762A9 (en) 2002-10-10
WO2001088762A3 WO2001088762A3 (en) 2003-08-07

Family

ID=24288888

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/015621 WO2001088762A2 (en) 2000-05-16 2001-05-15 Distributed dynamic web page caching system

Country Status (3)

Country Link
EP (1) EP1356394A2 (en)
JP (1) JP5465821B2 (en)
WO (1) WO2001088762A2 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1182589A3 (en) * 2000-08-17 2002-07-24 International Business Machines Corporation Provision of electronic documents from cached portions
GB2389201A (en) * 2002-05-29 2003-12-03 Flyingspark Ltd Methods and System for Using Caches
FR2842624A1 (en) * 2002-07-22 2004-01-23 France Telecom Web page caching method, by storing page fragments with different lifetimes in dynamic cache between client terminal and servers
WO2004074960A2 (en) * 2003-02-19 2004-09-02 International Business Machines Corporation Distributed fragment caching and assembly in distributed computing applications
EP1489526A2 (en) * 2003-06-18 2004-12-22 Ricoh Company, Ltd. Electronic apparatus and web page generating method
GB2412769A (en) * 2002-05-29 2005-10-05 Flyingspark Ltd System for managing cache updates
US7200645B2 (en) 2002-06-26 2007-04-03 International Business Machines Corporation Running dynamic web pages off-line with a wizard
US7249313B2 (en) 2002-06-26 2007-07-24 International Business Machines Corporation Creating and utilizing a wizard to capture an application's interdependencies between web pages and data accesses for running the application's downloadable dynamic web pages off-line
WO2009082900A1 (en) * 2007-12-29 2009-07-09 Huawei Technologies Co., Ltd. Page component layout method and device
CN107851071A (en) * 2015-08-11 2018-03-27 三菱电机株式会社 Web browsing apparatus and web viewing programs
CN110020270A (en) * 2017-08-01 2019-07-16 上海福网信息科技有限公司 A kind of method that webpage quickly accesses
US10534851B1 (en) 2014-12-19 2020-01-14 BloomReach Inc. Dynamic landing pages
US11100554B1 (en) 2014-03-13 2021-08-24 BloomReach Inc. System, method and computer program product for providing thematic landing pages

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269618A (en) * 2008-05-07 2008-11-06 Fujitsu Ltd Web server, and web server having function of java servlet
CN108334562A (en) * 2018-01-09 2018-07-27 阿里巴巴集团控股有限公司 A kind of page display method and device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061715A (en) * 1998-04-30 2000-05-09 Xerox Corporation Apparatus and method for loading and reloading HTML pages having cacheable and non-cacheable portions

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5928323A (en) * 1996-05-30 1999-07-27 Sun Microsystems, Inc. Apparatus and method for dynamically generating information with server-side software objects
JPH1165905A (en) * 1997-08-22 1999-03-09 Nec Corp Www service system using homepage update history information

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061715A (en) * 1998-04-30 2000-05-09 Xerox Corporation Apparatus and method for loading and reloading HTML pages having cacheable and non-cacheable portions

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHALLENGER J ET AL: "A SCALABLE SYSTEM FOR CONSISTENTLY CACHING DYNAMIC WEB DATA" PROCEEDINGS IEEE INFOCOM '99. THE CONFERENCE ON COMPUTER COMMUNICATIONS. 18TH ANNUAL JOINT CONFERENCE OF THE IEEE COMPUTER AND COMMUNICATIONS SOCIETIES. NEW YORK, NY, MARCH 21 - 25, 1999, PROCEEDINGS IEEE INFOCOM. THE CONFERENCE ON COMPUTER COMMUNICA, vol. 1, 21 March 1999 (1999-03-21), pages 294-303, XP002906260 ISBN: 0-7803-5418-4 *
CRAIG E. WILLS, MIKHAIL MIKHAILOV: "Exploiting Object Relationships for Web Caching" COMPUTER SCIENCE TECHNICAL REPORT SERIES - WORCESTER POLYTECHNIC INSTITUTE, [Online] October 1999 (1999-10), page 1-16 XP002224468 Retrieved from the Internet: <URL:http://www.cs.wpi.edu/~cew/papers/tr99-29.ps.gz. > [retrieved on 2002-12-04] *
DOUGLIS F ET AL: "HPP: HTML macro-preprocessing to support dynamic document caching" PROCEEDINGS OF THE USENIX SYMPOSIUM ON INTERNET TECHNOLOGIES AND SYSTEMS, XX, XX, 8 December 1997 (1997-12-08), pages 83-94, XP002162124 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1182589A3 (en) * 2000-08-17 2002-07-24 International Business Machines Corporation Provision of electronic documents from cached portions
GB2412769A (en) * 2002-05-29 2005-10-05 Flyingspark Ltd System for managing cache updates
GB2389201A (en) * 2002-05-29 2003-12-03 Flyingspark Ltd Methods and System for Using Caches
GB2412769B (en) * 2002-05-29 2006-09-13 Flyingspark Ltd Methods and systems for using caches
GB2412771B (en) * 2002-05-29 2006-01-04 Flyingspark Ltd Methods and system for using caches
GB2389201B (en) * 2002-05-29 2005-11-02 Flyingspark Ltd Methods and system for using caches
GB2412771A (en) * 2002-05-29 2005-10-05 Flyingspark Ltd System for managing cache updates
US7200645B2 (en) 2002-06-26 2007-04-03 International Business Machines Corporation Running dynamic web pages off-line with a wizard
US7249313B2 (en) 2002-06-26 2007-07-24 International Business Machines Corporation Creating and utilizing a wizard to capture an application's interdependencies between web pages and data accesses for running the application's downloadable dynamic web pages off-line
FR2842624A1 (en) * 2002-07-22 2004-01-23 France Telecom Web page caching method, by storing page fragments with different lifetimes in dynamic cache between client terminal and servers
WO2004074960A3 (en) * 2003-02-19 2004-11-11 Ibm Distributed fragment caching and assembly in distributed computing applications
WO2004074960A2 (en) * 2003-02-19 2004-09-02 International Business Machines Corporation Distributed fragment caching and assembly in distributed computing applications
US7177900B2 (en) 2003-02-19 2007-02-13 International Business Machines Corporation Non-invasive technique for enabling distributed computing applications to exploit distributed fragment caching and assembly
EP1489526A2 (en) * 2003-06-18 2004-12-22 Ricoh Company, Ltd. Electronic apparatus and web page generating method
WO2009082900A1 (en) * 2007-12-29 2009-07-09 Huawei Technologies Co., Ltd. Page component layout method and device
US11100554B1 (en) 2014-03-13 2021-08-24 BloomReach Inc. System, method and computer program product for providing thematic landing pages
US10534851B1 (en) 2014-12-19 2020-01-14 BloomReach Inc. Dynamic landing pages
CN107851071A (en) * 2015-08-11 2018-03-27 三菱电机株式会社 Web browsing apparatus and web viewing programs
CN110020270A (en) * 2017-08-01 2019-07-16 上海福网信息科技有限公司 A kind of method that webpage quickly accesses

Also Published As

Publication number Publication date
WO2001088762A9 (en) 2002-10-10
WO2001088762A3 (en) 2003-08-07
JP2004501437A (en) 2004-01-15
JP5465821B2 (en) 2014-04-09
EP1356394A2 (en) 2003-10-29

Similar Documents

Publication Publication Date Title
US7447731B2 (en) Method and apparatus for distributed application execution
CA2467933C (en) Method and system for network caching
US7509393B2 (en) Method and system for caching role-specific fragments
CA2307051C (en) Method and apparatus to determine user identity and limit access to a communications network
US7412535B2 (en) Method and system for caching fragments while avoiding parsing of pages that do not contain fragments
US8032586B2 (en) Method and system for caching message fragments using an expansion attribute in a fragment link tag
US8239494B2 (en) Method and system for processing published content on the internet
US7181488B2 (en) System, method and computer program product for presenting information to a user utilizing historical information about the user
US7149704B2 (en) System, method and computer program product for collecting information about a network user
US8843575B2 (en) Customizable and measurable information feeds for personalized communication
US6327609B1 (en) System and method for using cookies in java
WO2001088762A2 (en) Distributed dynamic web page caching system
US7587515B2 (en) Method and system for restrictive caching of user-specific fragments limited to a fragment cache closest to a user
US20030188021A1 (en) Method and system for processing multiple fragment requests in a single message
US20020194382A1 (en) Method and system for efficient and automated version management of embedded objects in web documents
JP2010539601A (en) An approach to identify and provide targeted content to network clients with less impact on service providers
WO2002069196A2 (en) System for logging on to servers through a portal computer
US20030014274A1 (en) Method of maintaining a user profile
Bartlett et al. Using a Content Delivery Network
AU2011244962B2 (en) System And Method For Enabling Publishers To Select Preferred Types Of Electronic Documents

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: C2

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: C2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

COP Corrected version of pamphlet

Free format text: PAGES 1/4-4/4, DRAWINGS, REPLACED BY NEW PAGES 1/2-2/2; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE

WWE Wipo information: entry into national phase

Ref document number: 2001935510

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001935510

Country of ref document: EP