CN100380864C - 更新/重装在网络上浏览过的页面内容的方法和*** - Google Patents

更新/重装在网络上浏览过的页面内容的方法和*** Download PDF

Info

Publication number
CN100380864C
CN100380864C CNB2004100687091A CN200410068709A CN100380864C CN 100380864 C CN100380864 C CN 100380864C CN B2004100687091 A CNB2004100687091 A CN B2004100687091A CN 200410068709 A CN200410068709 A CN 200410068709A CN 100380864 C CN100380864 C CN 100380864C
Authority
CN
China
Prior art keywords
browser
page
server
message
computing device
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.)
Expired - Fee Related
Application number
CNB2004100687091A
Other languages
English (en)
Other versions
CN1620012A (zh
Inventor
巴拉特·V·贝迪
安德鲁·J·斯坦福德-克拉克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1620012A publication Critical patent/CN1620012A/zh
Application granted granted Critical
Publication of CN100380864C publication Critical patent/CN100380864C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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]
    • 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
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种自动更新用户预先选择的网页组的内容、而不需用户的任何行为来启动网页更新过程的实时手段。这是通过在用户计算设备浏览器中并入软件代码实现的,该软件代码响应实时网页内容改变通知消息使浏览器重装在该改变通知消息中标识的URL。软件代码还可以包括嵌入在下载的网页中的Java小应用程序等,Java小应用程序响应实时网页内容改变通知消息使浏览器重装其URL被标识在该消息中的网页、或者重装当前显示的网页。改变通知消息由其网页内容发生改变的应用产生,并且该消息被消息中介代理实时地中继到包括所述软件代码的推送客户端代理。本发明具有许多优点,包括减少不必要的网页重装操作,因此而降低网络通信量。

Description

