CN1298503A - 分布式系统中的动态查找服务 - Google Patents
分布式系统中的动态查找服务 Download PDFInfo
- Publication number
- CN1298503A CN1298503A CN99805304A CN99805304A CN1298503A CN 1298503 A CN1298503 A CN 1298503A CN 99805304 A CN99805304 A CN 99805304A CN 99805304 A CN99805304 A CN 99805304A CN 1298503 A CN1298503 A CN 1298503A
- Authority
- CN
- China
- Prior art keywords
- service
- searching
- client computer
- notice
- here
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0261—Garbage collection, i.e. reclamation of unreferenced memory using reference counting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17318—Parallel communications techniques, e.g. gather, scatter, reduce, roadcast, multicast, all to all
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
- G06F9/548—Object oriented; Remote method invocation [RMI]
-
- 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]
- H04L12/2803—Home automation networks
- H04L12/2805—Home Audio Video Interoperability [HAVI] networks
-
- 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]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
- H04L12/2809—Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- 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/50—Network services
- H04L67/55—Push-based network services
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/46—Indexing scheme relating to G06F9/46
- G06F2209/462—Lookup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- 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/133—Protocols for remote procedure calls [RPC]
-
- 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/24—Negotiation of communication capabilities
-
- 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)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Multi Processors (AREA)
- Information Transfer Between Computers (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
提供一种改进的查找服务,它允许动态地增加和删除服务。这一查找服务允许自动地增加和删除服务,而无需用户介入。结果,查找服务的客户在发生更新的同时可以继续利用查找服务及其相关联服务。另外,查找服务提供一种通知机制,客户可以用它接收查找服务被更新时的通知。通过接收这种通知,客户能够避免试图访问不再提供的服务以及新的服务刚增加到查找服务便能够利用它们。
Description
相关申请
以下所述的美国专利申请与本申请相关并引作参考:
1998年2月26日提交的题目为“分布式计算系统”的临时美国专利申请60/076,048。
1998年3月20日以代理档案号06502.0011-01000提交的题目为“租用存储的方法和系统”的美国专利申请09/044,923。
1998年3月20日以代理档案号06502.0011-02000提交的题目为“分布式系统中授权证书的租用的方法、装置和产品”的美国专利申请09/044,838。
1998年3月20日以代理档案号06502.0011-03000提交的题目为“分布式系统中团体成员的租用的方法、装置和产品”的美国专利申请09/044,834。
1998年3月20日以代理档案号06502.0054-00000提交的题目为“基于事件的系统中传送行为的方法”的美国专利申请09/044,933。
1998年3月20日以代理档案号06502.0062-01000提交的题目为“分布式系统中事件通知的对象和远程加载的延期重构”的美国专利申请09/044,919。
1998年3月20日以代理档案号06502.0103-00000提交的题目为“识别远程方法的确定性无用信息的方法和系统”的美国专利申请09/045,652。
1998年3月20日以代理档案号06502.0104-00000提交的题目为“分布式系统中确定远程对象的状态的方法和装置”的美国专利申请09/044,790。
1998年3月20日以代理档案号06502.0105-00000提交的题目为“分布式系统中进行与远程程序调用相关联处理的可下载的智能代理”的美国专利申请09/044,930。
1998年3月20日以代理档案号06502.0106-00000提交的题目为“远程方法的挂起和延续”的美国专利申请09/044,917。
1998年3月20日以代理档案号06502.0107-00000提交的题目为“数据库中多入口和多模板匹配的方法和系统”的美国专利申请09/044,835。
1998年3月20日以代理档案号06502.0108-00000提交的题目为“数据库中就地改进的方法和系统”的美国专利申请09/044,839。
1998年3月20日以代理档案号06502.0109-00000提交的题目为“数据库中打印安全属性匹配的方法和系统”的美国专利申请09/044,945。
1998年3月20日以代理档案号06502.0112-00000提交的题目为“分布式系统中提供设备的通信中使用的可下载代码的装置和方法”的美国专利申请09/044,939。
1998年3月20日以代理档案号06502.0113-00000提交的题目为“便于访问查找服务的方法和系统”的美国专利申请09/044,826。
1998年3月20日以代理档案号06502.0114-00000提交的题目为“分布式系统动态验证信息的装置和方法”的美国专利申请09/044,932。
1998年2月26日提交的题目为“网络上动态分布计算的方法和装置”的美国专利申请09/030,840。
1998年3月20日以代理档案号06502.0116-00000提交的题目为“永久共享存储器空间的交互设计工具”的美国专利申请09/044,936。
1998年3月20日以代理档案号06502.0117-00000提交的题目为“多形态的基于令牌的控制”的美国专利申请09/044,934。
1998年3月20日以代理档案号06502.0118-00000提交的题目为“基于堆栈的存取控制”的美国专利申请09/044,915。
1998年3月20日以代理档案号06502.0119-00000提交的题目为“基于堆栈的安全要求”的美国专利申请09/044,944。
1998年3月20日以代理档案号06502.0120-00000提交的题目为“安全要求的过方法指定”的美国专利申请09/044,837。
发明领域
本发明一般地涉及数据处理系统,尤其涉及分布式系统中的动态查找服务。
发明背景
查找服务包括网络服务位于分布式系统中哪里的指示,分布式系统由多个在网络(例如局域网、宽域网或因特网)中连接起来的机器,如计算机和相关联外围设备组成。“网络服务”是指在网络上可访问的资源、数据或功能性。通常,对于每种服务,查找服务包括被客户机(例如一个程序)用于访问该服务(例如打印机)的地址。
传统的查找服务是静态的,在增加新服务或是删除现有服务而需要对查找服务进行更新时,使查找服务脱线,使得查找服务不可访问,然后通过系统管理员手工更新查找服务。其查找服务脱线的时间期间,分布式系统中的客户机不能访问查找服务和任何其网络服务。
传统查找服务的另一个限制是,在更新时,不能使客户机知道对查找服务的更新直至他们明确地执行刷新操作为止,它将最新的服务信息下载到客户机。然而,在这种刷新以前,如果客户机请求不再可以提供的服务,会发生引起客户机死机的差错。此外,在刷新以前,客户机不知道最近已经增加到查找服务的任何新服务。因此,需要改进分布式系统的查找服务。
发明概要
按照本发明的系统提供一种改进的查找服务,它允许动态增加和删除服务。这一查找服务允许自动地更新,即增加和删除可提供的服务,无需用户的介入。结果,查找服务的客户可以在发生更新的同时继续利用查找服务及其相关服务。另外,查找服务提供一种通知机制,客户可以利用它接收何时更新查找服务的通知。通过接收这一通知,客户能够避免试图访问不再提供的服务以及一旦将新的服务增加到查找服务便能够利用它们。
按照本发明的方法,提供数据处理系统中的一种方法,数据处理系统具有与服务相关联的查找服务。该方法接收查找服务的请求通知何时更新查找服务、确定何时更新查找服务、以及在确定更新查找服务时产生一通知。
按照本发明的方法,提供数据处理系统中的一种方法,数据处理系统具有与服务相关联的查找服务。该方法把查找服务被更新时得到通知的请求发送到查找服务,以及接收查找服务已经被更新的指示。
按照本发明的系统,提供一种数据处理系统,包括存储器和处理器。存储器包括含有可提供使用的服务的指示的查找服务、更新查找服务的第一客户机、和在第一客户机更新查找服务的同时利用查找服务的第二客户机。处理器使查找服务、第一客户机和第二客户机运行。
按照本发明的系统,提供一种数据处理系统,包括存储器和处理器。存储器包括可供使用的服务的指示的查找服务和客户机。查找服务接收查找服务何时被更新的通知的请求、确定查找服务何时被更新、以及产生当查找服务被更新时的通知。客户机把查找服务被更新时得到通知的请求发送到查找服务。处理器使客户机和查找服务运行。
按照本发明的系统,提供一种包括数据结构的计算机可读存储器装置。这一数据结构用于访问与可供使用的网络服务相关联的查找服务。数据结构包括供客户机用于登记注册查找服务使用的通知方法,当查找服务被更新时接收来自查找服务的通知。
附图简述
这里引入的并构成本说明一部分的附图示出本发明的一种实施方案,与说明相结合,用于说明本发明的优点和原理。在附图中:
图1示出适合于实施本发明的方法和系统的分布式系统。
图2示出图1中所示计算机的更详细方框图。
图3A和3B示出当客户机利用图1中所示查找服务时执行的步骤的流程图。
图4示出当执行与事件相关联处理时由图1所示查找服务执行的步骤的流程图。
图5示出含有本发明的数个装置的会议室。
图6示出显示屏显示图标,代表在图5的会议室中可供使用的服务。
图7示出显示屏,显示由图5会议室中计算机提供的可供使用服务。
本发明的详细描述
本发明的方法和系统提供一种改进的查找服务,它允许动态增加、删除服务。照此,服务的增加和删除是自动地进行的,没有用户的介入,查找服务的客户机可以在发生对查找服务的更新的同时继续使用该服务。另外,客户机可以登记注册查找服务,接收何时更新查找服务的通知。结果,当更新发生时,所有已登记注册的客户机接收更新的通知,使得客户机能够避免试图访问不再提供的服务以及使用最近增加到查找服务的服务。
分布式系统的概述
本发明的方法和系统是在具有不同部件,包含硬件和软件的分布式系统(“示例的分布式系统”)中操作。示例的分布式系统(1)允许系统的用户共享许多设备的网络上的服务和资源;(2)给程序员提供工具和编程模式,他们允许开发稳固安全的分布式系统;(3)简化管理分布式系统的任务。为了实现这种目标,示例的分布式系统使用JavaTM编程环境,允许以无缝方式将代码和数据从设备移动到设备。于是,示例的分布式系统在Java编程环境的上层,并利用这一环境的特征,包括由它提供的安全性和由它提供的强类型。Java编程环境在Jaworski的Java 1.1开发人员指南,Sams.net(1997)中作了更清楚地描述,在此将其引作参考。
在示例的分布式系统中,不同的计算机和设备被联合到对用户而言表现为单个系统中。通过表现为单个系统,示例的分布式系统提供访问的简单性和可以由单个系统提供的共享能力而不放弃个人计算机或工作站的灵活性和个性化响应。示例的分布式系统可以包含数千个设备,由在分散在世界各地但是在委托、管理和策略的基本注意事项上达成一致的人操作。在示例的分布式系统中存在由一个或多个设备提供的服务的不同逻辑组,每个这种逻辑组被称为Djinn。“服务”指能够由用户、程序、设备或另一服务能够访问以及可以计算、与存储相关联、与通信相关联、或者涉及提供对另一用户访问的资源、数据或功能性。作为Djinn的部分提供的服务的例子包括象打印机、显示器和磁盘的设备;诸如应用程序或实用程序的软件;诸如数据库和文件的信息;和系统的用户。
用户和设备二者都可以连接Djinn。当连接Djinn时,用户或设备增加零或多个设备到Djinn,可以访问它包含的任何一种服务,受安全性约束。因此,设备和用户联合到Djinn中,共享对其服务的访问。Djinn的服务作为Java编程环境的对象可编程地显现,这可以包括其它对象,以不同编程语言编写的软件部件,或硬件设备。服务具有限定该服务能够请求的操作的界面,服务的类型确定编排该服务的界面。
图1示出示例的分布式系统100,包括通过网络108互连的计算机102、计算机104和设备106。设备106可以是诸如打印机、传真机、存储设备、输入设备、计算机或其它设备的数个设备中的任何一个。网络108可以是局域网、宽域网或因特网。尽管图中仅示出两个计算机和一个设备作为实施例的分布式系统100的组成,但是,本领域的专业技术人员将会理解,示例的分布式系统100可以包括附加的计算机或设备。
图2更详细地示出计算机102,表明示例的分布式系统100的数个软件部件。本领域的专业技术人员将会理解,计算机104或设备106可以是类似配置的。计算机102包括存储器202、辅助存储设备204、中央处理单元(CPU)206、输入设备208和视频显示器210。存储器202包括查找服务212、发现服务器214和JavaTM运行期系统216。Java运行期系统216包括JavaTM远程方法启用系统(RMI)218和JavaTM虚拟机220。辅助存储设备204包括JavaTM空间222。
如上所述,示例的分布式系统100基于Java编程环境,因此利用Java运行系统216。Java运行系统216包括JavaTM应用编程界面(API),允许程序在Java运行系统的上层运行,以独立平台的方式访问不同系统功能,包括主操作系统的窗口能力和网络能力。由于Java API提供Java运行系统216被停留于的所有操作系统上的单个共用API,在Java运行系统顶层运行的程序以独立平台的方式运行,不管操作系统或主平台的硬件配置。Java运行系统216作为由Sun Microsystems公司可提供的JavaTM软件开发工具。
Java虚拟机器220也便于平台独立性。Java虚拟机220的作用象绝对计算机器一样,以字节代码的形式接收程序的指令以及通过动态地将他们转换为执行形式(如目标码),以及执行他们。RMI 218通过允许对象在一个计算机或设备上执行,调用另一个计算机或设备上对象的方法而便于远程方法启用。RMI和Java虚拟机二者也是作为Java软件开发工具的一部分提供的。
查找服务212定义为由特定Djinn可提供的服务。即,可以存在一个以上的Djinn,因此在示例的分布式系统100中存在一个以上的查找服务。查找服务212包括Djinn内每个服务的一个对象,每个对象包括便于访问相应服务的各种方法。查找服务212及其访问在题为“便于访问查找服务的方法和系统”的美国专利继续申请号__中更详细地描述,该专利申请以前已引作参考。
发现服务214检测在称为引导和连接或发现的处理期间何时将新服务增加到示例的分布式系统100,以及何时检测这种新服务,发现服务器将对查找服务212的参照传送到新设备,以致于新设备可以用查找服务登记注册其服务并变为Djinn的成员。登记注册后,新设备变为Djinn的成员,结果,它可以访问查找服务212中所包含的所有服务,其登记注册的服务可以被Djinn的其它成员访问。引导和连接的处理在题为“在分布式系统中设备通信用的提供可下载代码的装置和方法”的美国专利继续申请号__中更详细地描述,该专利申请以前已引作参考。
Java空间222是由示例的分布式系统100中程序存储对象所使用的对象资源库。程序使用Java空间222永久存储对象以及使他们可访问示例的分布式系统中的其它设备。Java空间在1997年11月17日提交的题为“采用多形态入口和入口匹配的数据库系统”的美国专利继续申请08/971,529中更详细地描述,该专利申请转让给同一受让人,在此将其引作参考。本领域的专业技术人员将会理解,示例的分布式系统100可以包括许多查找服务、发现服务器和Java空间。
尽管本发明的系统和方法描述为在示例的分布式系统和Java编程环境中操作,但是,本领域专业技术人员应当理解本发明可以在其它系统和其它编程环境中实现。另外,尽管本发明的各个方面描述为存储在存储器中,但是,本领域专业技术人员应当理解这些方面可以存储在其它类型计算机可读媒体上,或者从中读出,如象硬盘、软盘或CD-ROM的辅助存储设备;来自因特网的载波;或者RAM或ROM的其它形式。Sun、Sun Microsystems、Sun Logo、Java和基于Java商标是Sun Microsystems公司在美国和其它国家的商标或注册商标。
查找服务定义
查找服务提供Djinn中可供使用的服务的中心登记注册。这个查找服务是程序寻找Djinn内服务的主要机制以及是提供用户界面的基础,通过界面用户和管理员能够发现Djinn的服务并与其交互作用。
查找服务维持服务项目的平面采集。采集是平面的,其中服务项目并不形成分层。每个服务项目代表Djinn中可供使用的服务的实例(instance)。服务项目包括一个(代码)存根(stub)(如果服务是作为远程对象实施的)或者一个连续对象(如果服务是存储在查找服务中的本地对象),程序用以访问服务,以及属性的可扩展采集,属性描述服务或者给服务提供辅助界面。“(代码)存根”是便于访问远程功能的代码和数据,“连续对象”是以连续形式放置的对象。
尽管服务项目的采集是平面的,通过根据服务类型和属性聚集项目,可以将广泛的各种各样的分层视图叠加在采集上。查找服务提供一组方法,使用户和管理员能够浏览采集并建立各种各样的用户界面。一旦发现合适的服务,用户能够通过装载用户界面applet,作为项目上的另一个属性附着,与该服务交互作用。
在创建一个新服务(例如,当将一个新服务增加到Djinn)时,该服务用查找服务登记注册它自己,提供属性的初始采集。例如,打印机可以包括表示速度(每分钟页数)、分辨率(每英寸点数)和是否支持双面打印的属性。属性还可以包括服务是新的并需要配置的指示符。为了配置新服务,管理员对提供这一用途的applet的属性定位,在配置期间,管理员可以增加新属性,如服务的物理位置和它的公用名。
查找服务提供事件机制,它产生登记注册新服务时删除现有服务或者修改服务的属性的通知。为了使用事件机制,客户机对特定事件发生时得到通知进行登记注册,以及当事件发生时查找服务通知该客户机。查找服务本身也使用事件机制接收增加属性时的通知,以致于它能够在未来用他们进行重新登记注册。
需要特定类型服务的程序(包括其它服务)能够使用查找服务来寻找该服务的实例。基于通过该服务而实施的特定JavaTM编程语言类型以及附属于该服务的特定属性,可以作出匹配。
如果服务碰到需要管理注意,象打印机墨粉不足运行的问题,该服务能够增加表示该问题的属性。管理员(或程序)那么能够使用事件机制接收这种问题的通知。
服务项目的属性表示为一组属性集合。各个组属性可以表示为Java编程语言中交叉的实例,每个属性是该类的一个公共字段。该类提供组和各个属性的强类型。服务项目能够包括具有不同属性值的相同类的多个实例以及不同类的多个实例。例如,项目可以具有名称(Name)类的多个实例,每个实例以不同语言给出服务的公用名,加上位置(Location)类、物主(Owner)类和各种服务特定类的实例。
服务项目存储在查找服务中,作为ServiceItem类的实例,正如以下描述的:public class Service Item{
public static final long ASSIGN_SERVICE_ID=0;
public long serviceID;
public Object service;
public Entry[]attributeSets;}
“serviceID”单元是服务的数值标识符。“service”单元是代表服务的一个对象或者便于访问服务的一个(代码)存根,“attributeSet”单元包括服务的属性的阵列。
利用ServiceTemplate类的实例使查找服务中的项目匹配,它定义如下:public class Service Template{
public static final long ANY_SERVICE_ID=0;
public long serviceID;
public Class[]serviceTypes;
public Entry[]attributeSetTemplates;}
“serviceTypes”单元定义服务的类型。如果item.serviceID等于tmpl.serviceID(或者如果tmpl.serviceID为零)以及item.service是tmpl.serviceTypes中每个类型的实例,项目(irem)与服务模板(tmpl)匹配,item.attributeSet包括tmpl.attributeSetTemplates中每个入口模板的至少一个匹配入口。入口匹配使用以下规则:如果入口的类与模板的类相同或者与模板的超类相同以及模板中每个非零字段等于入口的相应字段,入口与入口模板匹配。可以使用每个入口与一个以上模板匹配。serviceTypes和attributeSetTemplates二者在服务模板中可以是零。当查找多个项目时使用ServiceMatches类作为返回值。这个类的定义如下:
public class ServiceMatches{
public Serviceltem[]items;
public int totalMatches;}
至查找服务的界面是通过ServiceRegistrar接口数据结构限定的。这一界面不是远程界面。而是,查找服务的每个实施方案输出实施客户机附近ServiceRegistrar界面的代理对象,利用专用实施协议与实际远程服务器通信。“代理对象”指在客户机的地址空间中运行并便于访问查找服务的对象。提供登记注册服务项目、寻找与模板匹配的项目、修改现有项目的属性、接收项目被修改时的通知以及递增地拓展沿三个主轴的项目(入口类,属性值,服务类型)收集的方法。接口的定义如下:
public interface ServiceRegistrar{
long REGISTRAR_SERVICE_ID=1;
ServiceLease register(Service Item item,long lease expiration)throwsRemoteException;
Object lookup(ServiceTemplate tmpl)
throws RemoteException
ServiceMatches lookup(ServiceTemplate tmpl,int maxMatches)
throws RemoteException;
int addAttributes(ServiceTemplate tmpl, Entry[]attrSets)
throws RemoteException;
int modifyAttributes(ServiceTemplate tmpl,Entry[]attrSets)
throws RemoteException;
int TRANSITION_MATCH_NOMATCH=1;
int TRANSITION_NOMATCH_MATCH=2;
int TRANSITION_MATCH_MATCH=3;
EventRegID notify(Service Template tmpl,
int transition,
RemoteEventListener listener,
MarshalledObject handback,
long leaseExpiration)
throws RemoteException;
Class[]getEntryClasses(ServiceTemplate tmpl)
throws RemoteException;
Object[]getFieldValues(ServiceTemplate tmpl),
int setIndex,
String field)
throws NoSuchFieldException,RemoteException;
Class[]getServiceTypes(Service Template tmpl,
String packagePrefix
throws RemoteException
这一接口包括各种方法,有登记注册方法、查找方法(单个参数形式)、查找方法(两个参数形式)、增加属性(addAttributes)方法、修改属性(modifyAttributes)方法、修改方法、获得入口类(getEnryClass)方法、获得字段值(getFieldValues)方法、以及获得服务类型(getServiceTypes)方法。“登记注册”方法用于登记注册新的服务和重新登记注册现有服务。这一方法是这样定义的,即它可以以幂等方式使用。具体地说,如果调用导致产生异常(在项目可以已登记注册或者可能没有登记注册的情况中),调用者能够简单地用相同参数重复调用。
利用登记注册方法登记注册新的服务,item.ServiceID应当是零;如果item.ServiceID不等于任何现有项目的服务对象,那么,将指派并返回一个新的唯一服务id。该服务id相对于这一查找服务在时间上是唯一的。如果item.ServiceID等于现有项目的服务对象,那么,从查找服务删除现有项目(即使它具有不同属性),但是项目的服务id被重新用作新登记注册项目。
为了利用登记注册方法重新登记注册现有服务,应当将item.ServiceID设定为由初始登注册返回的同样唯一服务id。如果一个项目已经在相同服务id下登记注册,那么删除现有项目(即使它具有不同的属性或者不同的服务实例)。注意:在允许服务合理演变的这一情况(例如(代码)存根的串行化形式变化,或者服务实施新的界面)中,不检查服务对象等同性。
当对一个项目登记注册时,以该项目的存储表示删除复制属性组。另外,登记注册是在查找服务重新启动时不变的。
“查找”方法的单个参数形式从与模板匹配的项目返回服务对象(即ServiceItem.service),或者如果不匹配返回零。如果多个项目与模板匹配,对于返回哪个服务对象是任意的。如果不能使返回对象去除串行化,产生一个异常。
“查找”方法的两个参数形式最多返回与模板匹配的maxMatches项目,加上与模板匹配的项目的总数。返回值绝不是零,如果maxMatches是零,返回的项目阵列才是零。对于每个返回的项目,如果不能使服务对象去除串行化,将项目的服务字段设定为零,不产生异常。同样,如果不能使属性集去除串行化,attributeSets的单元设定为零,不产生异常。
“addAttributes”方法将规定属性集(不存在现有属性集的复制的这些)增加到与模板匹配的所有项目。返回匹配的项目的数目。注意:这一操作对匹配项目的现有属性集没有影响,这一操作以幂等方式重复进行。
“modifyAttributes”方法用于修改现有属性集。tmpl.attributeSetTemplates和attrSets的长度必须相等或者产生异常。对于与模板匹配的每个项目,项目的属性集修改如下。对于每个阵列索引Ⅰ,如果attrSets[i]是零,那么,与tmpl.attributeSetTemplates[i]匹配的每个入口被删除;否则,对于attrSets[I]中的每个非零字段,将该字段的值存储到与tmpl.attributeSetTemplates[i]匹配的每个入口的相应字段中。attrSets[i]的类必须是与tmpl.attributeSetTemplates[I]的类或超类相同,或者产生异常。如果修改导致项目内的复制入口,删除复制。返回匹配的项目的数目。
“nodify”方法用于登记注册事件通知。登记注册是租借的,租借期满请求是严格。租借的概念在题为“租借存储器的方法和系统”的美国专利申请No.中更详细地描述,该申请以前已引入参考。登记注册在查找服务的重新启动时是不变的直至租借期满或者被取消。返回的EventRegId中的事件id在具有过渡期的不同服务模板的这一查找服务上至少相对于所有其它有效事件登记注册是唯一的。
虽然事件登记注册是有效的,一旦当登记注册、租借取消或期满、增加属性或修改属性操作以满足模板和转移组合的方法导致服务项目改变状态,含有事件指示的通知被传送到规定收听者。虽然在本发明的范围内也可以实施其它转移,转移的清单如下:
·TRANSITION MATCH NOMATCH:当改变后项目与操作前模板匹配,但是与操作后模板不匹配(这包括项目的删除)时,对事件进行传送。
·TRANSITION_NOMATCH_MATCH:当改变后项目与操作前模板不匹配(这不包括现有的),但是与操作后模板匹配时,对事件进行传送。
·TRANSITION MATCH MATCH:当改变后项目与操作前和操作后模板匹配,对事件进行传送。
“getEntryClass”方法注视与规定模板匹配的所有项目、寻找这些项目(或是与任何入口模板不匹配或者至少是一个匹配入口模板的子类)当中的每个入口、以及返回这些入口的(最特别)类的集合。复制类被删除,返回阵列中类的次序是任意的。如果不存在这种入口或者不存在匹配项目返回零(不是空阵列)。如果返回的类不能被去除串行化,将返回阵列的单元设定为零和没有异常被发射。
“getFieldValue”方法识别与规定模板匹配的所有项目。这一方法返回与规定模板匹配的项目的值。
“getServiceTypes”方法注视与规定模板匹配的所有项目,对于每个服务对象,这一方法寻找服务对象是一个实例的每个类型(类或界面),该实例既不等于模板中的任何服务类型或也不是其超类,返回用规定数据包前缀启动的所有这些类型的集合。复制类型被删除,返回阵列中的类型的次序是任意的。如果不存在这种类型则返回零(不是空阵列)。如果返回的类型不能被去除串行化,将返回阵列的单元设定为零和没有异常被发射。
查找服务处理
图3A和3B示出客户机、在特定设备上运行的程序利用查找服务212时进行的步骤的流程图。最初,将客户机运行的设备连接至Jini分布式系统(步骤302)。接着,客户机发送多点传播数据包,含有与客户机通信的代码(步骤304)。在这一步骤中,客户机正在执行发现协议,正如题为“与分布式系统中设备通信使用的提供可下载代码的装置和方法”的美国专利申请No.__中进一步详细地描述的,该申请以前已引入参考。
在客户机发送多点传播数据包后,发现服务器214接收该数据包并使用数据包中所包含的代码把对查找服务的参照发送到客户机(步骤306)。客户机接收对查找服务的参照后,客户机能够利用查找服务的界面或是增加服务、删除服务、访问服务,或是请求查找服务何时被更新的通知,正如步骤308-326所反映的。
在客户机处理期间的一些点上,可以决定把服务增加到查找服务(步骤308)。如果决定增加服务,客户机通过调用登记注册方法把服务增加到查找服务,它把代表服务的对象或含有便于访问该服务的代码和数据的(代码)存根发送到查找服务(步骤310)。把(代码)存根增加到查找服务正如在题为“便于访问查找服务的方法和系统”的美国专利申请No.__中更详细地描述,该申请以前已引入参考。
接着,客户机可以决定从查找服务中删除其服务中的一个(步骤312)。如果客户机决定这么做,客户机通过调用查找服务的界面上的登记注册方法来删除特定服务的入口和删除与其相关联的存根代码而从查找服务中删除该服务(步骤314)。应当注意:增加服务和删除服务是动态和发生更新的同时并不禁止另外的客户机利用查找服务的方式进行的。
在客户机处理后的一些点上,客户机可以决定访问通过查找服务提供的服务(步骤316)。如果客户机决定访问由查找服务提供的服务,那么客户机通过调用查找方法而访问该服务,查找方法是从查找服务中检索该服务的对象或者该服务的(代码)存根信息,以及客户机或是调用对象上的方法使用该服务或是使用(代码)存根信息访问该服务(步骤318)。这一步骤在题为“便于访问查找服务的方法和系统”的美国专利申请No.__中更详细地描述,该申请以前已引入参考。
客户机还可以请求对查找服务发生更新时得到通知(图3B中步骤320)。如果客户机希望得到通知,那么客户机调用查找服务界面上的通知方法登记注册查找服务的回叫程序(步骤322)。“回叫程序”是查找服务被更新时调用的一个功能。另外,通知方法允许客户机登记注册将通过RMI作为参数返回到回叫功能的对象。
接着,如果事件已经发生,对此客户机希望得到通知(步骤324),查找服务可调用已登记注册的回叫程序(步骤326)。在这一步骤中,事件的发生要通知客户机,客户机能够采取适当行动,例如,如果客户机当前正在利用的服务已经变为不能提供的,那么客户机可以存储信息使得它不再使用该服务。
图4示出进行与事件相关的处理时由查找服务进行的步骤的流程图。初始时,查找服务接收来自数个客户机对特定事件发生时接收通知感兴趣的登记注册(步骤402)。在这一步骤中,查找服务通过调用查找服务界面上的通知方法接收登记注册并把所有相关信息,如要通知的客户机的指示、对绘调例程的参照、作为参数被传送到回叫程序的对象、以及客户机感兴趣的事件的指示等存储到表(称为事件表)中。应当注意:客户机可以登记注册当事件发生时得到通知,或者客户机可以登记注册得到通知的第三方。收到登记注册后,查找服务确定事件发生使得至少已经登记注册一个客户机对该事件感兴趣(步骤404)。查找服务通过识别例如新的服务何时已经被增加到查找服务、现有服务已经从查找服务中被删除、或者服务的属性已经被修改,而作出这一决定。如果这种事件没有发生,查找服务的事件通知处理保持在等待状态。
然而,如果事件已经发生,查找服务确定所有客户机登记注册对这一事件的通知(步骤406)。查找服务通过访问事件表作出这一决定。接着,查找服务调用为步骤406中所识别的每个客户机登记注册的回叫程序(步骤408)。在这一步骤中,事件表包括对每个客户机所登记注册的回叫程序的参照,查找服务调用每个回叫程序将已登记注册对象作为参数传送,通知客户机事件的发生。
会议室例子
以下描述的是相对于会议室500使用查找服务212的例子,正如图5所示。会议室500包括打印机502、传真机504、计算机506、投影屏幕508、和存储设备510,所有这些通过网络512互连。计算机506包括查找服务518,它限定通过会议室Djinn可提供的所有服务。在这个例子中,用户用膝上型计算机(laptop)514输入会议室500。当用户用膝上型计算机为开会进入会议室500时发生这种情况。如果用户希望利用会议室500中由各种不同设备提供的服务,那么用户必须连接会议室500的Djinn。为了这么做,用户将膝上型计算机连接至网络512并运行程序,客户机516进行引导和连接(或发现)处理,如上所述。完成引导和连接处理后,客户机516(例如浏览器)接收对查找服务的参照,限定由会议室Djinn提供的服务。利用这一参考,客户机516从查找服务518下载applet,显示在显示屏600上,正如图6所示。
图6示出显示屏600,它显示查找服务518的可提供服务,表示为各种不同的图标,包括打印机602、传真机604、文件系统606和投影屏608。显示屏600还显示增加服务按钮610。当选择打印机图标602时,打印机的(代码)存根代码(即服务项目)被下载给客户机,以致于客户机可以利用打印机。同样,选择传真机图标604、文件系统图标606或投影屏图标608,下载合适的(代码)存根信息,以致于客户机能够使用这些服务。文件系统图标606代表计算机506的文件系统。
然而,用户可能希望增加服务,因此选择增加服务按钮610。在选择增加服务按钮610时,向用户呈现显示屏700,正如图7所示。显示屏700示出用户可以增加到Djinn的膝上型计算机514的可提供服务。例如,膝上型计算机514上的可提供服务可以包括Java空间702、膝上型计算机文件系统704、数据库706和字典708。用户可以选择这些服务中的任何一个,然后自动地把它们增加到查找服务并可以供Djinn的其它用户使用。
虽然已经参考本发明的较佳实施例描述了本发明的方法和系统,但是,本领域的专用技术人员将知道可以在形式和细节上作出各种变化,而不偏离所附权利要求书中限定的本发明的精神和范围。
Claims (39)
1.分布式系统中的一种方法,它具有与分布式系统中可提供的网络服务相关联的查找服务和具有访问该网络服务的客户机,其特征在于所述方法包括以下步骤:
给分布式系统增加一装置,该装置包含具有新服务的新客户机;
由新客户机广播一对象,该对象包含与新客户机通信的代码;
由发现服务器接收该对象,并利用该代码由发现服务器把对查找服务的参照传送到新客户机;
由新客户机接收该参照;以及
由新客户机把新服务的指示增加到查找服务,以致于与查找服务相关联的网络服务在新服务的增加期间保持可访问。
2.如权利要求1所述的方法,其特征在于增加步骤包括步骤:
把(代码)存根增加到查找服务,它包含便于访问新服务的代码和数据。
3.如权利要求1所述的方法,其特征在于增加步骤包括步骤:
把服务对象增加到查找服务,该服务对象具有执行新服务的功能。
4.如权利要求1所述的方法,其特征在于进一步包括步骤:
从查找服务删除新服务的指示。
5.如权利要求1所述的方法,其特征在于进一步包括步骤:
用查找服务登记注册新客户机,当更新查找服务时接收一通知;
由查找服务确定何时它已经被更新;以及
当查找服务已经确定它已经被更新时给新客户机发送一通知。
6.如权利要求5所述的方法,其特征在于登记注册步骤包括步骤:
用查找服务登记注册一回叫程序,以及这里发送步骤包括步骤:
调用已登记注册的回叫程序。
7.如权利要求6所述的方法,其特征在于登记注册步骤包括步骤:
用查找服务登记注册一参数对象,以及这里调用步骤包括步骤:
调用已登记注册的回叫程序,把参数对象作为参数送至回叫程序。
8.数据处理系统中的一种方法,它具有与数据处理系统中可供使用的服务相关联的查找服务,其特征在于所述方法包括步骤:
接收更新查找服务的请求;以及
更新查找服务,以致于未受更新影响的服务在发生更新时继续可供使用。
9.如权利要求8所述的方法,其特征在于更新步骤包括步骤:
使新服务与查找服务相关联。
10.如权利要求8所述的方法,其特征在于更新步骤包括步骤:
使相关联服务中的一个与查找服务不关联,从而使一个服务不再可供使用。
11.如权利要求8所述的方法,其特征在于相关联服务具有属性以及这里更新步骤包括步骤:
修改相关联服务中一个的属性。
12.数据处理系统中的一种方法,它具有与服务相关联的查找服务,其特征在于所述方法包括步骤:
接收当查找服务被更新时得到通知的请求;
确定何时查找服务被更新;以及
当确定查找服务被更新时产生一通知。
13.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收客户机的请求,以及这里产生步骤包括步骤:
通知客户机更新。
14.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收第一客户机的请求,以及这里产生步骤包括步骤:
通知第二客户机更新,第二客户机不同于第一客户机。
15.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收对回叫程序的参照,以及这里产生步骤包括步骤:
调用回叫程序,执行通知。
16.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收当新服务与查找服务相关联时得到通知的请求,以及这里确定步骤包括步骤:
确定何时新服务与查找服务相关联,以及这里产生部分包括步骤:
当确定新服务与查找服务相关联时产生通知。
17.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收当相关联服务中的一个与查找服务不相关联时得到通知的请求,以及这里确定步骤包括步骤:
确定一个服务与查找服务不关联,以及这里产生步骤包括步骤:
当确定一个服务与查找服务不关联时产生通知。
18.如权利要求12所述的方法,其特征在于接收步骤包括步骤:
接收当相关联服务中至少一个的属性被更新时得到通知的请求,以及这里确定步骤包括步骤:
确定何时更新相关联服务中至少一个的属性,以及这里产生步骤包括步骤:
当确定相关联服务中至少一个的属性被更新时产生通知。
19.数据处理系统中的一种方法,具有与服务相关联的查找服务,其特征在于所述方法包括步骤:
将请求发送到查找服务被更新时得到通知的查找服务;以及
接收查找服务已经被更新的通知。
20.如权利要求19所述的方法,其特征在于发送步骤包括步骤:
由客户机发送请求,以及这里接收步骤指示步骤:
由客户机接收通知。
21.如权利要求19所述的方法,其特征在于发送步骤包括步骤:
由第一客户机发送请求,以及这里接收步骤包括:
由不同于第一客户机的第二客户机接收通知。
22.一种数据处理系统,其特征在于包括:
存储器,它包括:
查找服务,具有可提供使用的服务的指示;
第一客户机,用于更新查找服务;以及
第二客户机,用于在第一客户机正在更新查找服务的同时利用查找服务;以及
至少一个处理器,用于使查找服务、第一客户机和第二客户机运行。
23.一种数据处理系统,其特征在于包括:
存储器,它包括:
具有可提供使用的服务的指示的查找服务,查找服务用于接收对何时更新查找服务的通知的请求、确定何时更新查找服务和产生当查找服务被更新时的通知;和
客户机,用于把请求发送到当查找服务被更新时得到通知的查找服务;以及
至少一个处理器,用于使客户机和查找服务运行。
24.如权利要求23所述的数据处理系统,其特征在于存储器进一步包括一个第二客户机,用于接收查找服务被更新的通知。
25.一种计算机可读的存储器装置,包含访问查找服务所使用的数据结构,查找服务与可供使用的网络服务相关联,所述数据结构包括:
一种通知方法,供客户机用于登记注册查找服务,当查找服务被更新时接收来自查找服务的通知。
26.一种计算机可读媒体,包括控制数据处理系统执行一种方法的指令,数据处理系统具有与数据处理系统中可供使用的服务相关联的查找服务,所述方法包括步骤:
接收更新查找服务的请求;以及
更新查找服务,以致于在发生更新的同时未被更新影响的服务继续可供使用。
27.如权利要求26所述的计算机可读媒体,其特征在于更新步骤包括步骤:
使新服务与查找服务相关联。
28.如权利要求26所述的计算机可读媒体,其特征在于更新步骤包括步骤:
使相关联服务中的一个不与查找服务相关联,以致于一个服务不再提供使用。
29.如权利要求26所述的计算机可读媒体,其特征在于相关联服务具有属性以及更新步骤包括步骤:
修改相关联服务中的一个的属性。
30.一种计算机可读媒体,包括控制数据处理系统执行一种方法的指令,数据处理系统具有相关联服务的查找服务,所述方法包括步骤:
由查找服务接收当更新查找服务得到通知的请求;
确定何时更新查找服务:以及
在确定更新查找服务时产生通知。
31.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收来自客户机的请求,以及这里产生步骤包括步骤:
通知客户机更新。
32.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收来自第一客户机的请求,以及这里产生步骤包括步骤:
通知第二客户机更新,第二客户机不同于第一客户机。
33.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收对回叫程序的参照,以及这里产生步骤包括步骤:
调用回叫程序进行通知。
34.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收当新服务与查找服务相关联时得到通知的请求,以及这里确定步骤包括步骤:
确定何时新服务与查找服务相关联,以及这里产生步骤包括步骤:
当确定新服务与查找服务相关联时产生通知。
35.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收当相关联服务中的一个与查找服务不关联时得到通知的请求,以及这里确定步骤包括步骤:
确定何时一个服务与查找服务不关联,以及这里产生步骤包括步骤:
当确定一个服务与查找服务不关联时产生通知。
36.如权利要求30所述的计算机可读媒体,其特征在于接收步骤包括步骤:
接收当更新相关联服务中至少一个的属性时得到通知的请求,这里确定步骤包括步骤:
确定何时更新相关联服务中至少一个的属性,以及这里产生步骤包括步骤:
当确定更新相关联服务中至少一个的属性时产生通知。
37.一种计算机可读媒体,包括控制数据处理系统执行一种方法的指令,数据处理系统具有相关联服务的查找服务,所述方法包括步骤:
给查找服务发送当查找服务被更新时得到通知的请求;以及
接收查找服务已被更新的通知。
38.如权利要求37所述的计算机可读媒体,其特征在于发送步骤包括步骤:
由客户机发送请求,以及这里接收步骤指示步骤:
由客户机接收通知。
39.如权利要求37所述的计算机可读媒体,其特征在于发送步骤包括步骤:
由第一客户机发送请求,以及这里接收步骤包括:
由不同于第一客户机的第二客户机接收通知。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7604898P | 1998-02-26 | 1998-02-26 | |
US60/076,048 | 1998-02-26 | ||
US09/044,931 | 1998-03-20 | ||
US09/044,931 US6185611B1 (en) | 1998-03-20 | 1998-03-20 | Dynamic lookup service in a distributed system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1298503A true CN1298503A (zh) | 2001-06-06 |
Family
ID=26722170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN99805304A Pending CN1298503A (zh) | 1998-02-26 | 1999-02-17 | 分布式系统中的动态查找服务 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20010002473A1 (zh) |
EP (1) | EP1057107A1 (zh) |
JP (1) | JP2002505467A (zh) |
KR (1) | KR20010041294A (zh) |
CN (1) | CN1298503A (zh) |
AU (1) | AU3297199A (zh) |
WO (1) | WO1999044127A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100391208C (zh) * | 2002-12-31 | 2008-05-28 | 北京因特时代信息技术有限公司 | 一种分布式网络服务发布实现方法 |
CN100418089C (zh) * | 2003-08-20 | 2008-09-10 | 苹果公司 | 加速本地高速缓存中资源记录到期的方法和装置 |
CN1453956B (zh) * | 2002-04-25 | 2010-05-12 | 艾利森电话股份有限公司 | 电信网络的方法和结构 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6757729B1 (en) * | 1996-10-07 | 2004-06-29 | International Business Machines Corporation | Virtual environment manager for network computers |
US6594700B1 (en) * | 1999-06-14 | 2003-07-15 | International Business Machines Corporation | System and method for implementing a universal service broker interchange mechanism |
US6711157B1 (en) * | 1999-08-24 | 2004-03-23 | Telefonaktiebolaget L M Ericsson (Publ) | System and method of creating subscriber services in an IP-based telecommunications network |
US8135796B1 (en) * | 2000-05-09 | 2012-03-13 | Oracle America, Inc. | Mechanism and apparatus for accessing and addressing services in a distributed computing environment |
DE10028371B4 (de) * | 2000-06-08 | 2013-01-17 | Siemens Aktiengesellschaft | Verfahren und Anordnung zur gesicherten Nutzung eines Dienstes |
US6895444B1 (en) * | 2000-09-15 | 2005-05-17 | Motorola, Inc. | Service framework with local proxy for representing remote services |
AU2001290876A1 (en) * | 2000-09-15 | 2002-03-26 | Motorola, Inc. | Service framework with consolidation of services |
US6757262B1 (en) * | 2000-09-15 | 2004-06-29 | Motorola, Inc. | Service framework supporting remote service discovery and connection |
DE10056205C2 (de) * | 2000-11-13 | 2002-09-19 | Deutsch Zentr Luft & Raumfahrt | Verfahren zur Funkübertragung von Dienstedaten zwischen einer Funkbake und einem mobilen elektronischen Informationsgerät mit Funkanschluß |
US7136908B2 (en) * | 2001-01-29 | 2006-11-14 | Intel Corporation | Extensible network services system |
FI20015008A (fi) * | 2001-06-08 | 2002-12-09 | Sonera Oyj | Hajautettu oliokomponenttiverkko |
FI20015009A (fi) * | 2001-06-08 | 2002-12-09 | Sonera Oyj | Hajautettu oliokomponenttiverkko |
US7275238B2 (en) * | 2002-03-28 | 2007-09-25 | International Business Machines Corporation | Program event activated and configured debugger method, system, article of manufacture, computer program product, and data structure |
JP3973986B2 (ja) * | 2002-07-12 | 2007-09-12 | 株式会社エヌ・ティ・ティ・ドコモ | ノード探索方法、ノード、通信システム及びノード探索プログラム |
CN1181648C (zh) * | 2002-09-06 | 2004-12-22 | 联想(北京)有限公司 | 一种网络上设备间自动查找的方法 |
JP2004288066A (ja) * | 2003-03-24 | 2004-10-14 | Fuji Xerox Co Ltd | サービス検索装置、サービス検索方法及びプログラム、並びに文書処理システム |
JP2004288067A (ja) * | 2003-03-24 | 2004-10-14 | Fuji Xerox Co Ltd | 連携処理装置、連携処理方法及びプログラム |
KR100493898B1 (ko) * | 2003-04-16 | 2005-06-10 | 삼성전자주식회사 | 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법 |
FR2861864A1 (fr) * | 2003-11-03 | 2005-05-06 | France Telecom | Procede de notification de changements d'etat des ressources d'un reseau a destination d'au moins une application, programme d'ordinateur et systeme de notification de changements d'etat pour la mise en oeuvre de ce procede |
US7292579B2 (en) * | 2005-04-29 | 2007-11-06 | Scenera Technologies, Llc | Processing operations associated with resources on a local network |
WO2007113542A1 (en) * | 2006-03-31 | 2007-10-11 | British Telecommunications Public Limited Company | Server computer component |
US8788569B2 (en) * | 2006-03-31 | 2014-07-22 | British Telecommunications Public Limited Company | Server computer system running versions of an application simultaneously |
GB2445168A (en) * | 2006-12-29 | 2008-07-02 | Symbian Software Ltd | Loading resource administer program into main or higher memory depending on the type of usage requests being sent to the program. |
US9152401B2 (en) * | 2009-05-02 | 2015-10-06 | Citrix Systems, Inc. | Methods and systems for generating and delivering an interactive application delivery store |
KR102158842B1 (ko) * | 2012-12-17 | 2020-09-22 | 삼성전자주식회사 | 사용자 인터페이스를 제공하는 방법 및 그 디바이스 |
Family Cites Families (104)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US111814A (en) * | 1871-02-14 | Improvement in breech-loading fire-arms | ||
US5132A (en) * | 1847-05-29 | brown | ||
US1919842A (en) * | 1927-03-25 | 1933-07-25 | Air Liquide | Process for the treatment of gaseous mixtures containing hydrogen |
SE319706B (zh) * | 1965-03-05 | 1970-01-19 | Aga Ab | |
FR2476349A1 (fr) * | 1980-02-15 | 1981-08-21 | Philips Ind Commerciale | Systeme de traitement de donnees reparti |
US4800488A (en) * | 1985-11-12 | 1989-01-24 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of propagating resource information in a computer network |
US4819233A (en) * | 1987-04-08 | 1989-04-04 | Westinghouse Electric Corp. | Verification of computer software |
JPH0293952A (ja) * | 1988-09-30 | 1990-04-04 | Hitachi Ltd | 仮想計算機システム |
US5341477A (en) * | 1989-02-24 | 1994-08-23 | Digital Equipment Corporation | Broker for computer network server selection |
US8700458B2 (en) * | 1989-05-01 | 2014-04-15 | Catalina Marketing Corporation | System, method, and database for processing transactions |
US5305196A (en) * | 1989-05-01 | 1994-04-19 | Credit Verification Corporation | Check transaction processing, database building and marketing method and system utilizing automatic check reading |
JPH05233326A (ja) * | 1991-12-19 | 1993-09-10 | Internatl Business Mach Corp <Ibm> | コンピュータシステムにおいて事象を取り扱う方法及びシステム |
US5319751A (en) * | 1991-12-27 | 1994-06-07 | Intel Corporation | Device driver configuration in a computer system |
US5303042A (en) * | 1992-03-25 | 1994-04-12 | One Touch Systems, Inc. | Computer-implemented method and apparatus for remote educational instruction |
US5339430A (en) * | 1992-07-01 | 1994-08-16 | Telefonaktiebolaget L M Ericsson | System for dynamic run-time binding of software modules in a computer system |
JPH0827769B2 (ja) * | 1992-10-30 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 通信インターフェースの生成システム及びその方法 |
US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
CA2121612A1 (en) * | 1993-05-21 | 1994-11-22 | Chung-Hwa Herman Rao | Methods and apparatus for making and using distributed applications |
US5506984A (en) * | 1993-06-30 | 1996-04-09 | Digital Equipment Corporation | Method and system for data retrieval in a distributed system using linked location references on a plurality of nodes |
US5446901A (en) * | 1993-06-30 | 1995-08-29 | Digital Equipment Corporation | Fault tolerant distributed garbage collection system and method for collecting network objects |
US5590181A (en) * | 1993-10-15 | 1996-12-31 | Link Usa Corporation | Call-processing system and method |
US5485617A (en) * | 1993-12-13 | 1996-01-16 | Microsoft Corporation | Method and system for dynamically generating object connections |
WO1995017064A1 (en) * | 1993-12-17 | 1995-06-22 | Taligent, Inc. | Object-oriented distributed communications directory service |
US5392280A (en) * | 1994-04-07 | 1995-02-21 | Mitsubishi Electric Research Laboratories, Inc. | Data transmission system and scheduling protocol for connection-oriented packet or cell switching networks |
US5634008A (en) * | 1994-07-18 | 1997-05-27 | International Business Machines Corporation | Method and system for threshold occurrence detection in a communications network |
EP0694837A1 (en) * | 1994-07-25 | 1996-01-31 | International Business Machines Corporation | Dynamic workload balancing |
WO1996018947A1 (en) * | 1994-12-13 | 1996-06-20 | Novell, Inc. | Method and apparatus to update or change a network directory |
US5608903A (en) * | 1994-12-15 | 1997-03-04 | Novell, Inc. | Method and apparatus for moving subtrees in a distributed network directory |
US5677851A (en) * | 1994-12-15 | 1997-10-14 | Novell, Inc. | Method and apparatus to secure digital directory object changes |
US5889988A (en) * | 1995-01-03 | 1999-03-30 | Intel Corporation | Debugger for debugging tasks in an operating system virtual device driver |
US5661191A (en) * | 1995-01-13 | 1997-08-26 | Mitsubishi Chemical Basf Company Limited | Expandable rubber-modified styrene resin beads, expanded beads thereof, and expanded molded articles obtained therefrom |
US5491791A (en) * | 1995-01-13 | 1996-02-13 | International Business Machines Corporation | System and method for remote workstation monitoring within a distributed computing environment |
US6363409B1 (en) * | 1995-04-24 | 2002-03-26 | Microsoft Corporation | Automatic client/server translation and execution of non-native applications |
US6901433B2 (en) * | 1995-06-07 | 2005-05-31 | Microsoft Corporation | System for providing users with a filtered view of interactive network directory obtains from remote properties cache that provided by an on-line service |
US5903731A (en) * | 1995-06-14 | 1999-05-11 | Us West Technologies, Inc. | System and associated method for re-engineering a telecommunications network support system with object-oriented translators |
US5644720A (en) * | 1995-07-31 | 1997-07-01 | West Publishing Company | Interprocess communications interface for managing transaction requests |
US5758083A (en) * | 1995-10-30 | 1998-05-26 | Sun Microsystems, Inc. | Method and system for sharing information between network managers |
US5996075A (en) * | 1995-11-02 | 1999-11-30 | Sun Microsystems, Inc. | Method and apparatus for reliable disk fencing in a multicomputer system |
US5925108A (en) * | 1995-11-03 | 1999-07-20 | Novell, Inc. | Event notification in a computer system |
US6067575A (en) * | 1995-12-08 | 2000-05-23 | Sun Microsystems, Inc. | System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs |
US5915112A (en) * | 1996-01-02 | 1999-06-22 | International Business Machines Corporation | Remote procedure interface with support for multiple versions |
US5887172A (en) * | 1996-01-10 | 1999-03-23 | Sun Microsystems, Inc. | Remote procedure call system and method for RPC mechanism independent client and server interfaces interoperable with any of a plurality of remote procedure call backends |
US5761507A (en) * | 1996-03-05 | 1998-06-02 | International Business Machines Corporation | Client/server architecture supporting concurrent servers within a server with a transaction manager providing server/connection decoupling |
US5754977A (en) * | 1996-03-06 | 1998-05-19 | Intervoice Limited Partnership | System and method for preventing enrollment of confusable patterns in a reference database |
US5764915A (en) * | 1996-03-08 | 1998-06-09 | International Business Machines Corporation | Object-oriented communication interface for network protocol access using the selected newly created protocol interface object and newly created protocol layer objects in the protocol stack |
US5721825A (en) * | 1996-03-15 | 1998-02-24 | Netvision, Inc. | System and method for global event notification and delivery in a distributed computing environment |
US5732706A (en) * | 1996-03-22 | 1998-03-31 | Lockheed Martin Ir Imaging Systems, Inc. | Ultrasonic array with attenuating electrical interconnects |
US6101528A (en) * | 1996-03-27 | 2000-08-08 | Intel Corporation | Method and apparatus for discovering server applications by a client application in a network of computer systems |
US6226746B1 (en) * | 1998-03-20 | 2001-05-01 | Sun Microsystems, Inc. | Stack-based system and method to combine security requirements of methods |
US6185611B1 (en) * | 1998-03-20 | 2001-02-06 | Sun Microsystem, Inc. | Dynamic lookup service in a distributed system |
US6182083B1 (en) * | 1997-11-17 | 2001-01-30 | Sun Microsystems, Inc. | Method and system for multi-entry and multi-template matching in a database |
US6938263B2 (en) * | 1996-04-23 | 2005-08-30 | Sun Microsystems, Inc. | System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space |
US5768524A (en) * | 1996-04-30 | 1998-06-16 | International Business Machines Corporation | Method for processing requests for notice of events |
EP0805393B1 (en) * | 1996-04-30 | 2011-11-09 | International Business Machines Corporation | Method and apparatus for managing membership of a group of processors in a distributed computing environment |
US6199116B1 (en) * | 1996-05-24 | 2001-03-06 | Microsoft Corporation | Method and system for managing data while sharing application programs |
US6018619A (en) * | 1996-05-24 | 2000-01-25 | Microsoft Corporation | Method, system and apparatus for client-side usage tracking of information server systems |
US6014686A (en) * | 1996-06-21 | 2000-01-11 | Telcordia Technologies, Inc. | Apparatus and methods for highly available directory services in the distributed computing environment |
SG67354A1 (en) * | 1996-06-27 | 1999-09-21 | Inst Of Systems Science Nation | Computationally efficient method for trusted and dynamic digital objects dissemination |
US5758077A (en) * | 1996-08-02 | 1998-05-26 | Hewlett-Packard Company | Service-centric monitoring system and method for monitoring of distributed services in a computing network |
US6016516A (en) * | 1996-08-07 | 2000-01-18 | Fuji Xerox Co. Ltd. | Remote procedure processing device used by at least two linked computer systems |
US6212578B1 (en) * | 1996-09-09 | 2001-04-03 | Oracle Corporation | Method and apparatus for managing dependencies in a distributed computing environment for ensuring the safety of remote procedure calls |
US6757729B1 (en) * | 1996-10-07 | 2004-06-29 | International Business Machines Corporation | Virtual environment manager for network computers |
US5832529A (en) * | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US6058381A (en) * | 1996-10-30 | 2000-05-02 | Nelson; Theodor Holm | Many-to-many payments system for network content materials |
US6167520A (en) * | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
US6044381A (en) * | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
US6034925A (en) * | 1996-12-02 | 2000-03-07 | Thomson Consumer Electronics, Inc. | Accessing control method for identifying a recording medium in a jukebox |
US6061740A (en) * | 1996-12-09 | 2000-05-09 | Novell, Inc. | Method and apparatus for heterogeneous network management |
JPH10171701A (ja) * | 1996-12-10 | 1998-06-26 | Fuji Xerox Co Ltd | 手続実行装置及び方法 |
US6105069A (en) * | 1997-01-22 | 2000-08-15 | Novell, Inc. | Licensing controller using network directory services |
US5933647A (en) * | 1997-01-24 | 1999-08-03 | Cognet Corporation | System and method for software distribution and desktop management in a computer network environment |
US6052761A (en) * | 1997-01-31 | 2000-04-18 | Hewlett-Packard Company | Increment update in an SCI based system |
US5892922A (en) * | 1997-02-28 | 1999-04-06 | 3Com Corporation | Virtual local area network memory access system |
US7203769B2 (en) * | 1997-03-14 | 2007-04-10 | International Business Machines Corporation | Bootstrapping technique for distributed object client systems |
US6643696B2 (en) * | 1997-03-21 | 2003-11-04 | Owen Davis | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
US6189046B1 (en) * | 1997-03-27 | 2001-02-13 | Hewlett-Packard Company | Mechanism and method for merging cached location information in a distributed object environment |
US6104716A (en) * | 1997-03-28 | 2000-08-15 | International Business Machines Corporation | Method and apparatus for lightweight secure communication tunneling over the internet |
US6408342B1 (en) * | 1997-03-28 | 2002-06-18 | Keith E. Moore | Communications framework for supporting multiple simultaneous communications protocols in a distributed object environment |
US6192044B1 (en) * | 1997-03-31 | 2001-02-20 | Intel Corporation | Employing a look-up service and a callee connection service to establish a network phone call between a caller and a callee |
US6041351A (en) * | 1997-04-17 | 2000-03-21 | Newmoon.Com | Network traffic by instruction packet size reduction |
US6247091B1 (en) * | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6055562A (en) * | 1997-05-01 | 2000-04-25 | International Business Machines Corporation | Dynamic mobile agents |
US6085030A (en) * | 1997-05-02 | 2000-07-04 | Novell, Inc. | Network component server |
US6061726A (en) * | 1997-05-27 | 2000-05-09 | Novell, Inc. | Dynamic rights assignment apparatus and method using network directory services |
US6219675B1 (en) * | 1997-06-05 | 2001-04-17 | Microsoft Corporation | Distribution of a centralized database |
US6378001B1 (en) * | 1997-06-18 | 2002-04-23 | International Business Machines Corp. | Collaborative framework with shared objects |
US5905868A (en) * | 1997-07-22 | 1999-05-18 | Ncr Corporation | Client/server distribution of performance monitoring data |
US6343308B1 (en) * | 1997-08-14 | 2002-01-29 | International Business Machines Corporation | Systems, methods and computer programs for mixing different versions of Java classes |
US6078655A (en) * | 1997-08-27 | 2000-06-20 | At&T Corp | Automatic international reattempt method and apparatus |
US6052724A (en) * | 1997-09-02 | 2000-04-18 | Novell Inc | Method and system for managing a directory service |
US6199068B1 (en) * | 1997-09-11 | 2001-03-06 | Abb Power T&D Company Inc. | Mapping interface for a distributed server to translate between dissimilar file formats |
US6253256B1 (en) * | 1997-10-15 | 2001-06-26 | Sun Microsystems, Inc. | Deferred reconstruction of objects and remote loading in a distributed system |
US6032151A (en) * | 1997-11-17 | 2000-02-29 | Sun Microsystems, Inc. | Database system employing polymorphic entry and entry matching |
US6704803B2 (en) * | 1998-01-26 | 2004-03-09 | International Business Machines Corporation | Method and system for distributing data events over an information bus |
US6023586A (en) * | 1998-02-10 | 2000-02-08 | Novell, Inc. | Integrity verifying and correcting software |
US6185602B1 (en) * | 1998-06-29 | 2001-02-06 | Sony Corporation | Multi-user interaction of multimedia communication |
US6108346A (en) * | 1998-08-27 | 2000-08-22 | Xiox Corporation | Combined synchronous and asynchronous message transmission |
US6269401B1 (en) * | 1998-08-28 | 2001-07-31 | 3Com Corporation | Integrated computer system and network performance monitoring |
US6301613B1 (en) * | 1998-12-03 | 2001-10-09 | Cisco Technology, Inc. | Verifying that a network management policy used by a computer system can be satisfied and is feasible for use |
US6505248B1 (en) * | 1999-03-24 | 2003-01-07 | Gte Data Services Incorporated | Method and system for monitoring and dynamically reporting a status of a remote server |
US6578074B1 (en) * | 1999-06-25 | 2003-06-10 | Mediaone Group, Inc. | Provisioning server enhancement |
US6564174B1 (en) * | 1999-09-29 | 2003-05-13 | Bmc Software, Inc. | Enterprise management system and method which indicates chaotic behavior in system resource usage for more accurate modeling and prediction |
US6757262B1 (en) * | 2000-09-15 | 2004-06-29 | Motorola, Inc. | Service framework supporting remote service discovery and connection |
JP2002132739A (ja) * | 2000-10-23 | 2002-05-10 | Nec Corp | スタブ検索ローディングシステム及び方法、サーバ装置、クライアント装置並びにコンピュータ可読記録媒体 |
-
1999
- 1999-02-17 WO PCT/US1999/003396 patent/WO1999044127A1/en not_active Application Discontinuation
- 1999-02-17 JP JP2000533811A patent/JP2002505467A/ja active Pending
- 1999-02-17 KR KR1020007009394A patent/KR20010041294A/ko not_active Application Discontinuation
- 1999-02-17 AU AU32971/99A patent/AU3297199A/en not_active Abandoned
- 1999-02-17 EP EP99936129A patent/EP1057107A1/en not_active Withdrawn
- 1999-02-17 CN CN99805304A patent/CN1298503A/zh active Pending
-
2001
- 2001-01-08 US US09/755,084 patent/US20010002473A1/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1453956B (zh) * | 2002-04-25 | 2010-05-12 | 艾利森电话股份有限公司 | 电信网络的方法和结构 |
CN100391208C (zh) * | 2002-12-31 | 2008-05-28 | 北京因特时代信息技术有限公司 | 一种分布式网络服务发布实现方法 |
CN100418089C (zh) * | 2003-08-20 | 2008-09-10 | 苹果公司 | 加速本地高速缓存中资源记录到期的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1057107A1 (en) | 2000-12-06 |
AU3297199A (en) | 1999-09-15 |
US20010002473A1 (en) | 2001-05-31 |
KR20010041294A (ko) | 2001-05-15 |
WO1999044127A1 (en) | 1999-09-02 |
JP2002505467A (ja) | 2002-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1298503A (zh) | 分布式系统中的动态查找服务 | |
CN1298509A (zh) | 在分布式系统中租用委派证的方法、装置和产品 | |
CN1645330A (zh) | 用于应用程序分布式管理的启用网格的虚拟机的方法和系统 | |
CN1906580A (zh) | 对于具有可移动对象的启用网格的虚拟机的方法和系统 | |
CN1196068C (zh) | 信息提供系统 | |
CN1298514A (zh) | 确定性散列识别远程方法的方法和系统 | |
CN1298513A (zh) | 用于远程方法启用的方法和设备 | |
CN1924812A (zh) | 用于i/o适配器的方法和装置 | |
CN1924842A (zh) | 用于i/o适配器的方法和装置 | |
CN1722092A (zh) | Vex-虚拟扩展框架 | |
CN1577322A (zh) | 管理数据处理系统中的应用文件的方法和装置 | |
CN1464401A (zh) | 使用影子对象进行核准控制的面向对象系统和方法 | |
CN1140500A (zh) | 分布式数据库系统 | |
CN1967485A (zh) | 一种实现j2ee应用的方法及系统 | |
EP1194846A1 (en) | Network proxy for devices with limited resources | |
CN1924803A (zh) | 处理不同模态的数据的装置和方法 | |
CN1816791A (zh) | 用上下文表示向用户呈现项目的系统及方法 | |
CN1662011A (zh) | 使用元数据定义映射来构建组件应用程序的系统和方法 | |
CN1292192A (zh) | 基于多形态令牌的控制 | |
CN1292115A (zh) | 分布系统中动态验证信息的装置和方法 | |
CN1298506A (zh) | 便于访问查询服务的方法和系统 | |
CN1167230C (zh) | 通信系统、通信控制装置及方法 | |
CN1091842A (zh) | 包括用户接口的中断系统和方法 | |
CN1245685C (zh) | 基于构件的操作系统动态设备驱动的方法 | |
CN1816800A (zh) | 程序处理系统、程序处理方法以及计算机程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C01 | Deemed withdrawal of patent application (patent law 1993) | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1034486 Country of ref document: HK |