CN101035015A - 用于维护命名空间中联合命名上下文绑定的方法和装置 - Google Patents
用于维护命名空间中联合命名上下文绑定的方法和装置 Download PDFInfo
- Publication number
- CN101035015A CN101035015A CNA2007100042042A CN200710004204A CN101035015A CN 101035015 A CN101035015 A CN 101035015A CN A2007100042042 A CNA2007100042042 A CN A2007100042042A CN 200710004204 A CN200710004204 A CN 200710004204A CN 101035015 A CN101035015 A CN 101035015A
- Authority
- CN
- China
- Prior art keywords
- namespace
- binding
- quoting
- subscriber
- subscription
- 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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/457—Network directories; Name-to-address mapping containing identifiers of data entities on a computer, e.g. file names
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品。使用持久订阅,第一系统的第一命名空间中的引用被绑定到第二系统上的第二命名空间。用图形用户界面对第一引用到第二命名空间的绑定进行管理。使用通过网络与第二系统的通信,建立与用于绑定的第二系统的持久订阅。在第一命名系统中,接收来自第二系统的、关于影响绑定的变化的通知,并重新绑定引用。
Description
技术领域
本发明一般涉及网络通信,特别涉及数据处理系统所用的寻址系统。更具体而言,本发明涉及用于维护命名空间(name space)中的联合命名上下文绑定(federated name context binding)的系统、方法和计算机程序产品。
背景技术
Internet(因特网)—也称为“互联网络”—是一组可能不同的、借助网关连接在一起的计算机网络,其中,网关处理数据传送以及从发送网络所用协议到接收网络所用协议的消息转换。当大写时,术语“Internet”指的是使用TCP/IP协议集的网络和网关在全世界范围内的集合。
因特网已经既作为信息源又作为娱乐源而成为固定的文化设施。许多企业创建因特网站点作为它们的营销活动的组成部分,向顾客告知该企业所提供的产品或服务,或提供试图培养商标忠诚度的其他信息。许多联邦、州、和地方政府机构同样将因特网站点用于信息目的,特别是必须与社会中差不多所有部分交互的机构,例如国家税务局以及州秘书处。另外,提供在线公共记录的信息指南和/或可搜索数据库可降低运行成本。另外,因特网作为商业交易的媒介正在日益流行。
当前,通过因特网传送数据的最常用方法是使用也简称为“Web”的万维网环境。存在用于传送信息的其他因特网协议,例如文件传输协议(FTP)和Gopher,但它们没有达到Web的普遍性。在Web环境中,服务器和客户端使用超文本传输协议(HTTP)实现数据事务(datatransaction),HTTP是一种用于处理各种数据文件(例如文本、静止图形图像、音频、动态视频等等)的传送的公知协议。
网站以服务器数据处理系统为主机。通常,多个服务器数据处理系统支持指向单个网站的事务或请求。换句话说,对于到给定网站的特定URL,多个服务器数据处理系统可用于处理来自Web上的用户的请求。这些服务器数据处理系统通常被组织为称为集群或服务器集群的组。集群是提供容错和/或负载平衡的一组服务器数据处理系统。如果集群中的一个服务器数据处理系统发生故障,一个或多个另外的服务器数据处理系统仍旧可用。负载平衡在集群中的多个数据处理系统上分配工作负荷。
这些服务器数据处理系统运行用于处理请求的应用。例如,用于网站的应用可包括:用于提供关于货物和服务的信息、提供购物车、和处理订单的应用。为了便利于涉及系统间通过网络的数据传输的多服务器事务,有必要维护位于网络上的其他系统的正确地址的数据库。这种数据库称为命名空间。在现有技术中,对于维护可用的“联合”命名上下文引用(namingcontext reference)—其为被链接到外部系统上的地址的命名上下文引用—不存在适当的解决方案。联合命名空间是使用这种引用的命名空间。例如,如果第一系统上的第一命名空间具有解析到第二命名空间中的命名上下文的联合命名上下文绑定,则如果作为第二命名空间的主机的命名服务器被重启,该引用可能变得无效。
所需要的是维护命名空间中的联合命名上下文绑定的方法。
发明内容
公开了用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品。第一系统的第一命名空间中的引用与到第二系统上的第二命名空间的持久订阅(durable subscription)绑定。用图形用户界面对第一引用到第二命名空间的绑定进行管理。利用通过网络与第二系统的通信,与第二系统建立用于绑定的持久订阅。在第一命名空间中,接收来自第二系统的、对影响绑定的变化的通知,并重新绑定引用。
附图说明
所附权利要求中给出了相信为本发明的特性的新颖性特征。然而,结合附图,通过阅读下面对说明性实施例的详细介绍,可以更好地理解本发明本身及其优选使用模式、进一步的目标和优点,在附图中:
图1示出了网络环境的框图,该网络环境包含通用数据处理系统,可使用该通用数据处理系统实现本发明的用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品;
图2示出了根据本发明优选实施例的图形用户界面,其用于本发明的用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品;
图3A示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于在作为命名上下文的主机的命名服务器启动时向命名上下文订阅者发送通知;
图3B示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于响应于来自主机系统的、必须刷新命名上下文引用的通知重新绑定通过订阅输入的命名上下文;
图4A示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于使用GUI浏览协作系统中的命名空间并发出在一个系统中的命名空间中创建联合绑定的请求,该联合绑定解析到在另一系统的命名空间中的命名上下文;
图4B示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于从另一系统用订阅的形式输入命名上下文引用,以便将该命名上下文引用绑定到本地系统中的命名空间中;以及
图4C示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于通过系统处理对于订阅来自该系统中命名空间的命名上下文的请求来输出命名上下文引用。
具体实施方式
本发明提供了一种用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品。本发明用于维护“本地”命名空间中的联合命名上下文绑定。本地命名空间是被管理的主机系统的一部分。联合命名上下文绑定是命名空间中的、解析到其他命名空间中的命名上下文的绑定。
本发明解决了维护可用的命名上下文引用的问题。例如,如果第一示例性命名空间(命名空间A)具有解析到第二示例性命名空间(命名空间B)中的命名上下文的联合命名上下文绑定,则如果作为命名空间B的主机的命名服务器重启,该引用将变得无效。由于对资源的标识、其路径、地址和/或名称的静态或动态改变,在系统重启时引用变得无效。本发明通过获取到命名空间B中的命名上下文的新引用并将之重新绑定到命名空间A,解决了这一问题。本发明允许作为命名空间A和命名空间B的主机的系统通过普通的发布/订阅机制(称为订阅服务器)协作。上述示例中的命名空间A是被管理的命名空间。为了在命名空间A中维护到命名空间B的有效引用,作为命名空间A的主机的系统订阅到命名空间B。本发明提供了帮助这种订阅的机制。
作为订阅者,作为命名空间A的主机的系统得到某些事件的通知,包括当命名空间B被启动或重启时。事件通知允许作为命名空间A的主机的系统将所有引用重新绑定到命名空间B中。如果以命名空间B为主机的发布系统得到关于命名空间B中的确切地哪些命名上下文被从命名空间A引用的详细信息,则如果在命名空间B中的这些特定命名上下文中的任何一个的状态发生变化,命名空间B中的发布系统可发送通知。如果命名空间B中的命名上下文被重新绑定或解除绑定,这种情况可能发生。
由于当命名空间A的主机系统被启动时作为命名空间B的主机的系统可能不可用,本发明提供了一种用于使命名空间A的订阅持久的方法。一旦命名空间A被订阅,那么,直到命名空间A解除订阅,其将被通知命名空间B被启动或重启。如果命名空间B包含对命名空间A的引用,这种情况会一直发生,从而产生循环依赖性。一个系统将几乎总是在另一系统之前可用。
现参照附图,特别是参照图1,示出了网络环境的框图,该网络环境包含通用数据处理系统,可使用该系统实现本发明的用于维护命名空间中的联合命名上下文绑定的方法、系统和计算机程序产品。数据处理系统100a-100b包含处理存储单元(例如RAM 102a-102b)和处理器104a-104b。数据处理系统100a-100b还包括例如硬盘驱动器或其他直接存取存储设备等持久性(即非易失性)存储器106a-106b,所述存储器包含输入/输出数据库160a-160b。输入/输出(I/O)控制器108a-108b通过连接到接口电缆112a-112b的网络适配器110a-110b提供到网络190的连接性。通过例如电缆或射频率连接等有线或无线链路116a-116b,I/O控制器108还连接到例如键盘、显示设备、鼠标或打印机等用户I/O设备114a-114b。系统互连118a-118b连接处理器104a-104b、RAM 102a-102b、存储器106a-106b以及I/O控制器108a-108b。
在根据本发明的优选实施例运行时,数据处理系统100a-100b在RAM102a-102b中存储几个数据项和指令。这些包括网络订阅系统152a-152b,其用于通过操作系统130a-130b的帮助与应用128a-128b交互。在图1所示的实施例中,网络订阅系统152a-152b包含订阅服务器154a-154b、图形用户界面(GUI)156a-156b以及命名服务器158a-158b。其他应用128a-128b以及网络订阅系统152a-152b通过操作系统130a-130b与处理器104a-104b、RAM 102a-102b、存储器106a-106b以及I/O控制器108a-108b接口。数据处理领域的技术人员将会很快地认识到,可添加数据处理系统100a-100b的另外的部件或用之替代已知的部件,而不脱离本发明的范围。在许多实施方式中,还将存在为简化起见省略的另外的服务器。
命名服务器158a-158b包括被管理的“本地”命名空间以及被输入和/或输出的“远程”命名空间。订阅服务器154a-154b用于将事件通知给进行订阅的网络订阅系统152a-152b,并作为其他发布者的订阅者,接受关于在那些系统上的感兴趣的事件的通知。命名服务器158a-158b通知订阅服务器154a-154b作为主机的数据处理系统100a-100b已被启动或重启。在绑定级输出数据在输入/输出数据库160a-160b中被维护的情况中,命名服务器158a-158b也将绑定变化通知给位于作为主机的数据处理系统100a-100b上的订阅服务器154a-154b。
订阅服务器154a-154b还包含维护输入/输出数据库160a-160b、并维护被管理的命名空间中的联合绑定的逻辑。在其他实施例中,订阅服务器154a-154b可作为多个部件存在,尽管它们在优选实施例中为简化起见被表示为一个部件。订阅服务器154a-154b包含应用协议接口(API),以便允许它们编辑、输入以及输出数据。订阅服务器154a-154b与其他订阅服务器154a-154b交互。作为订阅者,订阅服务器154a-154b由其他订阅服务器154a-154b通知被输入的命名空间。作为发布者,订阅服务器154a-154b将事件通知给其他订阅服务器154a-154b。订阅服务器154a-154b还从输入/输出数据库160a-160b读取数据以及向输入/输出数据库160a-160b写入数据。最后,订阅服务器154a-154b在被管理的命名空间上执行绑定和重新绑定操作以便将联合绑定保持为最新。
为了如本发明所介绍的那样维护联合命名上下文引用,在某些持久介质例如存储器106a-106b上维护某些数据。被维护以管理命名空间的数据包含输入数据和输出数据。继续上面介绍的示例,假设命名空间A位于第一数据处理系统100a上,命名空间B位于第二数据处理系统100b上。第一数据处理系统100a上的输入/输出数据库160a中的输入数据包括用于命名空间B的条目。输入/输出数据库160a中用于命名空间B的该条目可包含第二数据处理系统100b上的命名服务器158b的服务器地址和订阅服务器154b的地址。如果第二数据处理系统100b上的命名空间B又是第一数据处理系统100a上的命名空间A的订阅者,则输入/输出数据库160a中的命名空间B的条目包含关于第一数据处理系统100a上的命名空间A的输出数据。输出信息包括第二数据处理系统100b上的订阅服务器154b的服务器地址。关于命名空间B具有到命名空间A的哪些引用的细节也被包括在第一数据处理系统100a上的输入/输出数据库160a中的输出数据内,例如,识别这些命名上下文所需要的信息。在一优选实施例中,另外的输入/输出数据例如最近得知的可用性状态—其在性质上更为短暂—不在第一数据处理系统100a上的输入/输出数据库160a中维护,尽管在其他实施例中可以。作为命名空间B的主机的第二数据处理系统100b将在输入/输出数据库160b中具有类似的输入与输出数据。下面提供了容纳用于输入/输出数据库160a的数据的示例性数据结构:
输入数据
表:订阅服务器(外部订阅服务器列表)
列:订阅服务器ID(本地分配)
列:订阅服务器主机名
列:订阅服务器端口号
表:外部命名服务器
列:订阅服务器(ID)(引用到订阅服务器表)
列:命名服务器引导(bootstrap)主机
列:命名服务器引导端口
列:外部命名服务器ID
表:本地命名服务器
列:命名服务器引导主机
列:命名服务器引导端口
列:命名服务器ID
表:绑定
列:订阅服务器ID(引用到订阅服务器表)
列:外部命名服务器ID(引用到外部命名服务器表)
列:订阅ID(由外部订阅服务器提供)
列:本地命名服务器ID(引用到本地命名服务器表)
列:联合命名上下文的外部查找名(相对于初始上下文)
列:联合命名上下文的本地绑定名(相对于初始上下文)
输出数据
表:订阅服务器(外部订阅服务器列表)
列:订阅服务器ID(本地分配)
列:订阅服务器主机名
列:订阅服务器端口号
表:本地命名服务器
列:命名服务器引导主机
列:命名服务器引导端口
列:命名服务器ID
表:订阅
列:订阅ID(由外部订阅服务器提供)
列:本地命名服务器ID(引用到本地命名服务器表)
列:订阅服务器ID(引用到订阅服务器表)
列:本地命名服务器ID(引用到本地命名服务器表)
列:命名上下文的本地查找名(相对于初始上下文)
GUI 156a-156b用于查看和编辑输入与输出数据,并允许用户浏览本地与远程命名空间。GUI 156a-156b用作用户的访问点,以控制网络订阅系统152a-152b的活动。具体而言,GUI 156a-156b以API的形式向订阅服务器154a-154b传送指令,以便读取和写入所有输入与输出数据。所述API可本地或远程操作。使用仅用于本地的API,GUI 156a-156b将在与订阅服务器154a-154b相同的进程中运行。使用远程API,GUI 156a-156b可在分立的进程中运行,从而在数据处理系统100a-100b上产生增大的灵活性。由于GUI 156a-156b还用作命名空间浏览器,GUI 156a-156b与命名服务器158a-158b交互以显示列出的命名空间。注意,绑定操作不是由GUI 156a-156b直接发出的,而是在定义联合绑定时通过订阅服务器154a-154b发出的。
本发明各部件在网络190上或在数据处理系统100a-100b内部通过一系列消息进行通信。当第一数据处理系统100a的用户启动GUI 156a时,GUI 156a通过向订阅服务器154a发送输入数据请求120,请求来自订阅服务器154a的输入数据信息。通过向输入/输出数据库160a发送输入数据读取126,订阅服务器154a通过向输入/输出数据库160a发送输入数据读126做出响应,对于该输入数据读126,输入/输出数据库160a通过在输入数据返回128中向订阅服务器154a发送输入数据,而做出回答。订阅服务器154a于是接受在输入数据返回128中返回的数据,并将该数据作为输入数据提交122传送到GUI 156a。
GUI 156a显示图标,其将在下面相对于图2中对于在联合绑定中涉及的各命名空间的初始命名上下文的可视表示进行介绍,所述联合绑定已反映在输入数据提交122中接收的输入数据中。当用户想要浏览与命名服务器158a-158b相关联的命名空间时,如果该命名空间还没有从现有输入数据显示在GUI 156a上,用户必须为命名空间提供命名服务器地址信息。通过GUI 156a,用户可通过调用请求132调用命名服务器158a,该调用请求132用于或者获取初始上下文,或者发出在命名服务器158a的命名空间中的命名上下文上的列表操作。命名服务器158a通过向GUI 156a发送列表结果134对调用请求132做出响应。类似地,通过GUI 156a,用户可通过远程调用请求138调用远程命名服务器158a,远程调用请求138用于或者获取初始上下文,或者发出在命名服务器158b的命名空间中的命名上下文上的列表操作。命名服务器158b通过向GUI 156a发送远程列表结果150对远程调用请求138做出响应。使用内建在GUI 156a与命名服务器158b中的加密协议,远程调用请求138可通过加密链路被传送。类似的加密可用于远程列表结果150、远程订阅返回消息148以及远程订阅调用消息146。
GUI 156a还允许用户在命名服务器158a的命名空间中发起创建联合上下文绑定,该联合上下文绑定解析到远程命名服务器158b的命名空间中的命名上下文。GUI 156a提示用户输入订阅服务器154b的地址,这种地址还不能从输入数据提交122中已获取的输入数据中获得。联合绑定调用消息124由GUI 156a发送,以调用订阅服务器154a创建到属于订阅服务器154b的命名空间的联合绑定。尽管不同的实施例将用不同的方式处理订阅服务器154b的调用,优选实施例将在预定的名称下从命名服务器158b查找订阅服务器引用。其他实施例将使用外部引导服务器,该服务器用于获取到订阅服务器154b的引用。在远程订阅调用消息146中,订阅服务器154a调用订阅服务器154b,以便订阅命名上下文引用。
在远程订阅返回消息148中,订阅服务器154b向订阅服务器154a返回订阅ID和命名上下文引用。订阅服务器154a于是使用远程订阅数据库写入130将来自远程订阅返回消息148的订阅ID与命名上下文引用写入输入/输出数据库160a,且输入/输出数据库160a以远程订阅数据库写入成功报告130对远程订阅数据库写入130做出回答。当订阅服务器154a通过命名服务器调用140调用命名服务器108a以获取初始命名上下文、且命名服务器108a返回初始命名上下文142时,订阅服务器154a在命名服务器108a上执行绑定操作,并传递自订阅服务器154b返回的命名上下文引用144。订阅服务器154a于是向GUI 156a发送绑定成功报告125。于是,订阅服务器154a向GUI 156a发送绑定成功报告125。
现在转到图2,示出了根据本发明优选实施例的、用于本发明的方法、系统和计算机程序产品的图形用户界面,该方法、系统和计算机程序产品用于维护命名空间中的联合命名上下文绑定。GUI可视表示204a由代表命名空间的可视关联区域组成。第一可视关联区域252包括对本地命名空间中的GUI可视表示204a的用户可用的命名引用226-232。
第一本地引用256标识网络订阅系统200a。中央本地引用1226标识命名服务器208a的一分区。中央本地引用228标识命名服务器208a的第二分区。GUI可视表示204a支持第一可视关联区域252中的远程引用。中央远程引用3230对应于东引用2216,该引用显示在第二可视关联区域250中。绑定指示器242图形化地指示第一可视关联区域252中的中央远程引用3230与第二可视关联区域250中的东引用2216之间的关联。类似地,中央远程引用4232对应于第三可视关联区域254中的西引用3224。绑定指示器238图形化地指示中央远程引用4232与西引用3224之间的关联。如第二可视关联区域250所示,网络订阅系统200b被指示为具有引用214-218JNDI东212,所述引用214-218为命名服务器208b的分区。命名中术语“JNDI”的使用表示JNDI东212符合用于Java命名与目录接口的标准。第三可视关联区域254包含用于图1中未示出的一服务器的服务器标识符210,以及分区指示器引用220-224。在优选实施例中,GUI可视表示204a将允许用户在第二网络订阅系统200b上创建到第三远程系统上的引用的引用。这种绑定的一个示例是第二可视关联区域250中的东远程引用1234,其被绑定到西引用3224。东远程引用1234与西引用3224之间的绑定由绑定指示器240图形化地指示。
在管理命名空间A的GUI可视表示204a的优选实施例中,网络订阅系统200a上的命名空间A将被示为第二可视关联区域252中的本地命名空间,而网络订阅系统200b上的命名空间B将被示为第三可视关联区域254中的、输入的命名空间。从第三可视关联区域254到第二可视关联区域252的拖放(或复制与粘贴)操作用于创建由绑定指示器238表示的联合绑定。联合绑定可以类似的方式从某其他命名空间输入,所述其他命名空间被示为第一可视关联区域250中的、输入的命名空间。该命名空间可以为以网络订阅系统200b为主机的第二命名空间,或作为未示出的某其他网络订阅系统的主机。
现在参照图4A,示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于使用GUI浏览协作系统中的命名空间以及发出在一个系统中的命名空间中创建联合绑定的请求,该联合绑定解析到另一系统中的命名空间中的命名上下文。当用户启动GUI 156a时,过程开始于步骤400。接着,过程移到步骤402,该步骤示出GUI 156a获得到订阅服务器154a的引用并调用订阅服务器154a来检索输入数据。过程接着进行到步骤404。在步骤404中,GUI 156a在GUI可视表示204a中显示用于已经反映在来自输入/输出数据库160a的输入数据中的联合绑定中涉及的各命名空间的初始命名上下文的图标。过程于是移到步骤406,该步骤示出用户浏览GUI可视表示204a。过程接着进行到步骤408。
在步骤408中,GUI 156a判定用户是否已例如通过GUI可视表示204a的拖放使用而发起创建用于命名服务器158a的命名空间中的联合上下文绑定。如果用户没有发起创建用于命名服务器158a-158b的命名空间中的联合上下文绑定,则过程移到步骤410,该步骤示出GUI 204a判定用户是否关闭了GUI可视表示204a。如果GUI 156a判定用户没有关闭GUI可视表示204a,则过程返回到步骤406。如果GUI 156a判定用户关闭了GUI可视表示204a,则过程在步骤412处结束。
回到步骤408,如果GUI 156a判定用户已发起创建与命名服务器158a-158b相关联的命名空间中的联合上下文绑定,则过程移到步骤414,该步骤示出GUI 156a调用本地订阅服务器202a创建如用户所指示的联合绑定。步骤414引起图4B中在步骤416处的过程的开始。过程于是进行到步骤410,该步骤示出GUI 156a判定图4B的过程是否完成。如果GUI156a判定图4B的过程未完成,则过程移到步骤411并等待。过程于是返回到步骤410。如果GUI 156a判定图4B中的过程完成,则过程返回到步骤406。
现在转到图4B,示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于以订阅的形式从另一系统输入命名上下文引用,以便将该命名上下文引用绑定到本地系统中的命名空间之中。过程开始于步骤416并接着移到步骤418,该步骤示出订阅服务器154a调用订阅服务器154b以便命名上下文被绑定为联合绑定。订阅服务器地址作为参数由GUI 156a提供。步骤418引起图4C所示过程的开始,该过程在下面的步骤426处开始。图4B的过程于是移到步骤419,该步骤示出订阅服务器154a判定图4C的过程是否完成。如果图4C的过程未完成,则图4B的过程移到步骤421,在步骤421中,订阅服务器154a等待。于是过程返回到419。在步骤419中,如果图4C的过程完成,则图4B的过程移到步骤420,该步骤示出订阅服务器154a使用从GUI 156a作为参数提供的数据以及在图4C中的过程终止时从订阅服务器154b返回的数据向输入/输出数据库写入输入数据。于是,过程移到步骤422,该步骤示出订阅服务器154a调用由GUI 156a作为参数数据标识的命名服务器,以便将图4C的过程终止时从订阅服务器154b返回的命名上下文引用绑定到其命名空间中。命名上下文在GUI 156a作为参数数据指定的名称下被绑定。过程于是在步骤424处结束。
现在参照图4C,示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程通过系统处理对来自该系统中的命名空间的命名上下文的订阅请求,来输出命名上下文引用。过程开始于步骤426。接着,过程移到步骤428,该步骤示出订阅服务器154b向输入/输出数据库160b写入输出数据。接着,过程移到步骤430。在步骤430中,输入/输出数据库160b在需要的情况下向订阅服务器154b返回数据。于是,过程移到步骤432,该步骤示出订阅服务器154b调用命名服务器158b以获取上下文引用。于是,过程移到步骤434。在步骤434中,订阅服务器154b将包括订阅ID以及命名上下文引用的数据返回到调用者,即订阅服务器154a。于是,过程在步骤436处结束。
现在参照图3A,示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于在作为命名空间的主机的命名服务器启动时向命名上下文订阅者发送通知。
过程开始于步骤300,并接着移到步骤302,该步骤示出本地订阅服务器154b被命名服务器158b调用,来信号通知命名服务器158b启动。过程接着移到步骤304。在步骤304中,订阅服务器154b判定是否所有的订阅者被通知了。如果订阅服务器154b判定所有的订阅者被通知,则过程在步骤306处结束。如果订阅服务器154b判定不是所有的订阅者被通知,则过程移到步骤308,该步骤示出订阅服务器154b识别出下一个订阅者以进行通知。过程于是进行到步骤310。
在步骤310中,订阅服务器154b从输入/输出数据库160b中的输入数据获得用于订阅服务器154a的订阅服务器地址。过程接着进行到步骤312。在步骤312中,订阅服务器154b获得到订阅服务器154a已输入的各个命名上下文中的引用。过程于是进行到步骤314。在步骤314中,订阅服务器154b获得订阅服务器引用。于是过程移到步骤316,该步骤示出订阅服务器154b调用订阅服务器154a,通过参数数据通知其已经发生了命名服务器启动。另外包括在参数数据中的是订阅服务器154a已输入的、对以命名服务器158b为主机的所有命名上下文引用的引用。由于命名服务器158b的启动影响到以其作为主机的、输出到订阅者的所有命名上下文引用,优选地向订阅者发出成批的通知,以便为各个被输出的命名上下文调用订阅者。发送到订阅服务器154a的全局通知包含来自作为主机的命名服务器158b的、所有已被输出到订阅服务器154a的命名上下文引用。过程于是返回到步骤304。
现在转到图3B,示出了根据本发明优选实施例的过程的高级逻辑流程图,该过程用于响应于来自主机系统的、关于命名上下文引用必须刷新的通知重新绑定通过订阅输入的命名上下文。过程开始于步骤318。过程接着进行到步骤330,该步骤示出订阅服务器154a判定是否接收到单个或成批引用变化通知。如果订阅服务器154a判定已经接收到一个引用变化通知,则过程移到步骤332。步骤332示出订阅服务器154a使用在通知中接收到的命名空间位置从输入/输出数据中获得本地命名空间中联合绑定的位置。过程于是移到步骤334。在步骤334中,订阅服务器154a将在通知中接收到的命名上下文引用重新绑定到本地命名空间。过程于是在步骤326中结束。
返回到步骤330,如果订阅服务器154a判定接收到成批引用变化通知,则过程接着移到步骤320,以在通知中包含的引用数据列表中迭代。步骤320表示订阅服务器154a判定所有的引用数据已被处理。如果完成了所有的引用数据,则过程在步骤326结束。如果没有完成所有的引用数据,则过程进行到步骤322,该步骤示出订阅服务器154a使用在通知中接收到的命名空间位置从输入/输出数据获取本地命名空间中联合绑定的位置。于是过程移到步骤324。在步骤324中,订阅服务器154a调用命名服务器158a,以便将对应于步骤322在通知中接收到的命名上下文引用重新绑定到本地命名空间。于是过程返回到步骤320。
尽管在参照优选实施例进行介绍的同时特别地示出了本发明,本领域技术人员将会明了,可在形式和细节上进行各种修改,而不脱离本发明的范围和精神的情况。还值得注意的是,尽管本发明在全功能的计算机系统的背景下进行了介绍,本领域技术人员将会明了,本发明的机制能够作为多种形式的程序产品分发,且无论用于实际进行这种分发的信号承载介质的具体类型如何,本发明同等适用。信号承载介质的示例包括但不限于:例如软盘或CD ROM等可记录型介质以及例如模拟或数字通信链路等传输型介质。
Claims (14)
1.一种用于维护命名空间中的联合命名上下文绑定的方法,该方法包括:
用持久订阅将第一系统的第一命名空间中的第一引用绑定到第二系统上的第二命名空间;
用图形用户界面管理所述第一引用到所述第二命名空间的所述绑定;
利用通过网络与所述第二系统的通信,与所述第二系统建立用于所述绑定的持久订阅;
接收来自所述第二系统的、关于影响到所述绑定的改变的通知;以及
重新绑定所述第一命名空间中的所述引用。
2.根据权利要求1的方法,其中,用所述持久订阅将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到所述第二系统上的所述第二命名空间的所述步骤还包括:用所述持久订阅通过加密链路将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到所述第二系统上的所述第二命名空间。
3.根据权利要求1的方法,其中,所述重新绑定步骤还包括:将被绑定到所述第二系统的、所述第一系统上的所述第一命名空间中的全部引用重新绑定到所述第二系统上的第三命名空间。
4.根据权利要求1的方法,其中,所述重新绑定步骤还包括:将接收自所述第二系统的、所述第一系统上的被识别的引用列表重新绑定到所述第二系统上的第三命名空间。
5.根据权利要求1的方法,其中,用所述持久订阅绑定所述第一引用的所述步骤还包括:向所述第二系统传送数据记录,该数据记录标识所述第二系统中与所述第一系统上的所述第一引用相关联的命名上下文。
6.根据权利要求1的方法,其中,用所述持久订阅将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到第二系统上的所述第二命名空间的所述步骤还包括:在所述第二系统可访问的持久介质上存储所述持久订阅的一个或多个细节。
7.根据权利要求1的方法,其中,所述建立步骤还包括:传送第一服务器地址、订阅服务器地址以及用于所述第一引用的引用标识符。
8.一种用于维护命名空间中的联合命名上下文绑定的系统,包含:
用于用持久订阅将第一系统的第一命名空间中的第一引用绑定到第二系统上的第二命名空间的装置;
用于用图形用户界面管理所述第一引用到所述第二命名空间的所述绑定的装置;
用于利用通过网络与所述第二系统的通信与所述第二系统建立用于所述绑定的持久订阅的装置;
用于接收来自所述第二系统的、关于影响到所述绑定的改变的通知的装置;以及
用于重新绑定所述第一命名空间中的所述引用的装置。
9.根据权利要求8的系统,其中,用所述持久订阅将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到所述第二系统上的所述第二命名空间的所述装置还包含用于用所述持久订阅通过加密链路将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到所述第二系统上的所述第二命名空间的装置。
10.根据权利要求8的系统,其中,所述重新绑定装置还包含用于将被绑定到所述第二系统的、所述第一系统上的所述第一命名空间中的全部引用重新绑定到所述第二系统上的第三命名空间的装置。
11.根据权利要求8的系统,其中,所述重新绑定装置还包含用于将接收自所述第二系统的、所述第一系统上的被识别的引用列表重新绑定到所述第二系统上的第三命名空间的装置。
12.根据权利要求8的系统,其中,用所述持久订阅绑定所述第一引用的所述装置还包含用于向所述第二系统传送数据记录的装置,该数据记录标识所述第二系统中与所述第一系统上的所述第一引用相关联的命名上下文。
13.根据权利要求8的系统,其中,用所述持久订阅将具有包含所述第一引用的所述第一命名空间的所述第一系统绑定到第二系统上的所述第二命名空间的所述装置还包含用于在所述第二系统可访问的持久介质上存储所述持久订阅的一个或多个细节的装置。
14.根据权利要求8的系统,其中,用于建立的所述装置还包含用于传送第一服务器地址、订阅服务器地址以及用于所述第一引用的引用标识符的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/333,604 | 2006-01-17 | ||
US11/333,604 US7603359B2 (en) | 2006-01-17 | 2006-01-17 | Method and apparatus for maintaining federated name context bindings in a name space |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101035015A true CN101035015A (zh) | 2007-09-12 |
CN101035015B CN101035015B (zh) | 2011-01-26 |
Family
ID=38264457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100042042A Expired - Fee Related CN101035015B (zh) | 2006-01-17 | 2007-01-16 | 用于维护命名空间中联合命名上下文绑定的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7603359B2 (zh) |
CN (1) | CN101035015B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770368B (zh) * | 2009-12-30 | 2012-09-05 | 飞天诚信科技股份有限公司 | .net文件中命名空间的压缩方法和装置 |
CN106372001A (zh) * | 2015-07-23 | 2017-02-01 | 株式会社东芝 | 内存系统 |
CN111600827A (zh) * | 2019-02-20 | 2020-08-28 | 成都鼎桥通信技术有限公司 | 通信方法及装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782047B2 (en) * | 2009-10-30 | 2014-07-15 | Hitachi Data Systems Corporation | Fixed content storage within a partitioned content platform using namespaces |
EP3097481B1 (en) | 2014-01-21 | 2022-11-30 | Oracle International Corporation | System and method for supporting multi-tenancy in an application server, cloud, or other environment |
JP6505823B2 (ja) * | 2014-07-14 | 2019-04-24 | オラクル・インターナショナル・コーポレイション | マルチテナントアプリケーションサーバ環境でネームスペースをサポートするためのシステムおよび方法 |
US10318280B2 (en) | 2014-09-24 | 2019-06-11 | Oracle International Corporation | System and method for supporting patching in a multitenant application server environment |
US10250512B2 (en) | 2015-01-21 | 2019-04-02 | Oracle International Corporation | System and method for traffic director support in a multitenant application server environment |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2110243C (en) * | 1992-12-31 | 1998-08-11 | Philip Steven Winterbottom | Apparatus and methods for making a portion of a first name space available as a portion of a second name space |
US6083282A (en) * | 1994-10-21 | 2000-07-04 | Microsoft Corporation | Cross-project namespace compiler and method |
US5689701A (en) * | 1994-12-14 | 1997-11-18 | International Business Machines Corporation | System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax |
US6167253A (en) * | 1995-01-12 | 2000-12-26 | Bell Atlantic Network Services, Inc. | Mobile data/message/electronic mail download system utilizing network-centric protocol such as Java |
US5724512A (en) | 1995-04-17 | 1998-03-03 | Lucent Technologies Inc. | Methods and apparatus for storage and retrieval of name space information in a distributed computing system |
US5903753A (en) * | 1995-08-18 | 1999-05-11 | International Business Machines Corporation | Name space registry with backward compatibility for older applications |
CA2199108C (en) * | 1996-03-05 | 2002-04-23 | Hirotoshi Maegawa | Parallel distributed processing system and method of same |
US6269378B1 (en) * | 1998-12-23 | 2001-07-31 | Nortel Networks Limited | Method and apparatus for providing a name service with an apparently synchronous interface |
WO2000045256A1 (en) * | 1999-01-29 | 2000-08-03 | Iona Technologies, Inc. | Method and system for dynamic configuration of interceptors in a client-server environment |
US6438590B1 (en) * | 1999-04-13 | 2002-08-20 | Hewlett-Packard Company | Computer system with preferential naming service |
US6834284B2 (en) * | 1999-08-12 | 2004-12-21 | International Business Machines Corporation | Process and system for providing name service scoping behavior in java object-oriented environment |
US6604148B1 (en) * | 1999-10-01 | 2003-08-05 | International Business Machines Corporation | Method, system, and program for accessing a network namespace |
EP1228428A2 (en) * | 1999-11-01 | 2002-08-07 | Curl Corporation | System and method supporting nonlocal values |
US6578050B1 (en) * | 2000-06-01 | 2003-06-10 | Sprint Communications Company, L.P. | Method and apparatus for implementing persistence in name services associated with computer system |
US6751646B1 (en) * | 2000-06-01 | 2004-06-15 | Sprint Communications Company L.P. | Method and apparatus for implementing CORBA compliant name services incorporating load balancing features |
WO2002010917A1 (en) * | 2000-07-27 | 2002-02-07 | Bea Systems, Inc. | System and method for concentration and load-balancing of requests |
US7206819B2 (en) * | 2001-01-18 | 2007-04-17 | Sun Microsystems, Inc. | Method and apparatus for providing virtual namespaces for active computing environments |
US7036127B2 (en) * | 2001-10-11 | 2006-04-25 | International Business Machines Corporation | Legacy CORBA name space integration using web application servers |
US20030078943A1 (en) * | 2001-10-19 | 2003-04-24 | Mcgeorge Vernon E. | Conduits for multiple data sources |
WO2003073209A2 (en) | 2002-02-22 | 2003-09-04 | Bea Systems, Inc. | System and method for software application scoping |
US20070050320A1 (en) * | 2005-08-25 | 2007-03-01 | Carrier Scott R | Method and system for mapping context name space binding lookups |
-
2006
- 2006-01-17 US US11/333,604 patent/US7603359B2/en not_active Expired - Fee Related
-
2007
- 2007-01-16 CN CN2007100042042A patent/CN101035015B/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770368B (zh) * | 2009-12-30 | 2012-09-05 | 飞天诚信科技股份有限公司 | .net文件中命名空间的压缩方法和装置 |
CN106372001A (zh) * | 2015-07-23 | 2017-02-01 | 株式会社东芝 | 内存系统 |
CN106372001B (zh) * | 2015-07-23 | 2019-08-09 | 东芝存储器株式会社 | 内存系统 |
CN111600827A (zh) * | 2019-02-20 | 2020-08-28 | 成都鼎桥通信技术有限公司 | 通信方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US7603359B2 (en) | 2009-10-13 |
US20070168371A1 (en) | 2007-07-19 |
CN101035015B (zh) | 2011-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210174372A1 (en) | Methods and apparatus for using artificial intelligence entities to provide information to an end user | |
US7453868B2 (en) | Strategies for sending content to a target device | |
CN101035015A (zh) | 用于维护命名空间中联合命名上下文绑定的方法和装置 | |
CN1290028C (zh) | 网络系统、网络服务器、信息处理设备及数据产生方法 | |
CN1229715C (zh) | 信息控制系统和信息处理方法 | |
US9253224B2 (en) | Method and system for on-demand communities | |
US10977334B2 (en) | Systems and methods for providing client-side enablement of server communications via a single communication session for a plurality of browser-based presentation interfaces | |
JP7079397B2 (ja) | グループベース通信システムの自動生成データを利用して処理アクションを開始するためのシステムおよび方法 | |
US20120331016A1 (en) | Methods and systems for caching data shared between organizations in a multi-tenant database system | |
US10719563B2 (en) | Method and system for providing information to a mobile handheld device from a database system | |
US10205751B2 (en) | System, method and computer program product for sharing content via links | |
CN1543120A (zh) | 用于存在状态指示的方法及装置 | |
CN1925448B (zh) | 与其他网络装置共享多媒体数据的网络装置及其方法 | |
US10747728B2 (en) | Edit and share unsupported files through instantly generated preview | |
US8140692B2 (en) | Flexibly configured presence server | |
US7809837B2 (en) | User interface for configuring web services for remote portlets | |
US11991237B1 (en) | Adaptive content deployment | |
US10148603B2 (en) | Methods and systems for generating electronic messages based upon dynamic content | |
CN1521983A (zh) | 使用数据映象来驱动文件内容和分配设置 | |
EP2040165A2 (en) | Workflow-enabled client | |
CN1493998A (zh) | 信息更新设备及其方法以及记录信息更新程序的记录媒介 | |
US20160092580A1 (en) | System and method for providing contact information | |
WO2008103361A1 (en) | Demand-driven, collaborative systems and processes for collecting structured information | |
JP7510070B2 (ja) | 情報処理システム、情報処理方法及びプログラム | |
KR102632940B1 (ko) | 비동기식 이벤트-기반 분산 메시징 서비스 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110126 Termination date: 20210116 |