更新/重装在网络上浏览过的页面内容的方法和***
技术领域
本发明涉及一种用于更新/再装在网络上浏览过的页面内容的方法和***,特别但不是唯一地涉及更新/再装在因特网上浏览过的页面内容的方法和***。
背景技术
浏览器是运行在诸如个人计算机(PC)的客户端计算设备上的软件程序,它使得客户端计算设备能够在网络上从服务器检索页面。这种页面包含数据,所述数据包括文件内容、其结构、布局和物理格式以及到在***中的其它文件和媒体对象的链接。浏览器解释被检索的页面并在客户端计算设备的显示器上显示文件的内容。典型地,网络包括多个客户端计算设备和多个服务器,在多个服务器上驻存有大量的页面,这些页面可以被用户经由它们的客户端计算设备来访问。每个页面具有唯一的网络地址,它被浏览器用作在***中定位页面和从驻存它的服务器获得其拷贝的工具。
因特网是链接全世界几乎无限制数量的服务器和客户端计算设备的这样的网络的最普遍公认的一个示例。万维网(WWW)是用于表示因特网和通过它可以访问网页的巨大集合的通用术语。
在因特网的情况下,万维网浏览器是在客户端计算设备上运行的主要软件程序,用于将客户端计算设备连接到服务器,从服务器检索网页,解释网页和随后将其内容显示在客户端计算设备的显示器上。相反,仅在服务器设备上运行的服务器软件用于处理网页的存储和传输。将服务器和客户端计算设备捆绑到一起的是它们的下述能力:使用各种协议来在因特网上彼此通信,所述协议尤其是超文本传送协议(HTTP),它至少当前可以被看作是用于因特网通信的主要协议。
在服务器和客户端计算设备之间传送的WWW文档文件(网页)用称为超文本标记语言(HTML)的文本格式化语言写成,超文本标记语言描述文档文件内容的结构和字符格式。网页仅仅是客户端计算设备浏览器软件能够理解的文本和指令的HTML数据集。网页可以包括到位于因特网中的其它这样的页面和媒体对象的链接。这样的链接构成网页的显示内容的一部分。
统一资源定位符(URL)指定由服务器存储在磁盘上或由与因特网连接的服务器可以动态配置的网页的因特网地址。在因特网上的每个页面无论其访问协议为何都具有唯一的URL。万维网浏览器使用URL从页面所驻存的服务器来检索页面。URL实际上是在因特网中实际使用的数字的、二进制编码的域名因特网协议(IP)地址的用户友好形式。
万维网浏览器提供比仅仅检索网页和在客户端计算设备显示器上显示它们的内容更大的功能。例如,诸如微软的Internet Explorer和Netscape Navigator的公知万维网浏览器提供诸如“书签”或“收藏”的附加功能。这些使得用户能够记录用户可能希望重新访问的网站的地址。这将包括被存储的那些网站的URL的列表。用户可以访问该列表,并且点击到要重新访问的网站的链接而不是重新键入整个地址或试图在另一个文件中定位到它的链接。
由公知的万维网浏览器提供的另一种功能是“重装”或“刷新”,由此,当下载网页时,网页数据被高速缓存、即暂时存储在客户端计算设备的存储器中。当下次请求那个页面时,不是从服务器请求该网页文件,而是万维网浏览器从客户端计算设备高速缓冲存储器访问它。但是,如果一个网页被经常地更新,则被高速缓存的内容可能不再是当前的。通过选择重装(刷新)网页,这个与时间相关的数据被从服务器更新(即重装)。
重装或刷新特征的缺点包括需要用户方的积极行为来重装网页,但是这需要用户方知道网页的内容被定期更新,并且克服预先安排用户使用所存储的书签和/或快捷方式来作为访问网页的主要路径的自然惯性。而且,在许多情况下,网页的内容不会改变或不会大量改变,因此重装操作对于用户无益并且浪费网络资源。
已经存在多种尝试来处理当被加上书签的网页的内容已经被改变时自动向用户指示的问题。在US 5813007中公开了一种这样的尝试。它教导了使用电子邮件通知来加亮其内容已经在它驻存的服务器上改变的URL书签。用户可以随后访问被通知的URL以重装网页文件。这是一种更新加上书签的网页的轮询方法的形式,它需要用户方的行为。
在US 5978828中公开了另一种这样的尝试。它教导了通过客户端计算设备浏览器使用轮询方法来确定加上书签的网页的内容已经改变的程度,并且如果改变的程度超过门限,则客户端计算设备重装网页文件以访问当前内容。虽然这种方法降低了不必要重装操作的数量,但是它依赖于浏览器来轮询URL以确定网页内容是否已经改变以及改变是否大到足以触发重装操作。在用户未手动启动网页的重装以访问当前内容时,用户受门限和如何确定是否重装网页以访问当前内容的支配。
从US6055570可以了解处理这个问题的另一个尝试。它教导了提供用户可以登记的更新监控服务以表示他们对了解某些URL的网页内容的改变的兴趣。监控服务或者轮询网站关于内容的改变或者接收改变的通知。用户则连接到监控服务,并且被提供其内容已经改变的、所感兴趣的URL的列表。在这个公开中没有响应于网页内容已经改变的通知而自动实时更新在万维网浏览器中的网页文件的机制。
发明内容
本发明的一个目的是减轻或消除与上述相关的缺点。
本发明的另一个目的是提供一种方法和***,用于使客户端计算设备浏览器自动更新/重装包含数据的页面,所述数据包含文档内容、其结构、布局和物理格式以及通过网络来自服务器的到其他文件和媒体对象的链接。
本发明的另一个目的是提供一种方法和***,用于使客户端计算设备上的浏览器在接收到页面内容改变的通知时自动更新/重装其内容已经改变的页面。
按照本发明的第一个方面,提供了一种自动在客户端计算设备上重装页面的方法,其特征在于包括步骤:在服务器上存储页面;响应于服务器接收的来自浏览器的请求而向客户端计算设备的浏览器发送页面的拷贝,将所述页面的拷贝通过将客户端计算设备连接到服务器的网络发送到浏览器;更新在服务器上存储的页面的内容;同时向所述浏览器发送一个消息以通知它页面内容的改变;在接收到改变内容消息时,使浏览器自动请求被更新页面的拷贝。
优选的是,改变消息由可以通过服务器实现的应用程序产生,并且改变消息通过消息中介服务器被中继到客户端计算设备的浏览器。
消息中介服务器可以包括发表/预订引擎,以便使用套接字传送协议来向浏览器通知所述改变消息。
同样优选的是,所述方法包括步骤:客户端计算设备浏览器向消息中介服务器登记页面的网络地址,而消息中介服务器根据所述被登记的网络文件地址来确定是否向所述浏览器发送所接收的改变消息。
浏览器可以向消息中介服务器登记的多个页面的网络地址,消息中介服务器使用这些地址以确定是否要向浏览器发送所接收的改变消息。
优选的是,由浏览器向消息中介代理/服务器登记的网络地址包括用户选择的网络地址的列表。
用于使浏览器在接收到改变消息时自动请求被更新页面的拷贝的程序代码可以形成浏览器软件的一部分。
或者,用于使浏览器在接收到改变消息时自动请求被更新页面的拷贝的程序代码包括嵌入在下载的页面中的Java小应用程序。
按照本发明的第二方面,提供了一种用于在客户端计算设备上自动重装页面的***,其特征在于包括:服务器,用于存储页面;具有浏览器的客户端计算设备;网络,用于将服务器与客户端计算设备连接,其设置使得存储在服务器上的页面的拷贝可以响应于在服务器接收的、来自浏览器的请求,通过网络被发送到客户端计算设备的浏览器;消息中介代理,用于接收页面内容已经被改变的消息,并且用于实时地向浏览器发送消息以通知它所述内容已经被改变;其中所述浏览器被设置为,当接收到改变消息时,从服务器请求页面的更新拷贝。
优选的是,服务器包括用于实现应用程序的应用服务器。
同样优选的是,消息中介代理包括一发表/预订引擎,其中浏览器的消息中介代理和推送客户代理是通过传输控制协议/因特网协议(TCP/IP)套接字连接而连接的。
按照本发明的第三个方面,提供了一种客户端计算设备,用于实现本发明的方法。
按照本发明的第四个方面,提供了一种消息中介服务器,用于实现本发明的方法。
按照本发明的第五个方面,提供了一种软件代码,用于实现本发明的方法。
按照本发明的第六方面,提供了一种在机器可读介质上的计算机程序,用于实现实现本发明方法的客户端计算设备的浏览器。
附图说明
通过参照附图、仅用以示例说明本发明的优选实施例,本发明的上述和其他特点将会变得更容易明白,其中:
图1是按照本发明的第一实施例的方框图;
图2是包括作为客户端计算设备浏览器的推送客户代理的、嵌入的Java小应用程序的示意方框图;
图3是按照本发明的第二实施例的方框图。
具体实施方式
参见图1,其中示出了按照本发明的第一优选实施例。其包括经由网络14连接到客户端计算设备12的服务器10。网络14可以包括因特网,但是等同地也可以包括仅向授权用户提供访问的专用网络。虽然仅仅示出了单个服务器10和客户端计算设备12,但是应当明白网络14可以将多个客户端计算设备与多个服务器互连。
服务器10具有服务器软件16,它以公知的方式来控制服务器的操作,其中包括存储和通过网络14传送在服务器10的存储器18中存储的页面。服务器10可以包括万维网服务器等,其中它提供对存储在盘上的页面的访问。这样的页面一般在本质上是“静态”的,表现在这些页面可以被所有用户访问,并且它们的内容对于所有用户是相同的。但是,在本发明的优选实现方式中,服务器10包括应用服务器10,它能够实现应用程序(在图1中被表示为17),并且与其相关联地动态产生诸如万维网网页的被请求页面的一些内容。虽然应用程序17在图1中被示出为与应用服务器10分立地驻存,但是该应用程序驻留在应用服务器10上。动态产生的页面内容可以是从不同***——诸如数据库19和/或内容提供商20和其他后端应用和***(未示出)——与被实现的应用一致地在匆忙中收集的信息。应用服务器10通过网络14链接到数据库19和内容提供商20(如图1所示)。但是,服务器10可以通过客户端计算设备12不能直接访问的专用网络(未示出)来链接到这些和其他***。例如,应用服务器10可以包括诸如银行的金融机构的应用服务器,它在接收到用户请求时,从数据库19动态地收集该用户专有的银行帐户数据,并且将此作为网页提供给用户的计算设备12。因此,所请求的网页包括一些由应用服务器10动态产生的内容,它们提供包括用户专有数据的内容。
应用服务器10可以包括国际商业机器(IBM)公司的Websphere应用服务器(Websphere是IBM的商品名称)或Apache Tomcat使能的服务器(ApacheTomcat包括由Apache软件组织提供的软件代码)。
在这个实施例中,页面可以被配置为HTML文件,但是可以包括任何公知的合适的文件格式的文件。例如,页面可以包括JavaServer Page(JSP)或Java Servlet。JSP和Java Servlet是Java软件组成部分,它们响应于从浏览器接收的请求而在应用服务器内执行以产生页面的动态内容。动态产生的内容可以被配置为HTML文件。新的页面和/或用于现有页面的新内容可以由内容提供商20提供。内容提供商20可以包括独立的服务器设备,或可以构成应用服务器10的一部分。
客户端计算设备12可以例如包括个人计算机(PC),但是也可以等同地是能够连接到网络14的任何其他设备,包括膝上型计算机、因特网协议(IP)电话手机、手提计算机或移动通信设备等。本领域的技术人员可以认识到客户端计算设备12可以采取的许多不同形式。在各种情况下,客户端计算设备12包括浏览器22,它运行浏览器软件,浏览器软件使用户可以从应用服务器10选择页面以检索、解释页面内容并在客户端计算设备12的显示器24上显示其内容。为了实现这一点,用户通过键入向客户端计算设备输入例如所请求页面的唯一网址。浏览器软件22和服务器软件16使用一个或多个预定协议来通过网络通信。当网络14包括因特网时,预定协议可以是超文本传送协议(HTTP),尽管也可以取代或与HTTP一致地使用其他协议,诸如文件传送协议(FTP)或网络新闻传送协议(NNTP)。在专用网络的情况下,网络通信协议可以是专用协议。在因特网上使用许多其他协议,但是这些其他协议经常用于不同于本发明目的的目的,例如基于因特网的语音传输协议(VoIP),它使用户可以通过因特网进行电话呼叫。但是,在应用服务器上存储的页面可以包括到其他页面和位于网络内的对象的链接,这些对象中的一些可以使用这样的其他协议。
在因特网的情况下,页面的唯一网址采取通用资源定位符(URL)的形式。URL指定在连接到因特网的服务器上存储的页面的因特网地址。在因特网上的每个页面,不论其访问协议如何,都具有唯一的URL。浏览器22使用URL来从服务器10检索所请求的页面的拷贝。
如图1举例所示,从应用服务器10检索的页面可以包括这样的网页,其一些内容是动态地产生的,并且这些内容是请求它的用户专有的。可以使用称为超文本标记语言(HTML)的文本格式语言来写网页,HTML语言描述了文档文件内容的结构和字符格式。一个页面仅仅是客户端计算设备浏览器软件能够理解的文本和指令的数据集。一个页面可以包含到位于因特网内的其他页面或媒体对象的超文本形式的链接。这样的链接形成网页显示内容的一部分。用户可以通过这些链接访问例如其他网页。这些网页可以构成属于单个应用或实体的一组网页的一部分,例如用于诸如银行的金融机构的网页,或者它们可以包括到网页设计者认为对他的网页内容的浏览者有意义的、其他应用或实体的网页的链接。可以注意到,每个网页不论它是否是一组网页的一部分都具有其本身的唯一网址。在多数情况下,链接并不按照使通过链接的导航困难的逻辑顺序。万维网浏览器因此包括一个高速缓冲存储器26,它暂时将被下载的网页存储在客户端计算设备12的存储器中。于是,如果用户重新访问一个网页地址,浏览器22可以从高速缓冲存储器26检索该网页,而不是在网络上执行新的文件检索操作。通过这种方法,浏览器降低了不必要的网络通信流。
同样为了使得通过网页的导航更容易,浏览器22提供了一种书签特性,通过这个特性,使得用户能够作为书签28存储他可能希望重新访问的网页的唯一网址(URL)。这使得用户能够在他的书签列表28中指向所关心的地址,而不是必须每次在他希望重新访问网页时通过例如键入来在浏览器中重新输入地址。在许多情况下,从客户端计算设备的高速缓冲存储器26检索网页而不是从服务器10重装向用户显示的网页。
诸如微软的Internet Explorer和Netscape Navigator这样的公知万维网浏览器提供“重装”或“刷新”特性,由此,因为网页可能会经常地更新而使得高速缓存的内容不再是当前的,因此从服务器向客户端计算设备重装网页以提供对当前内容的访问。
在本发明的这个第一优选实施例中,提供了一种消息中介代理30,它实时地从应用20接收关于在应用服务器存储器18中存储的页面的改变或新内容的通知。这些通知也实时地被消息中介代理中继到所涉及的客户端计算设备12的浏览器22。消息中介代理30包括在网络14中的独立服务器设备31,但是它可以被实现为应用服务器10的服务器软件16的软件模块。
客户端计算设备浏览器22包括推送客户端代理32,它在接收到一个通知时,自动从应用服务器10重装在该通知中指出的、其内容已经被改变的页面。可以通过将其URL包括在改变通知中来标识已被改变的页面。因此,在客户端计算设备12中高速缓存的页面文件通过响应于应用17发出的改变通知、自动从应用服务器10重装它而被更新。推送客户端代理32可以构成在客户端计算设备12上运行的浏览器软件的一部分。改变通知可以由消息中介代理30作为对所有已向该消息中介代理30“登记”的客户端计算设备12的一般通知发出。在一个优选配置中,改变通知更具体地针对客户端计算设备12,这可以从下面的描述中清楚看到。
推送客户端代理32可以将在浏览器书签列表28中存储的加上书签的URL用作它的响应于接收到的改变通知而要自动更新的页面地址的列表。这些被发送到消息中介代理30,以便该代理30可以确定哪个——如果有的话——所接收的页面内容改变通知应当被发送到用户的客户端计算设备12。但是,优选的是,推送客户端代理32能使用户在浏览器22中作为独立列表34存储当这些页面改变时用户希望重装的那些URL。URL列表34可以包括用户从书签列表28中选择的URL的子集,或可以包括完全由用户独立地从书签列表28准备的列表。使用户能够构造独立的URL列表34——不论是作为书签列表28的子集或其他——的优点是用户经常以几乎随机的方式来从远处将他们感兴趣的任何网页加上书签,由此,书签列表28迅速地增大,并且变得难于管理。另外,虽然在列表28中的一些加上书签的站点的内容可能被定期更新,但是用户可能没有兴趣来使这些特定站点的高速缓存的内容保持更新。
除了在首次构造列表时向消息中介代理30发送URL列表34,推送客户端代理32还可在每次用户增加或修改该列表时向消息代理32重新发送该列表,或它可以仅发送对列表的增加或修改。或者,推送客户端代理32可以延迟发送URL列表34或任何对其的增加和/或修改,直到下一次它接收到改变通知。
应用17可以仅仅当网页的内容被实质改变和/或改变了实质的数量时向消息中介代理30发送改变通知。可以按照公知的方法来进行用于确定何时发出这样的通知的处理。
推送客户端代理32的设置使得响应于接收到的改变通知而在后台重装页面,即不必使浏览器22在客户端计算设备显示器24上显示被重装的内容,除非用户已经在查看该页面被高速缓存的内容。
推送客户端代理软件代码可以构成可在机器可读介质上提供并且作为在客户端计算设备12上的增强浏览器被装载和运行的、浏览器软件产品的插件部分。或者,推送客户端代理软件代码可以仅是从消息中介代理30或任何其他适当的代码源向客户端计算设备12的浏览器22下载的内容。
在本发明的第一实施例的一种具体实现方式中,消息中介代理30包括发表/预订引擎。发表/预订引擎是中介装置,用于服务范围在从服务器到手持计算设备的多个客户端设备。每个客户端设备可以是发表者或预订者。发表者向关于某个题目的中介器发送信息。预订者将它们对于具体题目的兴趣登记到中介器。中介器将从发表者接收的关于具体题目的信息中继到预订者。中介器可以对所接收的消息应用逻辑,以便根据它们的题目或内容来路由消息。发表/预订中介器的一个示例是国际商业机器(IBM)公司的Websphere MQ事件中介器。
在本发明的这种实现方式的环境中,发表者客户端包括应用17,预订者客户端包括客户端计算设备推送客户端代理32。客户端计算设备推送客户端代理32将URL标识为它所感兴趣的题目。当消息中介器30使用用于接收和中继消息(通知)的IBM Websphere MQ遥测传送协议(WMQTT)时,应用17和客户端计算设备推送客户端代理32分别通过在可配置的端口上的传送控制协议/因特网协议(TCP/IP)套接字收听器连接到消息中介器30。默认端口是1883,它已经被用于WMQTT的因特网赋号管理局(IANA)分配。推送客户端代理32作为预订者客户端,用于接收改变通知消息,改变通知消息自动触发浏览器插件推送客户端代理32中的代码的执行。在执行代码的过程中,该插件告诉浏览器22装载消息中指定的URL或请求它重新装入当前的页面。
推送客户端代理32可以不同的形式实现。如上所述,推送客户端代理32可以包括增强浏览器的一部分的插件代码。作为一种替换方式,推送客户端代理32可以包括在被下载的页面中隐藏的Java小应用程序等。在推送客户端代理32的这种替代实现方式中,使用WMQTT的Java客户端版本。
如图2所示,下载的页面37包括:对于用户隐藏的第一帧38,其中嵌入了Java小应用程序35;第二帧或主帧39,它占用了浏览器显示区域的全部,并且它在Java小应用程序以公知方式的控制下控制在主帧39中显示哪些页面。
隐藏的Java小应用程序作为预订者客户端,实时地经由消息中介代理30从应用17接收改变通知消息。当Java小应用程序接收到一个改变通知消息时,自动推送客户端触发机制使该小应用程序执行一段Java代码。这个推送客户端触发机制由WMQTT的Java客户端版本提供。在执行的Java代码中,所述小应用程序处理所接收的改变通知消息。该消息可以包括通过将其重新装到主帧39中而被更新的页面的URL,或者包括重装在浏览器22中被显示的当前页面的请求。
如上所述,包括Java小应用程序的推送客户端代理32也可以如上所述使用到消息中介代理30的套接字类型连接。
可以使用其他基于套接字的浏览器技术,诸如微软的ActiveX或COM对象。推送客户端代理32可以被实现为一个ActiveX或COM对象,它可以被下载到隐藏的Java小应用程序中和以类似的方式被使用。
参见图3,其中示出了本发明的第二优选实施例。它包括多个万维网服务器40,其中每个都以公知的方式驻存了多个网页;多个应用服务器41,用于响应于用户请求而动态地产生网页内容;多个内容提供商服务器42,用于提供由该内容提供商服务器42服务的应用/实体43的网页文件的新的和更新的内容;多个数据库45,用于向应用/实体43提供信息;以及多个客户端计算设备44,其中每个具有一个浏览器46,用于以与相对于第一实施例所讨论的类似方式来访问网页。应用/实体43可以驻留在应用服务器41或可以包括独立的应用服务器43。
在这个实施例中,消息中介器48驻存在消息中介服务器50上。所有的服务器40、41、42和50、应用/实体43、数据库45和客户端计算设备44都通过因特网52互连。
应用/实体43包括消息中介器48的发表者客户端,客户端计算设备推送客户端代理54包括所述消息中介器48的预订者客户端。每个客户端计算设备通过其相应的推送客户端代理54来登记它希望以更新形式保持的网页的URL。消息中介器当网页的内容被改变时实时地从应用/实体43接收改变通知(消息),并且将它们实时地中继到已经向消息中介器48登记了对于那个网页的URL的兴趣的那些客户端计算设备44。接收所述改变通知使得推送客户端代理54重新装入其内容已经被改变的网页。如参照第一实施例所讨论的,消息中介器48可以包括由IBM的Websphere MQ事件中介器表示的类型的发表/预订引擎。
像在第一实施例中那样,包括推送客户端代理54的推送客户端代码可以包括嵌入在可以运行在Java兼容浏览器46上的下载网页中的Java小应用程序等。以这种方式下载的Java小应用程序推送客户端代理使得浏览器将被下载的网页的URL发送到消息中介器48,以登记客户端计算设备对于接收那个URL的内容改变通知的兴趣。这种配置的缺点是如此形成的Java小应用程序推送客户端代理仅使能Java小应用程序被嵌入的网页的内容更新。
在一种替代配置中,Java小应用程序被浏览器46自动***随后从同一站点下载的网页中,并且执行相同的步骤以使得如上所述更新这些网页的内容。以这种方式,Java小应用程序推送客户端代理可以用于通过重装来更新一个网站的所有页面的所有内容。
本发明提供了一种实时手段,用于自动更新用户预先选择的网页组的内容,而不需要用户方的任何行为来启动每个网页的更新过程。这提供了许多优点,包括减少不必要的网页重装操作,并且因此降低网络通信量。

