CN1210409A - 服务器侧的异步格式管理 - Google Patents
服务器侧的异步格式管理 Download PDFInfo
- Publication number
- CN1210409A CN1210409A CN98118415A CN98118415A CN1210409A CN 1210409 A CN1210409 A CN 1210409A CN 98118415 A CN98118415 A CN 98118415A CN 98118415 A CN98118415 A CN 98118415A CN 1210409 A CN1210409 A CN 1210409A
- Authority
- CN
- China
- Prior art keywords
- request
- computer
- replying
- stored
- web browser
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephonic Communication Services (AREA)
Abstract
与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的方法、系统和计算机程序产品,是通过在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、对由第二台计算机可访问的一个服务器应用的请求而实现的。本发明中的方法、系统和计算机程序产品还能对Web浏览器的异步操作进行操作和管理,其中的异步操作由服务器侧截收模块执行。
Description
本发明涉及远程/移动式计算,更具体来说,涉及利用Web浏览器/Web服务器的通信模型进行的远程/移动式计算。
近来对“信息高速公路”的宣传和重视,提高了人们对因特网作为一种大众传媒的认同。因特网作为在多个网络间通讯和交互的一种切实可行的传媒工具的这种广泛认同,也建立了在因特网的标准化的计算机网络间交互作用的协议基础上建立的广大用户基地。
因特网是客户机-服务器关系的一个范例,其中,因特网客户机(浏览器)与因特网服务器通信。为了向更多用户提供接入因特网的机会,客户机与服务器所用的通信协议和语言已经被标准化。这些协议包括,超文本传输协议(HTTP)-一种在客户机与服务器之间使用的通信协议,传输控制协议/互联网协议(TCP/IP)-其中的TCP部分是用于计算机或应用程序之间通信的传输专用协议。被标准化了的还有一种客户机与服务器之间的通信语言-超级文本标记语言(HTML)。
在环球网(World Wide Web)的客户机/服务器应用程序的上下文中,客户机可以是作为用户界面的Web浏览器。Web浏览器能向适当的Web服务器发送用户请求,并将从Web服务器返回的HTML数据进行格式化并显示出来。Web浏览器还能对HTML数据进行评估,判断HTML数据中是否嵌入的超链接语句。HTML数据中超链接语句要求随后将由浏览器启动的浏览器请求。Web服务器充当客户机的服务器,它处理Web浏览器的请求,将所请求的结果以HTTP数据流的HTML数据部分返回给浏览器。
图1中表示了一种基于因特网的系统的基本通信结构。图1中,Web浏览器10与Web服务器20在通信链路15上通信。这种通信链路一般是局域网连接、广域网连接、通过电话线的连接或者是这三种方式的组合。Web浏览器10与Web服务器20用TCP/IP进行通信。大多数因特网的通信中,Web浏览器10与Web服务器20的通信使用普通的通信协议HTTP,该协议通过Web浏览器10与Web服务器之间的TCP/IP链接在Web浏览器10与Web服务器之间传输。在Web浏览器10与Web服务器20之间实际被传递的数据是如上所述的HTTP数据对象(例如HTML数据)。Web服务器20可以是个代理,作用是接收来自许多Web浏览器的Web浏览器通讯,选择路由将它们送到适当的服务器。
Web浏览器/Web服务器以及它们的公用信息与传输协议HTML和HTTP的流行,使Web技术作为网络访问获取信息的通用界面迅速为人们接受。此外,因为在Web浏览器与Web服务器之间通信所用的协议和语言是标准化了的,所以,用户无论用Netscape NavigatorTM、NCSA MosaicTM、WebExplorerTM还是任何其它Web浏览器来访问网络信息,通信协议和语言都是一样的。使用Web浏览器与因特网相连接的广大的现成用户基础,以及用HTTP定义的公用网关接口(CGI-Common Gateway Interface)书写Web应用服务器的容易,使Web技术对于各类基于格式的应用(forms-based applications)具有很大吸引力。
在因特网得到越来越多认同和欢迎的同时,移动计算也越来越流行。膝上型电脑、笔记本电脑、个人数字助手/个人通讯助手(PDA/PCA-Personal Digital/Communication Assistants)等便携式设备的使用,导致对无线通讯需求的增加。然而,如果在Web上下文中使用无线广域网、蜂窝式通信和分组式无线电通信,它们都有一些共同的限制。通信的单位字节费用高、应答速度慢、带宽低以及可靠性差等缺点,阻碍无线技术在无状态的(stateless)环球网通信协议中的应用。而且,因为Web通信协议是无状态的,所以,假若通信不是自包含式的,那么通过无线连接方式传递的请求通信的次数和每次请求的数据量就会比实际需要的大。
此外,Web浏览的内在机制和协议是以传统网络模型作为蓝本开发出来的。开发这些机制时基于了这样的默认假设,即所涉及的计算机是通过带宽高、费用低、性能可靠的链路相互连接的。然而与有线的局域网或广域网环境截然不同的是,移动式链路一般来说带宽低、费用高、性能不可靠。有些移动式连接方式是比另外一些的负担要小-比如,一个简单的拨号调制解调器就比分组式无线电通信更快更便宜-但是与局域网的联络方式相比,它们都慢得出奇。移动式连接的可靠性也较低:由信号衰减、堵塞及其它问题导致掉线并非不常见。因此,针对局域网环境设计的诸如Web浏览器等应用程序,在网络受到制约的设置环境中的操作性能经常很差。
此外,移动式环境还产生断开(disconnect)操作的问题。标准Web浏览-以及许多现有的网络应用-假设,断开是一种比较罕见的出错情况。一般来说,当客户机与服务器断开时,操作就失败。
弱连接和断接的可能性导致了移动式环境中的第三种问题:用户连接的动态性质。同一用户在不同的时刻可能是强连接的(局域网)、弱连接的(蜂窝式或其它移动式链路)或断开的。
在资源受到限制的或无线通信方式代表的不可靠通信环境中使用浏览器时,可用性差和用户生产率低有若干原因。第一,浏览器协议是同步的,即用户必须等一个请求完成后才能发出另一个请求。当无线传输速度慢、因特网或内特网(intranet)通信量拥挤或者Web服务器负载过重,导致长时间的延迟时,用户会变得灰心丧气,一无所获。
第二,同步请求/应答模式固有的突发性,在速度慢的链路或基于时间成本的链路上会变成一个重要问题。在有线的局域网上,服务器的应答时间通常是焦点问题,但是在无线的环境中,带宽和等待时间一般是主导因素。(分组式无线电通信中的等待时间可能是数秒的数量级。)第三,通常的同步请求/应答模式在出现自愿的或不自愿的断开时,完全不能工作。如果请求不能立即得到满足,一般是返回一个错误码,用户稍后必须明确地重新发出请求。
鉴于以上叙述,有必要对在其特点是对连接性能和可靠性的级别进行改变的移动式计算环境中的Web浏览器/Web服务器的操作加以改进。
鉴于以上讨论,本发明的一个目的是,减少弱连接或断开环境中浏览器通信的同步性质的影响。
本发明的另一个目的是,克服浏览器在传输时间、等待时间或其它通信限制降低浏览器/服务器通信的应答速度的远程或移动式环境中的限制。
本发明的另一个目的是,在其本质上对用户透明的移动式环境中提供浏览器功能。
本发明的另一个目的是,使连接状态对浏览器透明,以便能在移动式环境中利用现有的浏览器。
本发明的这些目的和其它目的,是通过一些方法、系统和计算机程序产品实现的,这些方法、系统和计算机程序产品用于与在暂时或断续连接到第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信,通信方法是在第二台计算机的一个持久请求队列中,存储该Web浏览器向一个服务器应用程序的一个请求,该第二计算机可访问该服务器应用程序。对来自客户机应用程序的请求的响应是,向Web浏览器提供中间应答。将所储存请求提供给服务器应用程序,并接收服务器应用程序的应答。然后将收到的应答提供给在远程/移动式处理系统上执行的Web浏览器。
通过在第二台计算机(服务器侧)处的请求队列中存储请求并向Web浏览器提供中间应答,可以实现Web浏览器的异步操作。此外,通过在通信的服务器侧存储请求,还能在与远程/移动式处理系统的连接结束时处理这些请求。这样,本发明就克服了弱连接的缺陷。在慢速度的环境中,本发明允许用户无须等待对请求的应答就能上载数个请求,并在请求被进行后台处理时继续工作。
在本发明的一个具体实施例中,要判定从浏览器收到的请求是不是一个被延迟处理的请求。如果该请求不是一个被延迟的处理请求,就不存储该请求,而是直接处理之,并将应答提供给浏览器。
一旦请求被接受并在第二台计算机的请求队列中存储,远程/移动式处理系统就可以与第二台计算机断开。在这种情况下,如果远程/移动式处理系统要接收对所储存的请求的应答,就要重新接入第二台计算机。在一个具体的实施例中,可以将被存储的请求的一个列表提供给Web浏览器,用于向用户显示。用户通过Web浏览器,可以从该被储存的请求列表中选择被存储的请求列表中的一项。然后,对列表中该选定项的应答被提供给Web浏览器,用于向用户显示。此外,还可以在第二台计算机收到应答之后,通知用户可得到所收到的应答。如果用户要求该应答,就将该应答提供给Web浏览器。
因为在请求的发送和接收中可能会用到多个连接,所以本发明的另一个实施例建立与用户标识符关联的一个持久请求队列。在这种情况下,当远程/移动式处理系统重新接入第二台计算机时,远程/移动式处理系统可以向第二台计算机提供一个用户标识符。第二台计算机然后将其收到的、对与所收到的用户标识符关联的持久请求队列中的请求的应答,提供给远程/移动式处理系统。因此,通过将用户标识符与请求队列相关联,许多用户可以接入相同的第二台计算机并且只访问它们自己的请求队列。于是就可以提供一个安全的应答和请求队列,以防止对某个请求队列或与请求队列关联的应答的越权存取。
本发明的另一个实施例中,对收到应答进行分析,判定收到的应答是否嵌入至少一个请求。如果收到的应答中嵌入了请求,就将该嵌入的请求提供给由该嵌入的请求所指定的服务器。在第二台计算机接收并存储对嵌入的请求的应答。然后,将储存的应答与持久请求队列中储存的请求关联。然后,将储存的所接收的应答与储存的对嵌入的请求的应答提供给Web浏览器。
本发明的另一个实施例中,将对某请求的应答存储在第二台计算机,并在与某用户标识符关联的持久请求队列中储存的该请求关联。这样就可以建立许多持久请求队列,其中的每个持久请求队列与一个用户标识符关联。这样就能在许多持久请求队列中存储来自许多浏览器的请求,每个Web浏览器的每个用户的请求被存储在与该用户的用户标识符关联的持久请求队列中。然后就可以将这许多请求提供给关联的Web服务器,并从这些关联的Web服务器接收许多应答。所收到的许多应答可以这样提供给许多Web浏览器,即将对某个请求的应答提供给该请求所来自的浏览器。
在本发明的另一个实施例中,与在第二台计算机暂时或断续连接的远程/移动式处理系统上执行的Web浏览器的通信方法是,将Web浏览器对第二台计算机可访问的服务器应用程序的请求,存储在第二台计算机的持久请求队列中。用客户机标识与被存储请求建立关联关系,将储存的请求提供给服务器应用程序。从服务器应用程序接收应答,并将应答存入驻留在第二台计算机上的服务器侧高速缓冲存储器。然后将储存的所接收的应答与所储存的请求关联,并提供给与客户机标识所关联的Web浏览器,该客户机标识与所存储的该请求相关。
本发明的另一个方面,在与客户机标识符关联的Web浏览器随后的连接期间,提供该储存的请求。此外,在将所储存的请求提供给服务器应用程序之前,可以接受对请求的修改。可以对请求队列中所储存的请求进行修改,用修改后的请求替换所储存的请求。
本发明的另一个实施例中,判定从浏览器接收的请求是否是被延迟处理的请求。如果该请求是被延迟处理的请求,就将该请求存储在请求队列中并作相应处理。
本发明的另一个实施例中,将许多服务器的应答与持久请求队列中的单独一项关联。响应于对该项的请求,将与持久请求队列中这个项关联的这些应答提供给远程/移动式处理系统。
本领域的熟练人员进一步会明白,本发明可以实现为一种方法、装置/系统或计算机程序产品。
图1是一个典型的Web浏览器/Web服务器系统的方框图;
图2是本发明的使用一个客户机截收器(intercept)和一个服务器截收器的实施例中的Web浏览器/Web服务器系统的方框图;
图3是按照本发明的客户机侧截收模块的方框图;
图4是按照本发明的服务器侧截收模块的方框图;
图5是按照本发明的服务器截收模块从客户机侧截收模块接收一个请求的操作的流程图;
图5a是按照本发明的服务器截收模块从客户机接收一个请求的操作的流程图;
图6是按照本发明的服务器截收模块接入客户机的操作的流程图;
图7是按照本发明的一个方面,断开或延迟处理操作的的流程图;
图8是按照本发明的一个方面,远程/移动式数据处理系统上接收对浏览器请求的应答的操作的流程图;
图9是按照本发明的一个方面,与修改请求有关的操作的流程图;
以下结合各附图,对本发明作更详细的描述。附图中表示了本发明若干较佳实施例。不过,本发明可以有许多不同的形式来实现,而不应被视为局限于本文所举各实施例。本文中提供的实施例,旨在透彻地说明本发明,向本领域的熟练人员全面地传达本发明的范围。本说明书自始至终用相同的数字代表相同的单元。本领域的熟练人员会明白,本发明可以用方法或设备来实现。所以,本发明的体现形式,可以全部是硬件,全部是软件,或是软件硬件两方面的综合。
本文对本发明的描述,是按流程图的顺序或者按本发明的特点进行的。应当明白,流程图的每个功能块,以及流程图的各功能块的组合,都可以由计算机程序指令实现。可以将这些程序指令提供给处理机以产生一个机器,使得在处理机上执行的指令能生成流程图功能块中规定的功能的装置。计算机程序指令可由处理机执行,使处理机完成一系列操作步骤,产生一个计算机实现的过程,使得处理机上执行的指令能提供实现流程图功能块中规定的功能的步骤。
因此,各流程图功能块支持对执行特定功能的装置的组合,对执行特定功能的步骤的组合,以及执行特定功能的程序指令装置。还应当明白,流程图的每个功能块以及流程图功能块间的组合,都能由执行指定功能或步骤的基于硬件的专用系统实现,或者由专用硬件与计算机指令的组合实现。
图2表示本发明的一个实施例。图2中,Web浏览器10与客户机侧截收模块30通信。Web服务器20与服务器侧截收模块40通信。客户机侧截收模块30与服务器侧截收模块40通过通信链路35进行通信。Web浏览器10与客户机侧截收模块30处于第一个计算机5中。Web服务器20与服务器侧截收模块40处于第二台计算机6中。第一台计算机5与第二台计算机6通过外部通信链路35进行通信。第一个计算机5最好是一个远程/移动式数据处理系统。本文中“远程/移动式”的意思是“暂时和断续连接的”,其中暂时的意思是“持续有限时间”,断续的意思是“有间隔地不连续或偶尔的时进时出”。远程/移动式数据处理系统中也可以含有-例如通过网络-远程访问其它系统的数据处理系统。
Web浏览器10最好是用超文本传输协议(HTTP)和超文本标记语言(HTML)与同样使用HTTP和HTML的因特网Web服务器20通信的因特网Web浏览器。操作过程中,Web浏览器10会输出一个被客户机侧截收模块30截收的一个HTTP数据流。客户机侧截收模块30对HTTP数据流的截收可以通过利用TCP/IP环回部件来完成,其中客户机侧截收模块30驻留在带网络号127的一个IP地址上,例如127.0.0.1。客户机侧截收模块30然后将该HTTP数据流转换成一种客户机/服务器专用协议,并将该客户机/服务器专用数据流传送到外部通信链路35。服务器侧截收模块40接收客户机/服务器专用数据流,并将其重新组织成对应于通信起源端的Web浏览器的源HTTP数据流。然后,将重组的HTTP数据流传送到服务器20。Web服务器20以因特网Web服务器的标准方式对该HTTP数据流作出响应。本领域的熟练人员会明白,Web服务器也可以是一个允许有许多浏览器连入因特网的代理。
例如当为响应浏览器对某特定URL主页的请求而要传送到Web浏览器10的数据被Web服务器20收到时,Web服务器20输出一个对应于要发往Web浏览器10的通讯的数据流。该起源于Web服务器的通讯被服务器侧的截收模块40截收,转换成客户机/服务器专用数据流。然后,该对应起源于Web服务器的通讯的客户机/服务器专用数据流,通过外部通信链路35,被从第二台计算机发送到第一台计算机。客户机/服务器专用数据流被客户机侧的截收模块30接收,该对应起源于Web服务器的通信的源HTTP数据流被重组,提供给Web浏览器10。
本发明一个具体实施例中,外部通信链路35是一个无线通信链路。在这个例子中,为了获得用户能接受的系统性能,需要在两方面减少外部通信链路35上的通信量,一方面是通信的频率,一方面是必须在外部通信链路35上传送的信息量。为此,本发明优选地采用高速缓存(caching)、差分外(differencing)和协议减缩(protocol reduction)等技术,尽量减少需要在外部通信链路35上传送的通信量。实现这些技术的方法是,将无状态的或随机的HTTP协议转换成使用客户机和服务器专用的数据的客户机/服务器专用协议,以减少通信量和通信的频率。
实际过程中,客户机侧截收模块30和服务器侧截收模块40对Web浏览器和Web(代理)服务器都是透明的,因此,可用于任何Web浏览器。客户机侧截收模块30和服务器侧截收模块40都能高速缓存图形和HTML对象。如果浏览器请求的URL指定客户机侧截收器的高速缓冲存储器内的一个对象,该对象就作为浏览器的应答而被立即返回。高速缓存功能保证了客户限定的时间间隔内高速缓冲存储器的完整性。服务器侧截收器的高速缓冲存储器中存储着许多来自被请求的Web服务器的应答。如果从客户机侧截收器接收的被请求URL被高速缓存在服务器侧截收器的高速缓冲存储器中,它就被作为对该请求的应答而返回。
本发明优选地利用一个虚拟套接字系统,例如美国专利《客户机/服务器通信系统》中所述的系统(《CLIENT/SERVER COMMUNICATION SYSTEM》-申请号为08/601,804,律师案号RA895-0154),其作为参考引用在本说明书中。本发明还优选地利用了数据减缩技术,关于这些技术的说明可参见美国专利《时间相干的高速缓存系统》(《TIME COHERENT CACHING SYSTEM》-申请号08/601,753,律师卷号No.RA9-95-086),和美国专利《差分通信系统》(《DIFFERENCING COMMUNICATION SYSTEM》-申请号为08/601,903),其作为参考引用在本说明书中。
尽管对本明已作的和将作的描述,针对的是单个Web浏览器应用程序和单个Web服务器应用程序,本领域的熟练人员会明白,对与一个Web服务器关联的许多Web浏览器,也能取得本发明的益处和优点。因此,本发明的方法、装置和程序产品与许多浏览器相连接,每个浏览器均与一个客户机侧截收模块通信,而这些客户机侧截收模块则与Web服务器或Web代理的服务器侧截收模块进行通信。
此外,尽管本文中是针对一个客户机侧截收模块和一个服务器侧截收模块描述本发明的,本领域的熟练人员会明白,本发明只需要一个服务器侧截收模块。因此,本发明不应被视为局限于既有一个客户机侧截收模块和一个服务器侧截收模块的系统。
本发明还具有异步请求和应答处理的功能,它允许用户在以前的请求还未完成时能继续提出请求。异步请求和应答处理最好要在客户机侧截收模块和服务器侧截收模块二者之间协调,以提高用户使用的灵活性,取得优良的操作性能。请求被记录在内部,用于由客户机侧截收模块、服务器侧截收模块、或二者进行后台处理。请求完成后的结果保存和状态更新是异步进行的。用户在请求完成时会得到通知(也可以不通知),可以转换到状态页去看看一个或许多请求的状态。每个请求的状态项,含有请求的状态信息(尚未启动、正在进行、已经完成),如果请求已经被完成,状态项中还含有指向应答页的链路。
本发明也具有在远程/移动式数据处理系统未连入能访问服务器应用的计算机时进行断开操作的功能。用户既能在同步方式下操作,能在异步方式下操作。无论在哪种方式下,如果检测到失去联络,或者如果通信不可能(例如超出了信号范围),就可以将请求保存在等待队列等待以后处理,也可以将请求在服务器侧截收模块排队,在断开期间处理,重新连接时检索应答。这种功能使用户能在脱机状态下继续工作。下面结合图3、图4和图5~10的流程图说明这些操作。
图3表示采用本发明具体实施例的一个远程/移动式数据处理系统。如图3所示,远程/移动式数据处理系统5中有一个在远程/移动式数据处理系统5上执行的应用程序,例如Web浏览器10。来自Web浏览器10的请求被HTTP请求截收器31截收,放入请求队列32中。请求队列32中的请求由HTTP请求队列处理机33处理,处理机33在与具有能访问请求中所规定的服务器的第二台计算机建立连接时执行请求队列32中的请求。这些请求被处理后,为每个请求启动一个服务线程(service thread)34以执行该请求。将对请求的应答存入高速缓冲存储器35并与生成该请求的请求队列中的该请求关联。图3中以虚线表示这种关联关系。图3中从请求队列的各项目到高速缓冲存储器的实线,代表请求项与用于产生请求的格式(form)的关联关系。这种关联关系使用户即使在请求已经被生成后也能对该请求进行编辑。一种可选方案是,将请求和应答二者都与队列中的请求项关联,使请求和应答二者都能被提供给用户。
请求队列32是一个请求表,其内容是HTTP请求截收器31从浏览器收到的请求及其状态和控制信息。每个请求单元中有从浏览器接收的全部信息(HTTP标题和任何主体)。这样就能在晚些时间将请求转发到网络。每个请求单元中还有与该请求关联的状态信息。状态信息包括处理请求的进展情况小结和其余尚待执行工作的列表。
也可以将特殊的处理指令与请求队列中的请求相关联。例如,在无线通信环境中,页面内嵌图像的下载费用通常过于昂贵。如果为请求进行了图像压缩,那么这个处理控制信息就被放在请求单元中。请求队列在客户机会话期保持不变。
请求的内部数据由一个属性集合组成。属性集合中的每个属性是一个名称-数值对。请求被创建时,只有给定的属性才含有浏览器请求。随着处理的进行,描述处理进展、从浏览器返回的状态信息等等的属性被添加入属性集合。某些属性,例如进展说明,是按请求描述的。属性也可以按队列描述,这种情况下要对加到队列的全部单元的处理进行控制。按队列描述的属性用于支持根据其源情况或请求特点以不同方式处理请求的许多队列。因此依照本发明,可以创建一个以上的请求队列,请求可以在它们被客户机侧截收器收到时被自动分类到适当的队列,也可以在用户输入时被人工分类。
因为本发明允许采用设计用于同步联机处理的浏览器之类的应用程序进行脱机处理,所以断开和异步操作需要新的用户接口。因此依照本发明,如果用户的请求可以从客户机侧的高速缓冲存储器得到满足,就可以立即提供应答,而标准化浏览器接口保持不变。然而,如果高速缓冲存储器中没有,就可以用与本发明脱机处理相关联的机制和接口扩展浏览器的语义。
因为本发明的浏览器是一段不可改变的代码,所以,每当远程/移动式数据处理系统正在异步操作或者与第二台计算机断开、不能满足对高速缓冲存储器的请求或者没有出现客户机侧截收时,可以返回一个替换页(stand-in page)。替换页的内容是对已发生事件的解释-“您的请求已经排上队等待以后的处理”-并且可以依要求显示所有等待处理的请求的当前状态。注意,就浏览器而言,该替换页就是对请求的应答。换言之,浏览器保留请求/应答机制不变,而本发明的截收模块处理请求所对应的细节。此外,对于断开的请求和异步请求二者都可以采用这一相同机制,即向浏览器返回一个信息页作为对请求的应答。
一种可选方案是,返回到当前页面,而不是出现一个中间性的回应。这种选择可以通过向浏览器返回代码204而实现。虽然从用户的角度来看,揿按连接时浏览器还停留在原来的页面上,但实际上本发明的截收模块在后台把该请求排入了队列。
图4表示依照本发明的服务器侧截收模块40的一个实施例。该服务器侧截收模块驻留在图2的第二台计算机6上。来自客户机侧截收模块30或直接来自浏览器10的通信,由输入数据处理机200接收,并有选择地被放置到请求队列230中。因为一个服务器侧截收模块可以接收来自许多客户机侧模块或浏览器的通信,所以服务器侧截收模块最好为每个利用异步处理的客户机维护一个请求队列。图4中以队列230、231和232表示与不同客户机关联的请求队列。这些请求队列的结构可以都与请求队列230相同,只是它们具有的与队列中请求关联的客户机的标识互不相同。
请求队列230、231和232中的请求由HTTP请求队列处理机233处理。处理机233在与具有能访问请求中指定的服务器(即每个代理)的第二台计算机建立连接时执行请求。这些请求被处理时,为每个请求启动一个服务线程234以执行该请求。将对请求的应答存入高速缓冲存储器210并与生成该请求的请求队列中的该请求关联。图4中以虚线表示这种关联关系。
图4中从请求队列的各项到高速缓冲存储器的实线,代表请求项与用于产生请求的格式的关联关系。这种关联关系使使用仅服务器配置的用户即使在请求已经生成后也能对请求进行修改或删除。一种可选方案是,将请求和应答二者都与队列中的请求项关联,使请求和应答二者都能被提供给用户。
请求队列230是一个请求表,其内容是输入数据处理机200从客户机侧截收器或浏览器收到的请求及其状态和控制信息。每个请求单元中有从浏览器接收的全部信息(HTTP标题和任何主体)。这样就能在晚些时间将请求重新转发到网络。每个请求单元中还有与该请求关联的状态信息。状态信息包括处理该请求的进展情况小结和其余尚待执行工作的列表。
客户机侧使用的请求队列项的格式,可以与以上叙述的服务器侧截收器所用的格式相同。然而,当请求被传送到服务器侧截收模块时,要有一个与该请求关联的请求标识,请求标识可以由客户机在当地生成。一种可选方案是,在连接建立时,建立用于连接期间的用户标识符。因此,用户标识符会被与从该连接接收的所有请求关联。因为请求期间允许断开,所以在不同的处理阶段会涉及不同的套接字。在向服务器侧截收器传输请求之前,为每个请求规定一个客户机标识符/请求标识符对,采用这种方法,不依赖套接字的连接就能协调最后结果的传递。对于向服务器侧截收器发送的用于处理的请求,其标识也要在客户机侧记录下来,以便以后能将请求与结果匹配。通过对客户机标识采取保密措施,其它的客户机的请求,即使是存储在服务器侧截收模块中的其它的客户机的请求,也不能对其访问。
实际操作中,当用户作好断开准备,并希望服务器在断开期间处理等待的请求,以便其晚些时候取回数据时,客户机调用命令,在断开期间将请求传送到服务器侧截收器。这种命令可以是一个客户机侧的API flush()命令。API flush()命令的功能是,把要在通信链路的服务器侧处理的排队请求发送到服务器。被传送的项目可以通过名称/数值对被标记为客户机请求队列中的清仓(flushed)项。flush()命令至少有三种合理形式:
flush()传送所有未标记为“保留”的项目(缺省命令);
flush(全部)传送所有项目,包括“保留”项目;
flush(项目)传送一个特定项目。
保留请求(即被指定在由用户规定的一个较晚的时间进行处理的请求)也能被传送到服务器侧取进行断开处理。然而,保留请求的主要原因是为了推迟传送结果,直到有足够的带宽可用。对保留的请求进行断开处理可能并不是一种理想的做法,因为用户未必在很长时间后还会请求得到结果。因此,若是还要处理请求,存储用户不再需要的结果,那就是对服务器资源的一种浪费。
一种选择方案是,在一个浏览器至服务器侧截收器的配置中,所有不能在服务器侧截收器得到满足的请求,都在服务器侧截收器排队。这样,如果发生断续连接失败,则在浏览器断开期间,这些请求可以由服务器侧截收器继续处理。这种系统的另一个优点是,浏览器与服务器侧截收器之间的连接得到完全利用,这是因为,向浏览器提供的应答队列一旦被建立,通信链路上的空载时间就会减少。
本发明也考虑了对客户机侧所储存请求的修改。如果某特定请求项在服务器侧截收器上排了队,那么对客户机请求队列中的该项进行的任何修改都会传给服务器。例如,如果用户从客户机请求队列中删除一个清仓的请求,就应该通知服务器侧截收器,以便停止处理(如果有必要),放弃正在准备的处理结果,从服务器侧的客户机请求队列中将该项删除。与此类似,如果某被清仓项的状态变成停顿(held)或解除停顿(unheld),就应该通知服务器侧的请求队列,以便其能视需要而中止或开始处理。在这种断开方式下,有益于记录对客户机侧清仓项进行的变化性操作,以便它们能在重接服务器侧截收模块时被立即转发。
一旦服务器侧的处理产生应答,向客户机传播回的数据是基于规则的。在客户机下一次被连接时,盲目地向客户机传送对断开请求的应答并不可取。因为客户机可能正在一个低带宽链路上作某种优先级很高的事情,用户宁愿第一个连接时间不是花在传送对旧请求的应答上。因此,可以用一组可配置规则与函数来帮助客户机优化数据传输。
GetDigest()函数就是这样一个函数。GetDigest()返回在被请求的服务器侧队列中为该客户机积累的数据的一个摘要。因此,执行GetDigest()函数后能获得下列数据,包括URL、题目、大小、已完成时间和请求的状态。GetDigest()函数调用返回的状态有完成、正在进行、停顿、等等。因此状态可以指出,服务器侧截收器对请求的处理到了什么程度。客户机可以用这种摘要来决定如何继续。对应于上述的flush()操作,可以用以下sync()函数提取被存储的应答:
sync()取得对所有非停顿项的应答(缺省);
sync(全部)取得对包括停顿项在内的所有项的应答;
sync(项目)取得对特定请求的应答。
除了这些明示的请求之外,用户还可以在连接期间或重新连入的过程中进行自动同步:
GetPrefs()返回该客户机的当前的优选项列表;
SetPrefs(列表)定义一个新的优选项列表;
UpdatePrefs(列表)只更新指定的优选项
优选项列表由一系列名称/数值对组成。名称/数值对确定数据自动传输的规则。有些属性可以是优先级、大小、源、等等。这样,基于服务器侧处理的异步操作就可以通过客户机侧的交互作用管理,后者包括用户制导的动作组合以及自动传输。
现在结合图5、图5a和图6来描述服务器侧截收器。图5表示的是当服务器侧截收模块接收客户机侧截收模块的传输时,服务器侧截收模块的操作。方框250表示服务器侧截收器接收客户机侧截收模块的一个请求。该信息一般采用两种形式:标准化浏览器请求,或者由服务器侧截收器自己处理的请求(例如上文讨论过的GetDigest()和SetPrefs()函数)。因此,服务器侧截收器要判定,所截收的传输是对服务器的请求还是对服务器侧截收器的请求(框252),如果该请求是对服务器侧截收器的请求,服务器侧截收器就相应地处理该请求。上文中提供了截收通信的类型的例子。
如果所截收的传输不是向服务器侧截收器本身的截收传输,服务器侧截收模块就要判定,该请求是否是由服务器侧截收模块处理的断开操作的请求(框256)。如果该请求不是断接操作请求,则该请求就被作为其它类请求处理(框258)。服务器侧截收器也要判定该请求是不是客户机的第一个请求(框264),如果是,就为用户建立一个请求队列(框266)。请求队列中有用户标识符,以便将随后的通讯存储在适当的队列中,并保证通讯的安全性,使用户的请求和应答不会被提供给未授权的用户。请求队列建立后或者如果队列已经存在,就将请求就存储在客户机的请求队列中(框268),进行脱机处理。该脱机处理方式可以与下文描述的客户机侧截收器的脱机处理相同。
图5a表示的是,在没有客户机侧截收器的情况下服务器侧截收器与浏览器通信时(仅有服务器侧的情况),服务器侧截收器的操作。如图5a所示,服务器侧截收模块接收来自浏览器的请求(框350)。服务器侧截收器然后判定,该请求是不是个延迟请求(即用于断开的操作的请求)(框356)。或者是,在仅有服务器侧的情况下,将所有请求按延迟请求处理,在服务器侧截收模块中排队。任何情况下,如果请求不是要求延迟操作的,就对请求作常规处理(框358)。然而,如果请求是要求断开处理的,则浏览器需要得到一个相应的应答,才能继续下一步。因此,服务器侧截收器可以向浏览器提供一个中间应答(框362)。简单的中间应答只指出请求已经收到,将作脱机处理;复杂的中间应答是提供所有等待脱机处理的请求的全部状态信息。
在仅有服务器侧的情况下,服务器侧截收器还要判定,请求是否是客户机的第一个请求(框364),如果是,就为该用户创建一个请求队列(框366),请求队列中有用户标识符,以便将随后的通讯存储在适当的队列中,并保证通讯的安全性,使用户的请求和应答不会被提供给未授权的用户。请求队列创建后或者如果队列已经存在,就将请求存储在客户机的请求队列中(框368),进行脱机处理。该脱机处理方式可以与下文描述的客户机侧截收器的脱机处理相同。
图6表示是服务器截收模块在某个使用异步服务器侧处理的客户机接入该模块时的操作。图6一般地描述了在客户机侧/服务器侧情况和仅有服务器侧情况的两种情形中,服务器截收模块的操作。然而,本领域的熟练人员会明白,在仅有服务器侧的情况下向客户机提供的数据应当遵循能够由Web浏览器解释的格式;而在客户机侧/服务器侧的情况下,所提供的数据可以是能够由客户机侧截收模块解释的任何适当格式,由客户机侧截收模块将数据翻译成能够由与客户机侧截收模块通信的浏览器解释的格式。
如图6所示,首先要确认客户机的客户机标识符(框270),然后服务器侧截收器判定客户机是否指定了任何与该客户机的队列关联的管理操作(框272)。如果是,就执行管理功能(框274)。这些管理功能包括,设置用户优选项、更新队列以反映在上述客户机断开期间对队列中的请求所作的改变。
除了执行管理功能外,还要检查与客户机标识关联的队列,判定队列中有无请求项存在(框276)。如果队列中有请求项,就向客户机发送一个提示(框278),通知客户机在队列中有请求项。这种提示可以复杂也可以简单,可以用用户优选项规定。然后,用户可以按其认为适当的方式对该提示作出响应,队列中的各请求项得到相应的处理。例如,用户可以请求将所有已完成的请求发送到浏览器。或者是,将这种操作延迟到稍迟后的连接时或在当前连接中稍迟后再执行。
此外,还可以将与某用户标识关联的诸应答相互关联,使得它们可以被作为基于一个用户请求的块,提供给客户机侧截收器或者浏览器。在这种情况下,服务器侧截收器在请求队列中建立一个请求项并将该信息与该请求项关联,使得该单项请求代表许多应答。然后,在该请求项被请求时,这许多应答被作为一组发送给客户机。然后就可以用浏览器在该应答链中漫游。这样,服务器侧截收器就能在请求队列中创建能向浏览器提供许多应答的单项请求。此外,用户还可以规定将哪些应答组成一个块,这使得用户得以控制应答被Web浏览器接收的方式。
图7描述利用本发明的客户机侧截收器的操作。如图7所示,客户机侧截收器30截收浏览器10的一个请求(框50)。然后,客户机侧截收器判定,对该请求的应答是否存储在高速缓冲存储器中(框52)。如果是,就将该高速缓存的应答返回给Web浏览器(框54)。
如果应答未被高速缓存,客户机侧截收器就要判定,数据处理系统是否连入用于访问服务器的第二台计算机(框56)。如果数据处理系统连入,那么,如果请求不是延迟请求(功能框58),则将请求发送到第二台计算机。然而,如果数据处理系统未连入,或者请求处理是延迟类型的,则将请求存入请求队列,并用一个中间应答作为对请求的应答提供给浏览器(功能框62)。
对队列方式的请求的处理是由线程(thread)进行的。本发明中的线程的运行,独立于截收模块中的任何其它活动。队列中的请求一般是按“先进先出”(FIFO)原则处理的。然而,可以有选择地将请求标记为“停顿”类型,并且,所有新的请求都应被停顿(功能框58)。这样,即使在可以连接的情况下,用户也能指示,对这些请求的处理应当延迟到稍后的时间。例如,某些请求在特定的链路上处理的费用太高,所以用户宁愿推迟处理,直到能连接局域网或者能拨号连接。停顿属性也可用于在客户机最初启动时留下的任何未完成的排成队列的请求。这样可以避免从廉价的链路出人意外地转接到费用更昂贵的无线链路上。
如图7所示,处理一个排成队列的请求的第一个步骤是要求连入能访问该请求的服务器的第二台计算机(功能框64)。当第一次收到一个请求时,就开始试图连入,如果连接没有建立(功能框66),就继续试,直到通过队列处理器或因为其它活动建立了连接(功能框70和64)。用一个指数延迟(exponential backoff)程序来控制试连接之间的延迟(功能框68)。因此,试连接的间隔时间随着试连接次数的增加而增加。在通信出现瞬时失败时该延迟程序能提供响应,而在长时间通信失败时不增加网络负担。
一旦建立了连接,就用最初从浏览器保存并在请求队列中存储的数据重新构造该请求,并将该请求发送到第二台计算机(功能框72)。此时的请求在服务器看来如同直接来自浏览器的一样。如果由于无线链路的故障,请求失败(功能框74),在稍后时间还会接着作几次尝试。重新尝试的请求使用户觉察不到瞬时的通信故障。其它类型的故障也能被记录下来,用于以后返回给用户。
图8表示按照本发明的客户机侧截收模块和服务器侧截收模块在对前一个排成队列的请求的应答被接收时的操作。如图8所示,来自服务器的应答被接收(功能框80)。然而,如今在Web页面中使用图形、小应用程序(applet)和其它嵌入(embed)几乎成为通行的做法。如果用户要求过要看这些信息,就要分析返回的页面看看有无嵌入(功能框82)。然后将每个嵌入提取出来(功能框84),与源应答一起存入高速缓冲存储器(功能框86)。将应答与适当的请求队列中的请求关联,并将随应答一起返回的所有状态信息与该请求关联(功能框88)。此时请求完成,可以通知用户,它能得到应答了(功能框90)。在服务器侧截收器的情况下,则该通知要被推迟到用户重新连接时。
本发明提供的是一种透明的HTTP代理,所以它可以用于任何浏览器。为后台处理对请求进行排队与浏览器预期的模型并不匹配,因此,要通过HTML或HTML码向用户返回一个中间应答,以便浏览器和用户能继续操作(见图5的方框262和图7的方框55)。类似地,可以用HTML页面和嵌入的HTML信息来报告状态,以保持浏览器的独立。
未完成的请求的状态,可以用许许多多的方法来报告。这些方法包括,任选的完成上托(completion popup)、嵌在返回的Web页面顶部的任选状态条、或在总结队列状态的HTML页面上的状态信息。
上托(popup)能使用户知道后台页面(background page)上有新完成的页面供阅览,并列出该页面的URL。这些上托中有一个是在新数据一旦可用时生成的,然后,进一步的信息被抑制,直到用户访问了页面并阅览了该信息。这就使用户能得到异步的完成通知,不会因为是在更快速的链路上而来不及。
用户也可以选择在每个返回页面中嵌入一个描述客户机侧截收器状态的状态条。状态条中的信息包括已经被完成的请求的数量、未完成的数量、停顿的数量。状态条还包括表示有新结果可用的上托的文字信息和通往各种被生成的状态页的链路。
这些链路中的一条链路能将用户导引到一个对该请求的状态进行总结的页面。该页面逐行显示队列中的每个请求。每个请求有一个表示该请求处理进展情况的状态示意图,示意图采用诸如交通灯模型的标志,其中:红色表示请求尚未发送;黄色表示基页已经收到,嵌入部分正在进行;绿色表示请求完成。状态图除了颜色外,还可以有形状区别,例如红色是无边的圆形、黄色是半月形,绿色是实心球形。如果发生错误(例如,请求已经发送,但基页检索不出来),就在交通灯符号上标上X,表示故障。
删除请求或停顿请求的选择,也能随状态图一起显示出来。在采用格式的情况下,用户可以浏览或重新编辑请求。如果请求完成了,则该页中也可以有一个指向被高速缓存的结果的链路。
为了提供基于URL的、对后台队列和其它内部生成的页面的访问,可以将客户机侧截收器的域名(例如artour.web.express)与其它合适选项合在一起使用。例如,可以通过URL的http://artour.web.express/HTEP/访问后台队列。这类请求最好使用HTTP和一个保留域名,而不是定义一个所有者协议名(proprietary protocol name),因为标准化浏览器会拒绝不熟悉的协议。
请求处理的进展情况也可以向用户报告。请求的状态随着请求的处理要经过一系列状态:从提交请求起,至处理开始,检索出起始页,直到最后完成。当请求进入一个状态时,就要向内部事件管理程序发送一个描述该状态转换的事件。内部事件管理程序接收请求的状态,并把状态信息传递给其它部件或应用程序。其它部件可以向事件管理程序登记要求接收一些由事件状态和其它标准过滤出的事件。处理事件可被用于生成到客户机侧截收器的动态接口。上托通知就是这些事件的用途的一个例子。
应答被接收后,应答也需要被保存起来,供用户将来脱机阅览用。然而,当浏览器作出请求并接收应答时,它通常有两种方法之一处理应答。如果预期应答是相对静态的,就由浏览器将其高速缓存起来,以便将来对该页的请求能得到迅速处理。然而,如果该页是对格式(forms)请求的应答,或者是由其它方式生成的(所谓的“cgi-bin”请求),则浏览器只显示该应答,而不高速缓存该应答,这是因为一般来说对一个cgi-bin请求的这种应答与对下一个cgi-bin请求的应答是互不相同的。还有,对于源服务器标记是“不高速缓存”的对象,如果浏览器和代理发现这个指示,就不保存这些项目。然而,如果某项是作为处理一个排成队列的请求的一部分而检索时,就必须保存起来供以后阅览。
这些通常是短暂的对象被保存起来(功能框86),作为新类型的高速缓存信息:用户数据。这些数据是为响应用户请求而检索出来的数据,只是在该请求的上下文中才有意义。与标准Web数据不同的是,用户数据对象只能作为队列状态页上的应答被访问。它们不能被用于处理其它请求,因为它们是时间短暂的或请求敏感的应答。用户数据不受用于管理高速缓冲存储器的标准的相干(coherency)算法和老化(aging)算法的约束。在被用户删除之前,它们一直存在并有效。
Web页面设计者经常采用HTML格式来安排只要求简单交互作用的数据项。用HTML格式标记建立用于Web交互作用的电子格式是一种方便的方法。HTML格式标记允许Web用户选择列表项、检查开/关选框、选择单选按钮、向文本域或多行的大文字区输入文本、按下执行钮。用户按下执行钮时,所输入的数据就被发送到由名称/数值对所指定的Web服务器。名称/数值对的各个名称代表一个输入域,各个值代表用户在该域的输入内容。此外,还可以有隐藏域,存放Web服务器与该格式一起发送的预设值。这些隐藏值与可视域中的值一起被发送回服务器。
与任何HTML页一样,HTML格式可以被存储在高速缓冲存储器中供将来使用。依照本发明,高速缓存的HTML格式可以被不同的用户输入编辑后提交或者再提交。例如,某个检索输入格式可以被一次又一次地编辑,用于发出不同的检索请求。类似地,对内部网数据项格式,例如病人住院表,也能进行编辑,用以校正数据项错误,或登入其它病人的新数据后再提交。对于多数格式来说,将它们存储在高速缓冲存储器中供将来独立提交是有益的,这是因为,这些格式要么有一个简单的一格式交互作用的模型,要么含有自足的隐藏域,使得Web应用程序能够接受单个的提交。
在移动式环境中,断开的格式提交能提高用户的生产率,即使在不能接触到服务器时也是如此。这样就允许在未连入任何网络的情况下,在许多数据项页面中填入数据。还有,由于本发明的再编辑功能,用户可以草拟一些格式,有机会再审阅、确定或者编辑这些格式,最后将它们发送给服务器。
如上所述,可以按任何HTML页面对一个格式处理,图5和图7的操作的功能是,对应填好的格式,在请求队列中建立一项。与常规HTML页面一样,用户用URL获得高速缓存的HTML格式。用户在格式中填充数据,按一个执行钮提交它。格式被提交后,名称/数值对与源格式URL一起被存储并排队。如果用户又请求相同的URL格式,并提交新的结果,新提交的就与以前提交的分开保存。每次的提交都被作为队列中的单独一项,在能够连接时自动提交。这些项在被用户删除之前一直保留着。
图9表示用本发明方法对格式进行再编辑的过程。再编辑所用的是图7中队列中的格式。如图9所示,队列中可用格式的清单被提供给浏览器(功能框100),接收用户选择队列项的输入(102)。可以把一个HTML页面显示给用户,内容是能用超级连接访问的队列项。
根据用户的输入,从本地高速缓冲存储器获得一个与用来生成排成队列的请求的格式的URL对应的格(功能框104)。该基格式可以根据以前插入的表示格式出处的数据检索出来。当空白格式第一次从服务器提取出来时,客户机侧截收器将隐藏值插入HTML,然后将该页面返回给浏览器。该隐藏的信息包括源URL和在该页面中的格式号。为了再编辑该格式,要用含有该格式的URL的该隐藏值来检索空白格式。为了建立请求与生成请求的格式之间的关联关系,该URL与该请求一起存储在请求队列中。
逐个检查格式与排成队列的请求是否与请求中的名称/数值对匹配(功能框106)。如果发现有匹配的,就改变缺省的选择或者输入值,以反映用户的提交(功能框108)。要特别注意有许多HTML格式的Web页面,因为它们可能在不同的子格式中使用相同的域名。因此,要为子格式分配唯一的标识符以便能跟踪它们。然后对源输入格式和数据进行重新构造。如果对请求的应答已经收到(功能框110),则一可选地-可以将提交按钮替换为到该应答的链路,以便用户能够阅览该提交的结果(功能框112)。否则,就将重新构造的请求提供给浏览器供用户进行编辑(功能框114)。如果用户再提交,就可以用新数据将现存的队列项覆盖,或者,用户也可选择在队列中新建一项。这个特点允许用户利用填有内容的格式作为模板,只需少量的进一步输入就能创建数据类似的其它请求。
如上所述,如果请求被客户机作了修改,修改内容就被作为管理功能的一部分被提供给服务器侧截收器。此外,尽管图9中的修改操作最好是在客户机侧进行,这些操作也可以在通信链路的服务器侧执行。
在附图和说明书中,说明了本发明的若干典型的较佳实施例,并且,尽管上述内容中使用了专门术语,它们都仅仅具有一般性和说明性的意义,不具有限制性意义。本发明的范围在权利要求书中提出。
Claims (45)
1.一种与在暂时或断续连接到第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的方法,其特征在于包括以下步骤:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、由第二台计算机可访问的一个服务器应用的请求;
响应来自客户机应用的请求向Web浏览器提供一个中间应答;
向服务器应用提供该储存的请求;
接收一个来自服务器应用的应答;
将收到的应答提供给在远程/移动式处理系统上执行的Web浏览器。
2.根据权利要求1的方法,其特征在于,进一步包括这样的步骤:判定从浏览器接收的请求是不是一个延迟处理的请求;如果该判定步骤判定所接收的请求是延迟处理的请求,则还要执行所述在持久高速缓冲存储器中进行存储和提供中间应答诸步骤。
3.根据权利要求1的方法,其特征在于,提供中间应答的步骤之后的步骤是,将远程/移动式数据处理机与第二台计算机断开;向Web浏览器提供所接收的应答的步骤之前的步骤是,将远程/移动式数据处理机重新连接到第二台计算机。
4.根据权利要求3的方法,其特征在于,进一步包含以下步骤:
将所储存的请求的列表提供给Web浏览器供用户阅读;
从Web浏览器接收一个要求取出一个从所储存的请求的列表中选定的一个请求的请求;
向Web浏览器提供对根据用户输入从储存的请求的列表中选定的一个储存的请求的相关应答。
5.根据权利要求3的方法,其特征在于,进一步包含以下步骤:
在应答被第二台计算机接收后通知用户所收到的应答的可用性;以及
如果用户请求该应答,就将该应答提供给Web浏览器。
6.根据权利要求3的方法,其特征在于,在持久请求队列中存储的步骤之前的步骤是,建立一个与某用户标识符关联的持久请求队列;重新连接远程/移动式数据处理机的步骤中包括的步骤有,将远程/移动式数据处理系统连接到第二台计算机,从远程/移动式数据处理系统接收一个用户标识符;提供收到的应答的步骤包括的步骤有,将收到的应答提供给持久请求队列中与收到的用户标识符关联的请求。
7.根据权利要求6的方法,其特征在于进一步包括以下步骤:
检查收到的应答,判定收到的应答中是否嵌入了至少一个请求;
将收到的应答中的该至少一个嵌入的请求提供给由该嵌入的请求规定的服务器;
接收对该嵌入的请求的应答;
将所收到的对该嵌入的请求的应答存储在第二台计算机;
将储存的对该嵌入的请求的所收到的应答与持久请求队列中储存的请求关联;
将收到的应答提供给Web浏览器的步骤包括,将储存的所收到的应答与储存的对嵌入的请求的应答提供给Web浏览器。
8.根据权利要求6的方法,其特征在于进一步包括以下步骤:
将对该请求的应答存储在第二台计算机;
将储存的应答和与用户标识符相关联的持久请求队列中储存的请求关联。
9.根据权利要求8的方法,其特征在于,建立持久请求队列的步骤包括的步骤有,建立许多持久请求队列的步骤,其中每个持久请求队列与一个用户标识符关联;在持久请求队列中存储的步骤包括的步骤有,将来自许多Web浏览器的请求存储到许多持久请求队列,使来自某浏览器的某用户的请求被存储在与该用户的用户标识符关联的一个持久请求队列中;将储存的请求提供给服务器应用的步骤包括的步骤有,向关联的Web服务器提供许多请求;从服务器应用接收应答的步骤包括的步骤有,从关联的Web服务器接收许多应答;将收到的应答提供给远程/移动式处理系统上执行的Web浏览器的步骤包括的步骤有,将收到的许多应答提供给许多Web浏览器,使对某个请求的应答被提供给从其接收该请求的Web浏览器。
10.根据权利要求1的方法,其特征在于进一步包括以下步骤:
将来自的服务器的许多应答与持久请求队列中的一项关联;
将与持久请求队列中该一项关联的该许多应答提供给远程/移动式数据处理系统。
11.一种与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的方法,其特征在于包括以下步骤:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器、由第二台计算机可访问的一个服务器应用的请求;
将一个客户机标识符与该储存的请求关联;
向服务器应用提供所储存的请求;
接收一个来自服务器应用的应答;
将从服务器接收的应答存储到第二台计算机上驻留的服务器侧高速缓冲存储器;
将储存的所收到的应答与储存的请求关联;
将所储存的所收到的应答提供给与客户机标识符相关联的Web浏览器,该客户机标识符与所储存的请求关联。
12.根据权利要求11的方法,其特征在于,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的步骤包括的步骤有,在随后的连接期间,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器。
13.根据权利要求11的方法,其特征在于,进一步包括以下步骤:
在向服务器应用提供所储存的请求的步骤之前,接收对该请求的修改;
修改持久请求队列中储存的该请求,用修改后的请求替换所储存的请求。
14.根据权利要求11的方法,其特征在于,进一步包括这样的步骤:判定从浏览器接收的请求是不是一个延迟处理的请求;如果该判定步骤判定,所接收请求是延迟处理的请求,则还包括所述在持久高速缓冲存储器中进行存储的步骤。
15.根据权利要求11的方法,其特征在于,进一步包含以下步骤:
将将所储存的请求的列表提供给Web浏览器供用户阅读;
从Web浏览器接收一个要求取出一个从所储存的请求的列表中选定的一个所储存的请求的请求;
将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相相关联的Web浏览器的步骤包括的步骤有,向Web浏览器提供对根据用户输入从储存的请求的列表中选定的一个请求的相关联的所储存的应答。
16.根据权利要求11的方法,其特征在于,进一步包含以下步骤:
在应答被第二台计算机接收后,通知用户可以得到所接收的应答;
将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的步骤包括的步骤有,如果用户请求所储存的所收到的应答,就将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器。
17.根据权利要求11的方法,其特征在于进一步包括以下步骤:
检查收到的应答,判定收到的应答中是否嵌入了至少一个请求;
将收到的应答中的该至少一个嵌入的请求提供给由该嵌入的请求规定的服务器;
接收对该嵌入的请求的应答;
将对该嵌入的请求的所收到的应答存储在第二台计算机上驻留的高速缓冲存储器;
将储存的对该嵌入的请求的所收到的应答与持久请求队列中储存的请求关联;
将收到的应答提供给Web浏览器的步骤包括,将储存的所收到的应答与储存的对该嵌入的请求的应答提供给Web浏览器。
18.根据权利要求11的方法,其特征在于,在持久请求队列中存储的步骤包括的步骤有,将来自许多Web浏览器的请求存储到许多持久请求队列,使来自某浏览器的某用户的请求被存储在与该用户的用户标识符关联的一个持久请求队列中,该客户机标识符与所储存的请求相关联;将储存的请求提供给服务器应用的步骤包括的步骤有,向关联的Web浏览器提供许多所储存的请求;从服务器应用接收应答的步骤包括的步骤有,从关联的Web服务器接收许多应答;将收到的应答提供给远程/移动式处理系统上执行的Web浏览器的步骤包括的步骤有,将收到的许多应答提供给许多Web浏览器,使对某个请求的应答被提供给对应于与该接收的请求相关的客户机标识符的Web浏览器。
19.根据权利要求11的方法,其特征在于进一步包括以下步骤:
将来自的服务器的许多应答与持久请求队列中的一项关联;
将与持久请求队列中该一项关联的该许多应答提供给远程/移动式数据处理系统。
20.一种与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的系统,其特征在于包括:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、对由第二台计算机可访问的一个服务器应用的请求的装置;
响应来自客户机应用的请求向Web浏览器提供一个中间应答的装置;
向服务器应用提供该储存的请求的装置;
接收一个来自服务器应用的应答的装置;
将收到的应答提供给在远程/移动式处理系统上执行的Web浏览器的装置。
21.根据权利要求20的系统,其特征在于,进一步包括判定装置,该判定装置能判定从浏览器接收的请求是不是一个延迟处理的请求,并且,在持久高速缓冲存储器进行存储的装置和提供中间应答的装置能与该判定装置关联。
22.根据权利要求20的系统,其特征在于进一步包括:
将远程/移动式数据处理机与第二台计算机断开的装置;
将远程/移动式数据处理机与第二台计算机重新连接的装置。
23.根据权利要求22的系统,其特征在于进一步包括:
将所储存的请求的列表提供给Web浏览器供用户阅读的装置;
从Web浏览器接收一个要求取出一个从所储存的请求的列表中选定的所储存的一个请求的请求的装置;
向Web浏览器提供对根据用户输入从储存的请求的列表中选定的所储存的一个请求的有关的应答的装置。
24.根据权利要求22的系统,其特征在于进一步包括:
在应答被第二台计算机接收后通知用户收到应答的可用性的装置;
如果用户请求该应答,就将该应答提供给Web浏览器的装置。
25.根据权利要求22的系统,其特征在于进一步包括:
建立一个与一个用户标识符关联的持久请求队列的装置;
重新连接远程/移动式数据处理机的装置中包括:将远程/移动式数据处理机连接第二台计算机的装置,从远程/移动式数据处理机接收一个用户标识符的装置;
提供收到的应答的装置包括:将收到的应答提供给持久请求队列中与收到的用户标识符关联的请求的装置。
26.根据权利要求25的系统,其特征在于进一步包括:
检查收到的应答以判定收到的应答中是否嵌入至少一个请求的装置;
将收到的应答中的该至少一个嵌入的请求提供给由该嵌入的请求规定的服务器的装置;
接收对该嵌入的请求的应答的装置;
将对该嵌入的请求的所收到的应答存储在第二台计算机的装置;
将储存的对该嵌入的请求的所收到的应答与持久请求队列中储存的请求关联的装置;
将收到的应答提供给Web浏览器的装置包括,将储存的所收到的应答与储存的对嵌入的请求的应答提供给Web浏览器的装置。
27.根据权利要求25的系统,其特征在于进一步包括:
将对该请求的应答存储在第二台计算机的装置;
将储存的应答与和用户标识符关联的持久请求队列中储存的请求相关联的装置。
28.根据权利要求27的系统,其特征在于,建立持久请求队列的所述装置包括:建立许多持久请求队列的装置,其中每个持久请求队列与一个用户标识符关联;
在持久请求队列中存储的装置包括:将来自许多Web浏览器的请求存储到许多持久请求队列,使来自一个浏览器的用户的请求被存储在与该用户的用户标识符关联的一个持久请求队列中的装置;
将储存的请求提供给服务器应用的装置包括:向关联的Web服务器提供许多请求的装置;
从服务器应用接收应答的装置包括:从关联的Web服务器接收许多应答的装置;
将收到的应答提供给远程/移动式处理系统上执行的Web浏览器的装置包括:将收到的许多应答提供给许多Web浏览器,使对某个请求的应答被提供给从其接收该请求的Web浏览器的装置。
29.根据权利要求20的系统,其特征在于进一步包括:
将来自的服务器的许多应答与持久请求队列中的一项关联的装置;
将与持久请求队列中该一项关联的该许多应答提供给远程/移动式处理系统的装置。
30.一种与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的系统,其特征在于包括:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、对由第二台计算机可访问的一个服务器应用的请求的装置;
将客户机标识符与所储存的请求关联的装置;
向服务器应用提供所储存的请求的装置;
接收一个来自服务器应用的应答的装置;
将所接收的来自服务器的应答存入第二台计算机上驻留的服务器侧高速缓冲存储器的装置;
将所储存的所收到的应答与所储存的请求关联的装置;
将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的装置。
31.根据权利要求30的系统,其特征在于,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的装置包括:在随后的连接期间,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的装置。
32.根据权利要求30的系统,其特征在于:
在持久请求队列中存储的装置包括:将来自许多Web浏览器的请求存储到许多持久请求队列,使来自一个Web浏览器的用户的请求被存储在与和所存储的请求关联的客户机标识符相关联的一个持久请求队列中的装置;
将所储存的请求提供给服务器应用的装置包括:向关联的Web服务器提供许多所存储的请求的装置;
从服务器应用接收应答的装置包括:从关联的Web服务器接收许多应答的装置;
将所收到的应答提供给在远程/移动式处理系统上执行的Web浏览器的装置包括:将收到的许多应答提供给许多Web浏览器,使对一个请求的应答被提供给对应于与所存储的请求关联的客户机标识符的Web浏览器的装置。
33.一种与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的计算机程序产品,其特征在于包括:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、对由第二台计算机可访问的一个服务器应用的请求的计算机可读程序代码装置;
响应来自客户机应用的请求向Web浏览器提供一个中间应答的计算机可读程序代码装置;
向服务器应用提供所储存的请求的计算机可读程序代码装置;
接收一个来自服务器应用的应答的计算机可读程序代码装置;
将收到的应答提供给在远程/移动式处理系统上执行的Web浏览器的计算机可读程序代码装置。
34.根据权利要求33的计算机程序产品,其特征在于,进一步包括用于判定的计算机可读程序代码装置,该用于判定的计算机可读程序代码装置能判定从浏览器接收的请求是不是一个延迟处理的请求,并且,在持久高速缓冲存储器进行存储的计算机可读程序代码装置和提供中间应答的计算机可读程序代码装置能与该用于判定的计算机可读程序代码装置关联。
35.根据权利要求33的计算机程序产品,其特征在于进一步包括:
将远程/移动式数据处理机与第二台计算机断开的计算机可读程序代码装置;
将远程/移动式数据处理机与第二台计算机重新连接的计算机可读程序代码装置。
36.根据权利要求35的计算机程序产品,其特征在于进一步包括:
将所储存的请求的列表提供给Web浏览器供用户阅读的计算机可读程序代码装置;
从Web浏览器接收一个要求取出一个从所储存的请求的列表中选定的所储存的一个请求的请求的计算机可读程序代码装置;
向Web浏览器提供对根据用户输入从储存的请求的列表中选定的所储存的一个请求的相关的应答的计算机可读程序代码装置。
37.根据权利要求35的计算机程序产品,其特征在于进一步包括:
在应答被第二台计算机接收后通知用户收到的应答的可用性的计算机可读程序代码装置;
如果用户请求该应答,就将该应答提供给Web浏览器的计算机可读程序代码装置。
38.根据权利要求35的计算机程序产品,其特征在于进一步包括:
建立与用户标识符关联的持久请求队列的计算机可读程序代码装置;
重新连接远程/移动式数据处理机的计算机可读程序代码装置包括:将远程/移动式数据处理机连接到第二台计算机的计算机可读程序代码装置,从远程/移动式数据处理机接收一个用户标识符的计算机可读程序代码装置;
提供收到的应答的计算机可读程序代码装置包括:将收到的应答提供给持久请求队列中与收到的用户标识符关联的请求的计算机可读程序代码装置。
39.根据权利要求38的计算机程序产品,其特征在于进一步包括:
检查收到的应答以判定收到的应答中是否嵌入至少一个请求的计算机可读程序代码装置;
将收到的应答中的该至少一个嵌入的请求提供给由该嵌入的请求规定的服务器的计算机可读程序代码装置;
接收对该嵌入的请求的应答的计算机可读程序代码装置;
将对该嵌入的请求的所收到的应答存储在第二台计算机的计算机可读程序代码装置;
将储存的对该嵌入的请求的所收到的应答与持久请求队列中储存的请求关联的计算机可读程序代码装置;
将收到的应答提供给Web浏览器的计算机可读程序代码装置包括,将储存的所收到的应答与储存的对所嵌入的请求的应答提供给Web浏览器的计算机可读程序代码装置。
40.根据权利要求38的计算机程序产品,其特征在于进一步包括:
将对该请求的应答存储在第二台计算机的计算机可读程序代码装置;
将储存的应答与和用户标识符关联的持久请求队列中储存的请求相关联的计算机可读程序代码装置。
41.根据权利要求40的计算机程序产品,其特征在于,建立持久请求队列的计算机可读程序代码装置包括:建立许多持久请求队列的计算机可读程序代码装置,其中每个持久请求队列与一个用户标识符关联;
在持久请求队列中存储的计算机可读程序代码装置包括:将来自许多Web浏览器的请求存储到许多持久请求队列,使来自一个浏览器的用户的请求被存储在与该用户的用户标识符关联的一个持久请求队列中的计算机可读程序代码装置;
将储存的请求提供给服务器应用的计算机可读程序代码装置包括:向关联的Web服务器提供许多请求的计算机可读程序代码装置;
从服务器应用接收应答的计算机可读程序代码装置包括:从关联的Web服务器接收许多应答的计算机可读程序代码装置;
将收到的应答提供给远程/移动式处理系统上执行的Web浏览器的计算机可读程序代码装置包括:将收到的许多应答提供给许多Web浏览器,使对某个请求的应答被提供给从其该接收该请求的Web浏览器的计算机可读程序代码装置。
42.根据权利要求33的计算机程序产品,其特征在于进一步包括:
将来自服务器的许多应答与持久请求队列中的一项关联的计算机可读程序代码装置;
将与持久请求队列中该一项关联的该许多应答提供给远程/移动式处理系统的计算机可读程序代码装置。
43.一种与在暂时或断续连接第二台计算机的远程/移动式处理系统上执行的Web浏览器进行通信的计算机程序产品,该计算机程序产品的特征在于包括:
在第二台计算机的一个持久请求队列中,存储一个来自Web浏览器的、对由第二台计算机可访问的一个服务器应用的请求的计算机可读程序代码装置;
将客户机标识符与所储存的请求关联的计算机可读程序代码装置;
向服务器应用提供所储存的请求的计算机可读程序代码装置;
接收一个来自服务器应用的应答的计算机可读程序代码装置;
将所接收的来自服务器的应答存入第二台计算机上驻留的服务器侧高速缓冲存储器的计算机可读程序代码装置;
将所储存的所收到的应答与所储存的请求关联的计算机可读程序代码装置;
将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的计算机可读程序代码装置。
44.根据权利要求43的计算机程序产品,其特征在于,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的计算机可读程序代码装置包括:在随后的连接期间,将所储存的所收到的应答提供给与和所储存的请求关联的客户机标识符相关联的Web浏览器的计算机可读程序代码装置。
45.根据权利要求43的计算机程序产品,其特征在于:
在持久请求队列中存储的计算机可读程序代码装置包括:将来自许多Web浏览器的请求存储到许多持久请求队列,使来自一个浏览器的用户的请求被存储在与和所存储的请求相关的客户机标识符相关联的一个持久请求队列中的计算机可读程序代码装置;
将所储存的请求提供给服务器应用的计算机可读程序代码装置包括:向关联的Web服务器提供许多所存储的请求的计算机可读程序代码装置;
从服务器应用接收应答的计算机可读程序代码装置包括:从关联的Web服务器接收许多应答的计算机可读程序代码装置;
将收到的应答提供给在远程/移动式处理系统上执行的Web浏览器的计算机可读程序代码装置包括:将收到的许多应答提供给许多Web浏览器,使对某个请求的应答被提供给对应于与所存储的请求相关的客户机标识符的Web浏览器的计算机可读程序代码装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US919913 | 1997-08-28 | ||
US08/919,913 US6070184A (en) | 1997-08-28 | 1997-08-28 | Server-side asynchronous form management |
US919,913 | 1997-08-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1210409A true CN1210409A (zh) | 1999-03-10 |
CN1113504C CN1113504C (zh) | 2003-07-02 |
Family
ID=25442855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98118415A Expired - Lifetime CN1113504C (zh) | 1997-08-28 | 1998-08-13 | 服务器侧的异步格式管理 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6070184A (zh) |
JP (1) | JP4041217B2 (zh) |
KR (1) | KR100318781B1 (zh) |
CN (1) | CN1113504C (zh) |
GB (1) | GB2330503B (zh) |
SG (1) | SG77192A1 (zh) |
TW (1) | TW386197B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100352195C (zh) * | 2003-05-26 | 2007-11-28 | 精工爱普生株式会社 | 客户端及服务器的系统、服务器及信息处理系统 |
CN100411380C (zh) * | 2002-08-19 | 2008-08-13 | 万达信息股份有限公司 | 一种网络数据交换中同步与异步间的转换方法 |
CN100570600C (zh) * | 2004-07-14 | 2009-12-16 | 国际商业机器公司 | 用于实现异步事务交互作用的方法和数据处理系统 |
CN1830192B (zh) * | 2003-07-31 | 2010-09-15 | 国际商业机器公司 | 用于异步地处理请求的方法和系统 |
CN102035872A (zh) * | 2009-09-30 | 2011-04-27 | 国际商业机器公司 | 改进断续连接环境中实时应用性能的装置、系统和方法 |
CN101296236B (zh) * | 2008-06-12 | 2011-06-08 | 北京中星微电子有限公司 | 多用户实时访问多媒体数据的方法、系统及数据客户端 |
CN1941771B (zh) * | 2005-09-27 | 2011-09-07 | 国际商业机器公司 | 用于面向服务的体系结构应用的Web服务信息管理方法和系统 |
US9338022B2 (en) | 2007-03-08 | 2016-05-10 | Samsung Electronics Co., Ltd. | Method of processing action, method of controlling controlled device, controlled device, and control point |
CN110912958A (zh) * | 2018-09-18 | 2020-03-24 | 中国移动通信集团重庆有限公司 | Http连接的处理方法、装置、设备和介质 |
Families Citing this family (191)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7003587B1 (en) | 1996-07-18 | 2006-02-21 | Computer Associates Think, Inc. | Method and apparatus for maintaining data integrity across distributed computer systems |
US5958012A (en) * | 1996-07-18 | 1999-09-28 | Computer Associates International, Inc. | Network management system using virtual reality techniques to display and simulate navigation to network components |
US7680879B2 (en) * | 1996-07-18 | 2010-03-16 | Computer Associates Think, Inc. | Method and apparatus for maintaining data integrity across distributed computer systems |
US7342581B2 (en) | 1996-07-18 | 2008-03-11 | Computer Associates Think, Inc. | Method and apparatus for displaying 3-D state indicators |
US7266526B1 (en) * | 1996-11-27 | 2007-09-04 | Diebold, Incorporated | Automated banking machine system with multiple browsers |
US20030018771A1 (en) * | 1997-07-15 | 2003-01-23 | Computer Associates Think, Inc. | Method and apparatus for generating and recognizing speech as a user interface element in systems and network management |
US20030023721A1 (en) * | 1997-07-15 | 2003-01-30 | Computer Associates Think, Inc. | Method and apparatus for generating context-descriptive messages |
US7315893B2 (en) * | 1997-07-15 | 2008-01-01 | Computer Associates Think, Inc. | Method and apparatus for filtering messages based on context |
US20060193278A1 (en) * | 1997-10-15 | 2006-08-31 | Wolfgang Theimer | Mobile telephone for Internet applications |
US6286046B1 (en) * | 1997-12-22 | 2001-09-04 | International Business Machines Corporation | Method of recording and measuring e-business sessions on the world wide web |
JP3561139B2 (ja) * | 1998-01-27 | 2004-09-02 | シャープ株式会社 | ファイルオブジェクト中継方法、ファイルオブジェクト中継方法のプログラムを記録したコンピュータで読取り可能な記録媒体、およびゲートウェイ計算機 |
US6735770B1 (en) * | 1998-04-27 | 2004-05-11 | Sun Microsystems, Inc. | Method and apparatus for high performance access to data in a message store |
US20020176009A1 (en) * | 1998-05-08 | 2002-11-28 | Johnson Sandra Marie | Image processor circuits, systems, and methods |
US6412015B1 (en) * | 1998-06-24 | 2002-06-25 | New Moon Systems, Inc. | System and method for virtualizing and controlling input and output of computer programs |
US6330561B1 (en) * | 1998-06-26 | 2001-12-11 | At&T Corp. | Method and apparatus for improving end to end performance of a data network |
US6591305B2 (en) * | 1998-06-30 | 2003-07-08 | Sun Microsystems, Inc. | Method and system for delivering data from a server object to a client object using a non-proprietary data transfer protocol |
US6633914B1 (en) * | 1998-08-05 | 2003-10-14 | International Business Machines Corporation | Systems, methods and computer program products for handling client requests for server application processing using a thread pool |
US6704790B1 (en) * | 1998-09-16 | 2004-03-09 | Microsoft Corporation | Server-side stream switching |
US7159005B1 (en) * | 1998-10-16 | 2007-01-02 | International Business Machines Corporation | Methods, systems and computer program products for restartable multiplexed file transfers |
US6453342B1 (en) * | 1998-12-03 | 2002-09-17 | International Business Machines Corporation | Method and apparatus for selective caching and cleaning of history pages for web browsers |
CN1108578C (zh) * | 1999-01-28 | 2003-05-14 | 国际商业机器公司 | 为离线客户请求提供响应的方法及装置 |
US6434596B1 (en) * | 1999-01-29 | 2002-08-13 | Sony Corporation | Method and system for distributed queues in a multimedia network with proxies |
US7080158B1 (en) * | 1999-02-09 | 2006-07-18 | Nortel Networks Limited | Network caching using resource redirection |
BR0010094A (pt) * | 1999-04-26 | 2002-07-02 | Computer Ass Think Inc | Processo para manter a integridade de dados armazenados por todo um sistema de computador distribuìdo |
US6510550B1 (en) * | 1999-05-12 | 2003-01-21 | Intel Corporation | Method and apparatus for providing intermittent connectivity support in a computer application |
US6372494B1 (en) * | 1999-05-14 | 2002-04-16 | Advanced Tissue Sciences, Inc. | Methods of making conditioned cell culture medium compositions |
EP1195059B1 (en) | 1999-05-28 | 2004-11-10 | Nokia Corporation | Interactive services user interface and server |
US7100195B1 (en) | 1999-07-30 | 2006-08-29 | Accenture Llp | Managing user information on an e-commerce system |
US6766298B1 (en) * | 1999-09-03 | 2004-07-20 | Cisco Technology, Inc. | Application server configured for dynamically generating web pages for voice enabled web applications |
US6779042B1 (en) | 1999-09-10 | 2004-08-17 | Ianywhere Solutions, Inc. | System, method, and computer program product for enabling on-device servers, offline forms, and dynamic ad tracking on mobile devices |
US7987420B1 (en) | 1999-09-10 | 2011-07-26 | Ianywhere Solutions, Inc. | System, method, and computer program product for a scalable, configurable, client/server, cross-platform browser for mobile devices |
US20080215672A1 (en) * | 1999-09-10 | 2008-09-04 | Sybase 365, Inc. | System, Method, and Computer Program Product for a Scalable, Configurable, Client/Server, Cross-Platform Browser for Mobile Devices |
US8595308B1 (en) | 1999-09-10 | 2013-11-26 | Ianywhere Solutions, Inc. | System, method, and computer program product for server side processing in a mobile device environment |
US20020052781A1 (en) * | 1999-09-10 | 2002-05-02 | Avantgo, Inc. | Interactive advertisement mechanism on a mobile device |
US20010047394A1 (en) * | 1999-09-10 | 2001-11-29 | Kloba David D. | System, method, and computer program product for executing scripts on mobile devices |
US7392308B2 (en) * | 1999-09-10 | 2008-06-24 | Ianywhere Solutions, Inc. | System, method, and computer program product for placement of channels on a mobile device |
US7305475B2 (en) * | 1999-10-12 | 2007-12-04 | Webmd Health | System and method for enabling a client application to operate offline from a server |
US6950881B1 (en) * | 1999-11-02 | 2005-09-27 | Mshift, Inc. | System for converting wireless communications for a mobile device |
JP2001134519A (ja) * | 1999-11-05 | 2001-05-18 | Toshiba Corp | クライアント・サーバーシステム及び業務支援システム |
US6633919B1 (en) * | 1999-11-18 | 2003-10-14 | International Business Machines Corporation | Method, system and program product for managing the flow of data between senders and receivers of a computing environment |
AU2001247984A1 (en) * | 2000-02-16 | 2001-08-27 | Bea Systems Inc. | Workflow integration system for enterprise wide electronic collaboration |
US6973498B1 (en) * | 2000-03-23 | 2005-12-06 | Microsoft Corporation | Local queue creation security |
US20020004803A1 (en) * | 2000-04-07 | 2002-01-10 | Oleg Serebrennikov | Method and apparatus for the dynamic modification of relational information in electronic documents such as HTML pages and the like |
US6981028B1 (en) * | 2000-04-28 | 2005-12-27 | Obongo, Inc. | Method and system of implementing recorded data for automating internet interactions |
US8540574B1 (en) | 2000-05-30 | 2013-09-24 | Core Wireless Licensing S.A.R.L. | Navigation aware news service |
US8175921B1 (en) | 2000-05-30 | 2012-05-08 | Nokia Corporation | Location aware product placement and advertising |
US7191394B1 (en) | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
US7346848B1 (en) | 2000-06-21 | 2008-03-18 | Microsoft Corporation | Single window navigation methods and systems |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
US6996599B1 (en) * | 2000-06-21 | 2006-02-07 | Microsoft Corporation | System and method providing multi-tier applications architecture |
US6948135B1 (en) | 2000-06-21 | 2005-09-20 | Microsoft Corporation | Method and systems of providing information to computer users |
GB2364483A (en) * | 2000-06-30 | 2002-01-23 | Nokia Oy Ab | Accessing more than one item of information from a remote server |
US6704024B2 (en) * | 2000-08-07 | 2004-03-09 | Zframe, Inc. | Visual content browsing using rasterized representations |
KR20020043239A (ko) * | 2000-08-23 | 2002-06-08 | 요트.게.아. 롤페즈 | 콘텐트 아이템, 클라이언트 시스템 및 서버 시스템의렌더링을 향상시키는 방법 |
TWI244617B (en) * | 2000-09-16 | 2005-12-01 | Ibm | A client/server-based data processing system for performing transactions between clients and a server and a method of performing the transactions |
US7668740B1 (en) * | 2000-09-22 | 2010-02-23 | Ita Software, Inc. | Method, system, and computer program product for interfacing with information sources |
US6999992B1 (en) | 2000-10-04 | 2006-02-14 | Microsoft Corporation | Efficiently sending event notifications over a computer network |
US7076275B1 (en) * | 2000-10-13 | 2006-07-11 | Palmsource, Inc. | Method and system for single-step enablement of telephony functionality for a portable computer system |
US7330876B1 (en) | 2000-10-13 | 2008-02-12 | Aol Llc, A Delaware Limited Liability Company | Method and system of automating internet interactions |
US20020147809A1 (en) * | 2000-10-17 | 2002-10-10 | Anders Vinberg | Method and apparatus for selectively displaying layered network diagrams |
US20020103974A1 (en) * | 2000-11-29 | 2002-08-01 | Giacomini Peter Joseph | Method and apparatus for economical cache population |
KR100546931B1 (ko) * | 2000-12-20 | 2006-01-26 | 인터내셔널 비지네스 머신즈 코포레이션 | 원격 소프트웨어 배포 및 설치를 위한 방법 및 시스템 |
US20020083145A1 (en) * | 2000-12-22 | 2002-06-27 | Nortel Networks Limited | Method and system for online/offline services |
JP4307747B2 (ja) * | 2001-01-25 | 2009-08-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 接続受付システム、受付サーバ、クライアント端末、接続受付管理方法、記憶媒体、コンピュータプログラム |
US7734725B2 (en) * | 2001-03-30 | 2010-06-08 | International Business Machines Corporation | Method and apparatus for server side queuing to control page presentation on web enabled device |
US6895005B1 (en) | 2001-04-23 | 2005-05-17 | Sprint Spectrum L.P. | Business logic server for facilitating the transmission of a data download to a mobile wireless unit |
US7203756B2 (en) * | 2001-04-27 | 2007-04-10 | International Business Machines Corporation | Mechanism to cache references to Java RMI remote objects implementing the unreferenced interface |
US6985746B2 (en) * | 2001-04-30 | 2006-01-10 | Ipr Licensing, Inc. | Wireless communication system having mobility-based content delivery |
US7194551B1 (en) * | 2001-04-30 | 2007-03-20 | Sprint Spectrum L.P. | System and method for downloading data to a mobile wireless unit using over-the-air parameter administration services |
US8095597B2 (en) | 2001-05-01 | 2012-01-10 | Aol Inc. | Method and system of automating data capture from electronic correspondence |
JP4508471B2 (ja) * | 2001-05-25 | 2010-07-21 | キヤノン株式会社 | プリントシステム及び情報処理装置 |
US7272232B1 (en) * | 2001-05-30 | 2007-09-18 | Palmsource, Inc. | System and method for prioritizing and balancing simultaneous audio outputs in a handheld device |
US6754884B1 (en) | 2001-07-02 | 2004-06-22 | Bea Systems, Inc. | Programming language extensions for processing XML objects and related applications |
US7437710B2 (en) * | 2001-07-02 | 2008-10-14 | Bea Systems, Inc. | Annotation based development platform for stateful web services |
US7356803B2 (en) * | 2001-07-02 | 2008-04-08 | Bea Systems, Inc. | Annotation based development platform for asynchronous web services |
US6918107B2 (en) * | 2001-07-02 | 2005-07-12 | Bea Systems, Inc. | Programming language extensions for processing data representation language objects and related applications |
US8112529B2 (en) | 2001-08-20 | 2012-02-07 | Masterobjects, Inc. | System and method for asynchronous client server session communication |
US7962565B2 (en) * | 2001-09-29 | 2011-06-14 | Siebel Systems, Inc. | Method, apparatus and system for a mobile web client |
EP1435058A4 (en) * | 2001-10-11 | 2005-12-07 | Visualsciences Llc | SYSTEM, METHOD AND COMPUTER PROGRAM PRODUCT FOR PROCESSING AND VISUALIZING INFORMATION |
US7552222B2 (en) * | 2001-10-18 | 2009-06-23 | Bea Systems, Inc. | Single system user identity |
US7831655B2 (en) | 2001-10-18 | 2010-11-09 | Bea Systems, Inc. | System and method for implementing a service adapter |
US6859810B2 (en) * | 2001-12-10 | 2005-02-22 | Bea Systems, Inc. | Declarative specification and engine for non-isomorphic data mapping |
US20030145048A1 (en) * | 2002-01-18 | 2003-07-31 | Bea Systems, Inc. | System and method for HTTP request preprocessing for servlets and application servers |
US7516447B2 (en) * | 2002-02-22 | 2009-04-07 | Bea Systems, Inc. | Methods and apparatus for building, customizing and using software abstractions of external entities |
AU2002322356B2 (en) * | 2002-02-22 | 2007-12-13 | Oracle International Corporation | Web service development platform for asynchronous web services |
US20040078440A1 (en) * | 2002-05-01 | 2004-04-22 | Tim Potter | High availability event topic |
US7257645B2 (en) * | 2002-05-01 | 2007-08-14 | Bea Systems, Inc. | System and method for storing large messages |
US7155438B2 (en) * | 2002-05-01 | 2006-12-26 | Bea Systems, Inc. | High availability for event forwarding |
US7526519B2 (en) * | 2002-05-01 | 2009-04-28 | Bea Systems, Inc. | High availability application view deployment |
US7424717B2 (en) * | 2002-05-01 | 2008-09-09 | Bea Systems, Inc. | Systems and methods for business process plug-in development |
US8135772B2 (en) | 2002-05-01 | 2012-03-13 | Oracle International Corporation | Single servlets for B2B message routing |
US7676538B2 (en) | 2002-05-02 | 2010-03-09 | Bea Systems, Inc. | Systems and methods for application view transactions |
US7484224B2 (en) | 2002-05-02 | 2009-01-27 | Bae Systems, Inc. | Adapter deployment without recycle |
US7350184B2 (en) | 2002-05-02 | 2008-03-25 | Bea Systems, Inc. | System and method for enterprise application interactions |
US7627631B2 (en) * | 2002-05-02 | 2009-12-01 | Bea Systems, Inc. | Systems and methods for collaborative business plug-ins |
US7222148B2 (en) | 2002-05-02 | 2007-05-22 | Bea Systems, Inc. | System and method for providing highly available processing of asynchronous service requests |
US7493628B2 (en) * | 2002-05-02 | 2009-02-17 | Bea Systems, Inc. | Shared common connection factory |
US8117328B2 (en) | 2002-06-25 | 2012-02-14 | Microsoft Corporation | System and method for automatically recovering from failed network connections in streaming media scenarios |
US6988099B2 (en) * | 2002-06-27 | 2006-01-17 | Bea Systems, Inc. | Systems and methods for maintaining transactional persistence |
US8245128B1 (en) * | 2002-07-17 | 2012-08-14 | Oracle International Corporation | Intelligent client agent for a hybrid online/offline application |
US8010706B1 (en) * | 2002-08-05 | 2011-08-30 | Purple Communications, Inc. | Method of and system for enabling offline applications |
US7418702B2 (en) * | 2002-08-06 | 2008-08-26 | Sheng (Ted) Tai Tsao | Concurrent web based multi-task support for control management system |
US11336754B1 (en) * | 2002-08-06 | 2022-05-17 | Sheng Tai Tsao | Method and system for concurrent web based multitasking support |
US7650591B2 (en) | 2003-01-24 | 2010-01-19 | Bea Systems, Inc. | Marshaling and un-marshaling data types in XML and Java |
US20040153440A1 (en) * | 2003-01-30 | 2004-08-05 | Assaf Halevy | Unified management of queries in a multi-platform distributed environment |
US7584474B2 (en) * | 2003-02-25 | 2009-09-01 | Bea Systems, Inc. | Systems and methods for transaction chaining |
US7293038B2 (en) * | 2003-02-25 | 2007-11-06 | Bea Systems, Inc. | Systems and methods for client-side filtering of subscribed messages |
US7752599B2 (en) | 2003-02-25 | 2010-07-06 | Bea Systems Inc. | Systems and methods extending an existing programming language with constructs |
US20050022164A1 (en) * | 2003-02-25 | 2005-01-27 | Bea Systems, Inc. | Systems and methods utilizing a workflow definition language |
US7774697B2 (en) * | 2003-02-25 | 2010-08-10 | Bea Systems, Inc. | System and method for structuring distributed applications |
US20050108682A1 (en) * | 2003-02-26 | 2005-05-19 | Bea Systems, Inc. | Systems for type-independent source code editing |
US7707564B2 (en) | 2003-02-26 | 2010-04-27 | Bea Systems, Inc. | Systems and methods for creating network-based software services using source code annotations |
US7539985B2 (en) * | 2003-02-26 | 2009-05-26 | Bea Systems, Inc. | Systems and methods for dynamic component versioning |
US8032860B2 (en) * | 2003-02-26 | 2011-10-04 | Oracle International Corporation | Methods for type-independent source code editing |
US7299454B2 (en) * | 2003-02-26 | 2007-11-20 | Bea Systems, Inc. | Method for multi-language debugging |
US7650276B2 (en) | 2003-02-26 | 2010-01-19 | Bea Systems, Inc. | System and method for dynamic data binding in distributed applications |
US7076772B2 (en) * | 2003-02-26 | 2006-07-11 | Bea Systems, Inc. | System and method for multi-language extensible compiler framework |
US20040230955A1 (en) * | 2003-02-26 | 2004-11-18 | Bea Systems, Inc. | System for multi-language debugging |
US20050044173A1 (en) * | 2003-02-28 | 2005-02-24 | Olander Daryl B. | System and method for implementing business processes in a portal |
US20040226030A1 (en) * | 2003-02-28 | 2004-11-11 | Kyle Marvin | Systems and methods for an extensible software proxy |
US7636722B2 (en) * | 2003-02-28 | 2009-12-22 | Bea Systems, Inc. | System and method for describing application extensions in XML |
US7444620B2 (en) | 2003-02-28 | 2008-10-28 | Bea Systems, Inc. | Systems and methods for a common runtime container framework |
US7650592B2 (en) | 2003-03-01 | 2010-01-19 | Bea Systems, Inc. | Systems and methods for multi-view debugging environment |
US7370066B1 (en) | 2003-03-24 | 2008-05-06 | Microsoft Corporation | System and method for offline editing of data files |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7275216B2 (en) | 2003-03-24 | 2007-09-25 | Microsoft Corporation | System and method for designing electronic forms and hierarchical schemas |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US6908058B2 (en) * | 2003-03-28 | 2005-06-21 | Suncast Corporation | Hose reel cart with elevated crank handle |
US7296017B2 (en) | 2003-03-28 | 2007-11-13 | Microsoft Corporation | Validation of XML data files |
US7281029B2 (en) * | 2003-05-13 | 2007-10-09 | Aol Llc, A Delaware Limited Liability Company | Method and system of capturing data for automating internet interactions |
JPWO2004102396A1 (ja) | 2003-05-14 | 2006-07-13 | 富士通株式会社 | 遅延ストレージ装置および遅延処理方法 |
US20040267962A1 (en) * | 2003-06-24 | 2004-12-30 | Nokia Corporation | Method and system in wireless data communication network for transferring content to terminal equipment and corresponding terminal equipment, server and browser devices |
US7532571B1 (en) * | 2003-06-27 | 2009-05-12 | Microsoft Corporation | Providing online connectivity across a range of electronic communications systems |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
US7873353B2 (en) * | 2003-09-30 | 2011-01-18 | Ianywhere Solutions, Inc. | Method and system for accessing applications and data, and for tracking of key indicators on mobile handheld devices |
US7185238B2 (en) * | 2003-09-30 | 2007-02-27 | Sap Ag | Data loss prevention |
FR2863127A1 (fr) * | 2003-12-02 | 2005-06-03 | Canon Kk | Procedes et dispositifs pour la delivrance asynchrone de donnees numeriques |
US8819072B1 (en) | 2004-02-02 | 2014-08-26 | Microsoft Corporation | Promoting data from structured data files |
JP4144882B2 (ja) | 2004-05-14 | 2008-09-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、情報システム、プロキシ処理方法、及びプログラムと記録媒体 |
US7774620B1 (en) | 2004-05-27 | 2010-08-10 | Microsoft Corporation | Executing applications at appropriate trust levels |
US20060010173A1 (en) * | 2004-06-30 | 2006-01-12 | Kilday Roger W | Methods and systems for client-side, on-disk caching |
EP1612992B1 (en) * | 2004-07-02 | 2010-06-30 | Alcatel Lucent | Method to provide multicast data transmission in a discontinuous network |
US7617501B2 (en) | 2004-07-09 | 2009-11-10 | Quest Software, Inc. | Apparatus, system, and method for managing policies on a computer having a foreign operating system |
US20070027991A1 (en) * | 2005-07-14 | 2007-02-01 | Mistletoe Technologies, Inc. | TCP isolation with semantic processor TCP state machine |
US8135803B2 (en) * | 2004-08-23 | 2012-03-13 | Ianywhere Solutions, Inc. | Method, system, and computer program product for offline advertisement servicing and cycling |
JP2006085365A (ja) * | 2004-09-15 | 2006-03-30 | Ricoh Co Ltd | プロキシ装置、サービス利用装置、プロキシプログラム、サービス利用プログラム、記録媒体及び非同期オペレーション提供方法 |
US20060064470A1 (en) * | 2004-09-23 | 2006-03-23 | Sargent Antony J | Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors |
US20060075336A1 (en) * | 2004-09-29 | 2006-04-06 | International Business Machines Corporation | Method, system and program product for providing content over a network |
US7692636B2 (en) | 2004-09-30 | 2010-04-06 | Microsoft Corporation | Systems and methods for handwriting to a screen |
US20060074933A1 (en) * | 2004-09-30 | 2006-04-06 | Microsoft Corporation | Workflow interaction |
US8487879B2 (en) | 2004-10-29 | 2013-07-16 | Microsoft Corporation | Systems and methods for interacting with a computer through handwriting to a screen |
WO2006091247A2 (en) * | 2004-11-12 | 2006-08-31 | Taser International, Inc. | Systems and methods for electronic weaponry having audio and/or video recording capability |
US7712022B2 (en) * | 2004-11-15 | 2010-05-04 | Microsoft Corporation | Mutually exclusive options in electronic forms |
US7509353B2 (en) * | 2004-11-16 | 2009-03-24 | Microsoft Corporation | Methods and systems for exchanging and rendering forms |
US7721190B2 (en) | 2004-11-16 | 2010-05-18 | Microsoft Corporation | Methods and systems for server side form processing |
US8458467B2 (en) * | 2005-06-21 | 2013-06-04 | Cisco Technology, Inc. | Method and apparatus for adaptive application message payload content transformation in a network infrastructure element |
US7577749B1 (en) | 2004-12-03 | 2009-08-18 | Ux Ltd. | Emulation of persistent HTTP connections between network devices |
US7937651B2 (en) | 2005-01-14 | 2011-05-03 | Microsoft Corporation | Structural editing operations for network forms |
US7668937B2 (en) * | 2005-02-22 | 2010-02-23 | Research In Motion Limited | Wireless communication device use of application server applications |
US7725834B2 (en) | 2005-03-04 | 2010-05-25 | Microsoft Corporation | Designer-created aspect for an electronic form template |
US8010515B2 (en) * | 2005-04-15 | 2011-08-30 | Microsoft Corporation | Query to an electronic form |
US8200975B2 (en) | 2005-06-29 | 2012-06-12 | Microsoft Corporation | Digital signatures for network forms |
US7676806B2 (en) * | 2005-09-27 | 2010-03-09 | Microsoft Corporation | Deployment, maintenance and configuration of complex hardware and software systems |
US7596720B2 (en) * | 2005-09-27 | 2009-09-29 | Microsoft Corporation | Application health checks |
US7603669B2 (en) * | 2005-09-27 | 2009-10-13 | Microsoft Corporation | Upgrade and downgrade of data resource components |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7904949B2 (en) | 2005-12-19 | 2011-03-08 | Quest Software, Inc. | Apparatus, systems and methods to provide authentication services to a legacy application |
US8087075B2 (en) | 2006-02-13 | 2011-12-27 | Quest Software, Inc. | Disconnected credential validation using pre-fetched service tickets |
JP2007272742A (ja) * | 2006-03-31 | 2007-10-18 | Ntt Docomo Inc | 通信端末及び通信方法 |
US8429712B2 (en) | 2006-06-08 | 2013-04-23 | Quest Software, Inc. | Centralized user authentication system apparatus and method |
JP2008084015A (ja) * | 2006-09-27 | 2008-04-10 | Casio Comput Co Ltd | ウェブページ閲覧プログラム及び入力フォーム編集装置 |
US8086710B2 (en) | 2006-10-30 | 2011-12-27 | Quest Software, Inc. | Identity migration apparatus and method |
US7895332B2 (en) | 2006-10-30 | 2011-02-22 | Quest Software, Inc. | Identity migration system apparatus and method |
US8200764B2 (en) * | 2006-12-19 | 2012-06-12 | International Business Machines Corporation | System and method for achieving highly scalable real-time collaboration applications using HTTP |
US8055761B2 (en) * | 2007-01-31 | 2011-11-08 | International Business Machines Corporation | Method and apparatus for providing transparent network connectivity |
CN101296176B (zh) * | 2007-04-25 | 2010-12-22 | 阿里巴巴集团控股有限公司 | 一种基于群集的数据处理方法和装置 |
US20090003387A1 (en) * | 2007-06-27 | 2009-01-01 | Microsoft Corporation | Synchronization Between Connection Manager and Extension Components |
US20090228545A1 (en) * | 2008-03-07 | 2009-09-10 | Mendez Jose A | Online mobile applications capable of dealing with occasional disconnects |
US9122519B1 (en) * | 2008-03-12 | 2015-09-01 | Lockheed Martin Corporation | Governor for elimination of repetitive requests |
US8949344B2 (en) * | 2008-09-15 | 2015-02-03 | Microsoft Corporation | Asynchronous queued messaging for web applications |
US8255984B1 (en) | 2009-07-01 | 2012-08-28 | Quest Software, Inc. | Single sign-on system for shared resource environments |
US8595752B1 (en) * | 2011-06-13 | 2013-11-26 | Google Inc. | Hybrid application message passing |
JP5814284B2 (ja) * | 2013-03-22 | 2015-11-17 | ヤフー株式会社 | 端末装置、表示方法、表示制御プログラム及びサーバ装置 |
JP6245005B2 (ja) * | 2014-03-13 | 2017-12-13 | 富士通株式会社 | ウェブページ表示システム及びウェブページ表示プログラム |
JP6629157B2 (ja) | 2016-09-06 | 2020-01-15 | 株式会社東芝 | システム |
US10620996B2 (en) * | 2017-04-26 | 2020-04-14 | Servicenow, Inc. | Batching asynchronous web requests |
CN111061938A (zh) * | 2019-12-17 | 2020-04-24 | 深圳前海环融联易信息科技服务有限公司 | 解决多次触发网络请求的防抖动函数方法、装置、计算机设备及存储介质 |
CN111565219A (zh) * | 2020-04-16 | 2020-08-21 | 浙江工业大学 | 一种模拟真实排队的网络连接池协议的实现方法 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4438511A (en) * | 1980-11-10 | 1984-03-20 | Telebit Corporation | Packetized ensemble modem |
US4893307A (en) * | 1988-02-29 | 1990-01-09 | International Business Machines Corporation | Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network |
US5021949A (en) * | 1988-02-29 | 1991-06-04 | International Business Machines Corporation | Method and apparatus for linking an SNA host to a remote SNA host over a packet switched communications network |
US5473772A (en) * | 1991-04-02 | 1995-12-05 | International Business Machines Corporation | Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs |
US5193162A (en) * | 1989-11-06 | 1993-03-09 | Unisys Corporation | Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities |
US5220501A (en) * | 1989-12-08 | 1993-06-15 | Online Resources, Ltd. | Method and system for remote delivery of retail banking services |
JP2511591B2 (ja) * | 1990-10-29 | 1996-06-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 無線光通信システムの動作方法および光通信システム |
US5241625A (en) * | 1990-11-27 | 1993-08-31 | Farallon Computing, Inc. | Screen image sharing among heterogeneous computers |
US5611038A (en) * | 1991-04-17 | 1997-03-11 | Shaw; Venson M. | Audio/video transceiver provided with a device for reconfiguration of incompatibly received or transmitted video and audio information |
US5481721A (en) * | 1991-07-17 | 1996-01-02 | Next Computer, Inc. | Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects |
US5224098A (en) * | 1991-07-17 | 1993-06-29 | International Business Machines Corporation | Compensation for mismatched transport protocols in a data communications network |
DE4131133B4 (de) * | 1991-09-19 | 2005-09-08 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Austausch von Daten in Datenverarbeitungsanlagen |
US5442633A (en) * | 1992-07-08 | 1995-08-15 | International Business Machines Corporation | Shortcut network layer routing for mobile hosts |
US5737536A (en) * | 1993-02-19 | 1998-04-07 | Borland International, Inc. | System and methods for optimized access in a multi-user environment |
US5511208A (en) * | 1993-03-23 | 1996-04-23 | International Business Machines Corporation | Locating resources in computer networks having cache server nodes |
JPH06324928A (ja) * | 1993-05-14 | 1994-11-25 | Mitsubishi Electric Corp | ログ生成装置とファイルの異なるバージョンの調停のための装置及び異なる場所にあるコンピュータファイルの異なるバージョンを調停するための装置 |
US5446736A (en) * | 1993-10-07 | 1995-08-29 | Ast Research, Inc. | Method and apparatus for connecting a node to a wireless network using a standard protocol |
US5412654A (en) * | 1994-01-10 | 1995-05-02 | International Business Machines Corporation | Highly dynamic destination-sequenced destination vector routing for mobile computers |
US5446888A (en) * | 1994-01-14 | 1995-08-29 | Pyne; Charles F. | Remote file transfer method and apparatus |
US5574906A (en) * | 1994-10-24 | 1996-11-12 | International Business Machines Corporation | System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing |
US5572528A (en) * | 1995-03-20 | 1996-11-05 | Novell, Inc. | Mobile networking method and apparatus |
US5581558A (en) * | 1995-03-29 | 1996-12-03 | Lucent Technologies Inc. | Apparatus for bridging non-compatible network architectures |
US5701451A (en) * | 1995-06-07 | 1997-12-23 | International Business Machines Corporation | Method for fulfilling requests of a web browser |
US5829023A (en) * | 1995-07-17 | 1998-10-27 | Cirrus Logic, Inc. | Method and apparatus for encoding history of file access to support automatic file caching on portable and desktop computers |
US5850517A (en) * | 1995-08-31 | 1998-12-15 | Oracle Corporation | Communication link for client-server having agent which sends plurality of requests independent of client and receives information from the server independent of the server |
US5737619A (en) * | 1995-10-19 | 1998-04-07 | Judson; David Hugh | World wide web browsing with content delivery over an idle connection and interstitial content display |
US5572643A (en) * | 1995-10-19 | 1996-11-05 | Judson; David H. | Web browser with dynamic display of information objects during linking |
US5754774A (en) * | 1996-02-15 | 1998-05-19 | International Business Machine Corp. | Client/server communication system |
US5878213A (en) * | 1996-02-15 | 1999-03-02 | International Business Machines Corporation | Methods, systems and computer program products for the synchronization of time coherent caching system |
US5867661A (en) * | 1996-02-15 | 1999-02-02 | International Business Machines Corporation | Method and apparatus of using virtual sockets for reducing data transmitted over a wireless communication link between a client web browser and a host web server using a standard TCP protocol |
US5859971A (en) * | 1996-02-15 | 1999-01-12 | International Business Machines Corp. | Differencing client/server communication system for use with CGI forms |
US5673322A (en) * | 1996-03-22 | 1997-09-30 | Bell Communications Research, Inc. | System and method for providing protocol translation and filtering to access the world wide web from wireless or low-bandwidth networks |
JPH09270794A (ja) * | 1996-03-29 | 1997-10-14 | Mitsubishi Electric Corp | ネットワーク管理装置 |
US5764910A (en) * | 1996-04-02 | 1998-06-09 | National Semiconductor Corporation | Method and apparatus for encoding and using network resource locators |
US5928323A (en) * | 1996-05-30 | 1999-07-27 | Sun Microsystems, Inc. | Apparatus and method for dynamically generating information with server-side software objects |
US5857201A (en) * | 1996-06-18 | 1999-01-05 | Wright Strategies, Inc. | Enterprise connectivity to handheld devices |
US5870558A (en) * | 1996-06-25 | 1999-02-09 | Mciworldcom, Inc. | Intranet graphical user interface for SONET network management |
US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
-
1997
- 1997-08-28 US US08/919,913 patent/US6070184A/en not_active Expired - Lifetime
-
1998
- 1998-05-08 TW TW087107172A patent/TW386197B/zh not_active IP Right Cessation
- 1998-07-24 JP JP20933198A patent/JP4041217B2/ja not_active Expired - Lifetime
- 1998-08-03 KR KR1019980031580A patent/KR100318781B1/ko not_active IP Right Cessation
- 1998-08-06 GB GB9817016A patent/GB2330503B/en not_active Expired - Lifetime
- 1998-08-12 SG SG1998002977A patent/SG77192A1/en unknown
- 1998-08-13 CN CN98118415A patent/CN1113504C/zh not_active Expired - Lifetime
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100411380C (zh) * | 2002-08-19 | 2008-08-13 | 万达信息股份有限公司 | 一种网络数据交换中同步与异步间的转换方法 |
CN100352195C (zh) * | 2003-05-26 | 2007-11-28 | 精工爱普生株式会社 | 客户端及服务器的系统、服务器及信息处理系统 |
CN1830192B (zh) * | 2003-07-31 | 2010-09-15 | 国际商业机器公司 | 用于异步地处理请求的方法和系统 |
CN100570600C (zh) * | 2004-07-14 | 2009-12-16 | 国际商业机器公司 | 用于实现异步事务交互作用的方法和数据处理系统 |
CN1941771B (zh) * | 2005-09-27 | 2011-09-07 | 国际商业机器公司 | 用于面向服务的体系结构应用的Web服务信息管理方法和系统 |
US9338022B2 (en) | 2007-03-08 | 2016-05-10 | Samsung Electronics Co., Ltd. | Method of processing action, method of controlling controlled device, controlled device, and control point |
CN101296236B (zh) * | 2008-06-12 | 2011-06-08 | 北京中星微电子有限公司 | 多用户实时访问多媒体数据的方法、系统及数据客户端 |
CN102035872A (zh) * | 2009-09-30 | 2011-04-27 | 国际商业机器公司 | 改进断续连接环境中实时应用性能的装置、系统和方法 |
CN110912958A (zh) * | 2018-09-18 | 2020-03-24 | 中国移动通信集团重庆有限公司 | Http连接的处理方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
KR100318781B1 (ko) | 2002-02-19 |
CN1113504C (zh) | 2003-07-02 |
GB9817016D0 (en) | 1998-09-30 |
SG77192A1 (en) | 2000-12-19 |
JP4041217B2 (ja) | 2008-01-30 |
TW386197B (en) | 2000-04-01 |
GB2330503A (en) | 1999-04-21 |
JPH11120108A (ja) | 1999-04-30 |
KR19990023318A (ko) | 1999-03-25 |
GB2330503B (en) | 2002-05-29 |
US6070184A (en) | 2000-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1113504C (zh) | 服务器侧的异步格式管理 | |
CN103188283B (zh) | 文件上传下载的方法、服务器及系统 | |
JP4233638B2 (ja) | 第2のコンピュータに一時的かつ断続的に接続される第1のコンピュータで実行されているウェブ・ブラウザと第2のコンピュータ内のウェブ・サーバ間で通信する方法、並びにそのシステム及びコンピュータ可読プログラムを記録したコンピュータ可読記録媒体 | |
CA2846389C (en) | Remote browsing session management | |
US6571295B1 (en) | Web page annotating and processing | |
CN1114157C (zh) | 互联网访问计算机的网络传输数据的改写方法及其装置 | |
US20080289029A1 (en) | Method and system for continuation of browsing sessions between devices | |
US20060294396A1 (en) | Multiplatform synchronized data access from mobile devices of dynamically aggregated content | |
CN103383687B (zh) | 一种页面处理方法和装置 | |
EP1381944A2 (en) | Application synchronisation | |
JPH10124415A (ja) | ブラウザをベースとする電子メッセージ送信方法 | |
CN101729598A (zh) | 提高Web服务响应速率的方法和系统及网络处理器 | |
CN107181779A (zh) | 访问请求的处理方法、装置和系统 | |
CN1244071C (zh) | 基于手持设备的证券交易系统和方法 | |
US20050091340A1 (en) | Processing interactive content offline | |
CN105279156B (zh) | 网络信息通信方法及网络信息浏览装置 | |
CN101562791A (zh) | 提供通过客户端经数据网发送包装短消息的系统和方法 | |
CN114722784A (zh) | 一种业务流转中同一表单实时同步编辑的方法 | |
JP2002342213A (ja) | コンテンツ提供方法 | |
JP3851110B2 (ja) | コンテンツ提供方法 | |
JP2001154936A (ja) | メールデータ管理装置、及びメールデータ管理プログラムが記憶された記憶媒体 | |
KR20180077827A (ko) | 웹 서버와 데이터베이스 서버 연동 방법 | |
TW591444B (en) | System and method for automatically transferring and sending electronic document | |
JP2000347974A (ja) | 情報共有処理方法、情報共有処理プログラム格納媒体、情報共有処理装置、および情報共有処理システム | |
CN1553363A (zh) | 移动装置管理系统与利用它进行网络信息传输与共享的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term |
Granted publication date: 20030702 |
|
CX01 | Expiry of patent term |