Claims (19)

1.一种在客户端计算设备上自动重装页面的方法,包括步骤:
在服务器上存储页面;
响应于在该服务器接收的来自客户端计算设备的浏览器的请求而向所述浏览器发送该页面的拷贝,通过将该客户端计算设备连接到服务器的网络发送所述页面的拷贝到浏览器;
更新该存储在服务器上的页面的内容;
同时向所述浏览器发送一个改变消息以通知它页面内容的改变;以及
在接收到所述改变消息时,使所述浏览器自动请求被更新的页面的拷贝。
2.按照权利要求1所述的方法,其特征在于,所述改变消息由通过服务器实现的应用产生。
3.按照权利要求1或权利要求2所述的方法,其特征在于,所述服务器是应用服务器。
4.按照权利要求3所述的方法,其特征在于,所述改变消息通过消息中介代理被中继到客户端计算设备的浏览器。
5.按照权利要求4所述的方法,其特征在于,所述消息中介代理包括发表/预订引擎,并且使用套接字传送协议来向浏览器传送所述改变消息。
6.按照权利要求4所述的方法,其特征在于,还包括步骤:客户端计算设备浏览器向消息中介代理/服务器登记页面的网络地址,以及所述消息中介代理/服务器根据所述登记的页面的网络地址来确定是否向所述浏览器发送所接收的改变消息。
7.按照权利要求6所述的方法,其特征在于,客户端计算设备浏览器向消息中介代理/服务器登记多个页面的网络地址,以便确定是否要向所述浏览器发送所接收的改变消息。
8.按照权利要求7所述的方法,其特征在于,由浏览器向消息中介代理/服务器登记的页面的网络地址包括浏览器的书签列表。
9.按照权利要求7所述的方法,其特征在于,由浏览器向消息中介代理/服务器登记的页面的网络地址包括用户选择的网络地址的列表。
10.按照权利要求8或9所述的方法,其特征在于,由浏览器向消息中介代理/服务器登记的页面的网络地址包括用户选择的浏览器书签列表的子集。
11.按照权利要求1所述的方法,其特征在于,用于使所述浏览器在接收到改变消息时自动请求被更新页面的拷贝的程序代码构成浏览器软件的一部分。
12.按照权利要求11所述的方法,其特征在于,从消息中介代理/服务器下载用于使所述浏览器在接收到改变消息时自动请求被更新页面的拷贝的程序代码。
13.按照权利要求1所述的方法,其特征在于,用于使所述浏览器在接收到改变消息时自动请求被更新页面的拷贝的程序代码包括嵌入在下载的页面中的Java小应用程序。
14.按照权利要求13所述的方法,其特征在于,浏览器在从同一站点随后下载的页面中嵌入Java小应用程序。
15.一种用于在客户端计算设备上自动重装页面的***,其特征在于,其包括:
用于存储页面的服务器;
具有浏览器的客户端计算设备;
网络,用于将服务器与客户端计算设备连接,其设置使得,响应于服务器接收的、来自浏览器的请求,将存储在服务器上的页面的拷贝通过网络发送到客户端计算设备的浏览器;
消息中介代理,用于接收页面内容已经被改变的消息,以及用于实时地向浏览器发送改变消息以通知它所述内容已经被改变;
其中所述浏览器被设置为,当接收到改变消息时,从服务器请求页面的更新拷贝。
16.按照权利要求15所述的***,其特征在于,所述服务器包括用于实现应用的应用服务器。
17.按照权利要求15或16所述的***,其特征在于,所述消息中介代理包括一个发表/预订引擎,所述浏览器包括推送客户端代理,消息中介代理和推送客户端代理通过传送控制协议/因特网协议套接字连接而连接。
18.按照权利要求15或16所述的***,其特征在于,所述浏览器包括推送客户端代理,所述推送客户端代理包括浏览器软件的插件部分。
19.按照权利要求15或16所述的***,其特征在于,所述浏览器包括推送客户端代理,所述推送客户端代理包括嵌入在由浏览器下载的页面中的Java小应用程序。
CNB2004100687091A 2003-11-19 2004-09-02 更新/重装在网络上浏览过的页面内容的方法和*** Expired - Fee Related CN100380864C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0326915.6A GB0326915D0 (en) 2003-11-19 2003-11-19 A method and system for updating/reloading the content of pages browsed over a network
GB0326915.6 2003-11-19

Publications (2)

Publication Number Publication Date
CN1620012A CN1620012A (zh) 2005-05-25
CN100380864C true CN100380864C (zh) 2008-04-09

Family

ID=29764064

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100687091A Expired - Fee Related CN100380864C (zh) 2003-11-19 2004-09-02 更新/重装在网络上浏览过的页面内容的方法和***

Country Status (3)

Country Link
US (1) US20050108418A1 (zh)
CN (1) CN100380864C (zh)
GB (1) GB0326915D0 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103207874A (zh) * 2012-01-17 2013-07-17 腾讯科技(深圳)有限公司 一种网页更新内容的提示方法及***

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101216A1 (en) * 2001-11-29 2003-05-29 International Business Machines Corporation Apparatus and method of linking sub-folders in a bookmark folder
KR100587563B1 (ko) * 2004-07-26 2006-06-08 삼성전자주식회사 상황인지 서비스를 제공하는 장치 및 방법
KR100807817B1 (ko) * 2004-12-17 2008-02-27 엔에이치엔(주) 버스형 네트워크 구조의 통신 네트워크 시스템에서서브시스템 사이의 로드를 조절하는 방법
KR100563553B1 (ko) * 2005-02-17 2006-03-27 (주)인트로모바일 서버 역할을 하는 개인용 컴퓨터를 이용하여 이동통신 단말기의 대기-모드 화면에 콘텐츠 정보를 제공하는 시스템, 그방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로읽을 수 있는 기록매체.
US20070100844A1 (en) * 2005-10-28 2007-05-03 International Business Machines Corporation System and method for dynamically updating web pages using messaging-oriented middleware
US20070100960A1 (en) * 2005-10-28 2007-05-03 Yahoo! Inc. Managing content for RSS alerts over a network
US7805670B2 (en) * 2005-12-16 2010-09-28 Microsoft Corporation Partial rendering of web pages
US20080010359A1 (en) * 2006-07-10 2008-01-10 Jeffrey Mark Achtermann Computer implemented method and system for managing server-based rendering of messages in a heterogeneous environment
WO2008021863A2 (en) 2006-08-08 2008-02-21 Wayport, Inc. Automated acquisition and maintenance of web-servable content via enhanced '404: not found' handler
GB0619972D0 (en) * 2006-10-10 2006-11-15 Ibm Method, apparatus and computer network for producing special effects to complement displayed video information
US8156141B1 (en) * 2006-12-13 2012-04-10 Emc Corporation Incorporated web page content
US8555159B1 (en) * 2006-12-13 2013-10-08 Emc Corporation Dynamic display of web page content for editing and review
US9037983B1 (en) 2006-12-13 2015-05-19 Emc Corporation User privilege based web page content editing
US7958103B1 (en) * 2007-03-30 2011-06-07 Emc Corporation Incorporated web page content
KR100906109B1 (ko) * 2007-06-20 2009-07-07 엔에이치엔(주) 3a 기반의 다양한 어플리케이션 상태를 제공하는유비쿼터스 프리젠스 서비스 방법 및 시스템
US8407712B2 (en) * 2007-08-31 2013-03-26 International Business Machines Corporation Updating workflow nodes in a workflow
US8381181B2 (en) 2007-08-31 2013-02-19 International Business Machines Corporation Updating a workflow when a user reaches an impasse in the workflow
US8793705B2 (en) * 2007-08-31 2014-07-29 Red Hat, Inc. Rich internet bus
WO2009076658A1 (en) * 2007-12-13 2009-06-18 Highwinds Holdings, Inc. Content delivery network
US8489731B2 (en) 2007-12-13 2013-07-16 Highwinds Holdings, Inc. Content delivery network with customized tracking of delivery data
US20090210882A1 (en) * 2008-02-18 2009-08-20 International Business Machines Corporation System and methods for asynchronously updating interdependent tasks provided by disparate applications in a multi-task environment
US9330191B2 (en) 2009-06-15 2016-05-03 Microsoft Technology Licensing, Llc Identifying changes for online documents
CN101620635A (zh) * 2009-08-07 2010-01-06 中兴通讯股份有限公司 页面数据获取方法及服务器、页面更新方法及服务器
CN101739458B (zh) * 2009-12-02 2013-03-27 中兴通讯股份有限公司 多语化资源的更新方法和***
US8738686B2 (en) * 2009-12-30 2014-05-27 Teradata Us, Inc. Dynamic resource management
US10002202B2 (en) * 2010-05-28 2018-06-19 Microsoft Technology Licensing, Llc Realtime websites with publication and subscription
US8843599B2 (en) * 2010-06-26 2014-09-23 Cisco Technology, Inc. Storing and synchronizing media device information
CN101895873B (zh) * 2010-07-14 2015-08-12 中兴通讯股份有限公司 移动终端的Java应用的更新方法、服务器和移动终端
CN102810065B (zh) * 2011-05-31 2016-04-27 国际商业机器公司 用于加载程序模块的方法和***
US8838808B2 (en) * 2011-09-30 2014-09-16 Apple Inc. Asynchronous communication in web applications
US8788627B2 (en) * 2011-09-30 2014-07-22 Apple Inc. Interactive web application framework
US9729631B2 (en) 2011-09-30 2017-08-08 Apple Inc. Asynchronous data manipulation
US8782127B2 (en) * 2011-09-30 2014-07-15 Apple Inc. Notification based web applications
CN103139260B (zh) * 2011-11-30 2015-09-30 国际商业机器公司 用于重用html内容的方法和***
CN102638570A (zh) * 2012-03-15 2012-08-15 中兴通讯股份有限公司 一种嵌入式网络代理***、终端设备及代理方法
US9183314B2 (en) * 2012-04-16 2015-11-10 International Business Machines Corporation Providing browsing history on client for dynamic webpage
US8291041B1 (en) 2012-05-31 2012-10-16 Google Inc. Systems and methods for disseminating content to remote devices
CN102831144B (zh) * 2012-06-12 2016-01-20 优视科技有限公司 基于移动终端的书签交互处理方法、装置和***
US8565689B1 (en) 2012-06-13 2013-10-22 All Purpose Networks LLC Optimized broadband wireless network performance through base station application server
US9882950B2 (en) 2012-06-13 2018-01-30 All Purpose Networks LLC Methods and systems of an all purpose broadband network
CN102929920B (zh) * 2012-09-19 2016-04-20 北京奇虎科技有限公司 基于Web信息抽取的软件更新信息的监控方法和装置
US9406082B2 (en) * 2012-10-05 2016-08-02 Redfin Corporation Multiplexing web requests for improved performance
CN103036989B (zh) * 2012-12-17 2016-11-09 北京奇虎科技有限公司 套接字服务器及套接字服务方法
CN103036990B (zh) * 2012-12-17 2017-03-08 北京奇虎科技有限公司 一种浏览器客户端
CN103024050B (zh) * 2012-12-17 2015-11-25 北京奇虎科技有限公司 分发器和对多个服务器进行分发的方法
CN103024051B (zh) * 2012-12-17 2016-02-17 北京奇虎科技有限公司 一种进行服务器分发的装置、方法和相应***
CN103064899B (zh) * 2012-12-17 2016-06-22 北京奇虎科技有限公司 一种分发信息数据库***
CN103024052B (zh) * 2012-12-17 2016-08-10 北京奇虎科技有限公司 实现浏览器数据同步的***和方法
CN103024049B (zh) * 2012-12-17 2016-03-30 北京奇虎科技有限公司 实现浏览器数据同步的***
CN102984278B (zh) * 2012-12-17 2016-06-22 北京奇虎科技有限公司 实现浏览器数据同步的***和方法
US9239878B2 (en) 2012-12-19 2016-01-19 Amazon Technologies, Inc. Interactivity analyses of web resources based on reload events
CN103024084B (zh) * 2013-01-07 2016-05-11 北京思特奇信息技术股份有限公司 一种基于http协议的缓存刷新***和缓存刷新方法
CN105659554A (zh) * 2013-09-29 2016-06-08 迈克菲公司 基于普遍度的信誉
US9170808B2 (en) * 2013-11-07 2015-10-27 Sap Se Dynamic containerization
US10338896B2 (en) 2014-03-21 2019-07-02 Ptc Inc. Systems and methods for developing and using real-time data applications
US9467533B2 (en) 2014-03-21 2016-10-11 Ptc Inc. System and method for developing real-time web-service objects
CN104270471B (zh) * 2014-10-24 2017-08-08 中国建设银行股份有限公司 一种实现新功能提醒的方法、装置及***
US10616356B2 (en) * 2015-02-24 2020-04-07 Radware, Ltd. Optimization of asynchronous pushing of web resources
US10630758B2 (en) 2015-05-06 2020-04-21 Radware, Ltd. Method and system for fulfilling server push directives on an edge proxy
US20170024716A1 (en) * 2015-07-22 2017-01-26 American Express Travel Related Services Company, Inc. System and method for single page banner integration
CN116610884A (zh) * 2015-10-20 2023-08-18 维尔塞特公司 使用自动浏览群集更新提示模型
GB201522315D0 (en) * 2015-12-17 2016-02-03 Irdeto Bv Securing webpages, webapps and applications
US20170242859A1 (en) * 2016-02-24 2017-08-24 David Sazan Digital media content comparator
CN106649792B (zh) * 2016-12-28 2021-02-05 北京奇虎科技有限公司 一种页面访问方法及装置
CN106886570B (zh) * 2017-01-16 2020-11-13 网宿科技股份有限公司 页面处理方法及装置
CN107908634B (zh) * 2017-08-29 2022-02-22 深圳壹账通智能科技有限公司 浏览器的缓存控制方法及移动终端
EP3662370B1 (en) 2018-01-08 2023-12-27 All Purpose Networks, Inc. Internet of things system with efficient and secure communications network
US10827019B2 (en) 2018-01-08 2020-11-03 All Purpose Networks, Inc. Publish-subscribe broker network overlay system
CN109714249B (zh) * 2018-12-28 2021-09-07 武汉斗鱼网络科技有限公司 一种小程序消息的推送方法及相关装置
CN110311980B (zh) * 2019-07-03 2022-01-25 创新先进技术有限公司 一种数据下载方法及装置
US11269612B2 (en) * 2019-12-10 2022-03-08 Paypal, Inc. Low latency dynamic content management
CN112328922A (zh) * 2020-11-30 2021-02-05 联想(北京)有限公司 一种处理方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5813007A (en) * 1996-06-20 1998-09-22 Sun Microsystems, Inc. Automatic updates of bookmarks in a client computer
CN1194413A (zh) * 1997-03-26 1998-09-30 国际商业机器公司 在服务器上预先高速缓存数据的方法和设备
US5978828A (en) * 1997-06-13 1999-11-02 Intel Corporation URL bookmark update notification of page content or location changes
US6055570A (en) * 1997-04-03 2000-04-25 Sun Microsystems, Inc. Subscribed update monitors
JP2002007463A (ja) * 2000-06-21 2002-01-11 Kimimasa Yamakawa コンテンツ配信システム及び配信サーバのドキュメントファイル配信方法
CN1421809A (zh) * 2001-11-27 2003-06-04 英业达股份有限公司 可令网络客户端依个人权限整合多个网页伺服器的方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345288B1 (en) * 1989-08-31 2002-02-05 Onename Corporation Computer-based communication system and method using metadata defining a control-structure
US6807558B1 (en) * 1995-06-12 2004-10-19 Pointcast, Inc. Utilization of information “push” technology
US7523191B1 (en) * 2000-06-02 2009-04-21 Yahoo! Inc. System and method for monitoring user interaction with web pages
US7020697B1 (en) * 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US20020124049A1 (en) * 2000-12-29 2002-09-05 Leonld Gorodetsky Method and apparatus for asynchronously pushing pages to browsers
US7987246B2 (en) * 2002-05-23 2011-07-26 Jpmorgan Chase Bank Method and system for client browser update

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5813007A (en) * 1996-06-20 1998-09-22 Sun Microsystems, Inc. Automatic updates of bookmarks in a client computer
CN1194413A (zh) * 1997-03-26 1998-09-30 国际商业机器公司 在服务器上预先高速缓存数据的方法和设备
US6055570A (en) * 1997-04-03 2000-04-25 Sun Microsystems, Inc. Subscribed update monitors
US5978828A (en) * 1997-06-13 1999-11-02 Intel Corporation URL bookmark update notification of page content or location changes
JP2002007463A (ja) * 2000-06-21 2002-01-11 Kimimasa Yamakawa コンテンツ配信システム及び配信サーバのドキュメントファイル配信方法
CN1421809A (zh) * 2001-11-27 2003-06-04 英业达股份有限公司 可令网络客户端依个人权限整合多个网页伺服器的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103207874A (zh) * 2012-01-17 2013-07-17 腾讯科技(深圳)有限公司 一种网页更新内容的提示方法及***
CN103207874B (zh) * 2012-01-17 2017-05-10 腾讯科技(深圳)有限公司 一种网页更新内容的提示方法及***

Also Published As

Publication number Publication date
CN1620012A (zh) 2005-05-25
US20050108418A1 (en) 2005-05-19
GB0326915D0 (en) 2003-12-24

Similar Documents

Publication Publication Date Title
CN100380864C (zh) 更新/重装在网络上浏览过的页面内容的方法和***
CN100545833C (zh) 对抢先和预测的页面进行缓存以提高站点导航的方法和***
US6112240A (en) Web site client information tracker
US6993590B1 (en) Method of creating data streams for user-specific usage data gathering systems
US6366947B1 (en) System and method for accelerating network interaction
CA2734774C (en) A user-transparent system for uniquely identifying network-distributed devices without explicitly provided device or user identifying information
US7949702B2 (en) Method and apparatus for synchronizing cookies across multiple client machines
CN101523393B (zh) 本地存储基于web的数据库数据
US20040172389A1 (en) System and method for automated tracking and analysis of document usage
US20020112078A1 (en) Virtual machine web browser
KR20090073199A (ko) 웹 기반 애플리케이션의 오프라인 실행
CN1234086C (zh) 用于高速缓存文件信息的***和方法
US20140006487A1 (en) Methods for making ajax web applications bookmarkable and crawable and devices thereof
AU2002350141A1 (en) Methods and systems for preemptive and predictive page caching for improved site navigation
WO2004029834A1 (en) Method, system, and program for maintaining data in distributed caches
JP3764291B2 (ja) 情報配信システム、移動計算機、情報サーバ装置、キャッシュサーバ装置及び先読みキャッシュ処理方法
US6672775B1 (en) Cross-machine web page download and storage
RU2316131C2 (ru) Способ хранения страниц в памяти мобильного устройства (варианты) и мобильное устройство для его осуществления
WO2001061560A1 (en) Method and system for using pervasive device to access webpages
WO2001072010A2 (en) Method and apparatus for demand based paging algorithm
WO2002019088A1 (en) System and method of sending chunks of data over wireless devices
US20070288591A1 (en) Method, system, and program product for caching application data in a browser cache
US6766313B1 (en) System and method for caching and retrieving information
WO2002065359A1 (en) Electronic information management system
EP1026608A2 (en) Method and apparatus for logging web user activity using client-side support

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080409

Termination date: 20091009