CN1096638C - 用于客户/服务器计算的方法 - Google Patents
用于客户/服务器计算的方法 Download PDFInfo
- Publication number
- CN1096638C CN1096638C CN98106480A CN98106480A CN1096638C CN 1096638 C CN1096638 C CN 1096638C CN 98106480 A CN98106480 A CN 98106480A CN 98106480 A CN98106480 A CN 98106480A CN 1096638 C CN1096638 C CN 1096638C
- Authority
- CN
- China
- Prior art keywords
- client
- affairs
- source code
- server
- restore
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- 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
-
- 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/466—Transaction processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Stored Programmes (AREA)
Abstract
客户/服务器媒件将一个源码客户应用程序进行处理以便当应用程序表明事务的开始时,为可复原客户自动地在本地建立事务和为不可复原客户远程地建立事务。因此可不考虑事务是在本地还是远程地建立而编写源码客户应用程序,该媒件负责此功能。
Description
技术领域
本发明涉及客户/服务器(也称为“分布式”)计算领域,其中一个计算设备(“客户”)要求另一个计算设备(“服务器”)完成客户的一部分工作。客户和服务器可以两者都位于同一物理计算设备内。
背景技术
客户/服务器计算近几年来在信息技术世界中变得愈来愈重要。这种分布式计算允许一个计算机委托另一个计算机完成后者更适合做的一部分工作。例如,服务器可以是一个功能强的计算机,其中运行着管理存储的大量数据的数据库程序,而客户只是一个简单的桌上个人计算机(PC),它向数据库请求信息以便在它的一个本地程序中使用这些信息。
由于使用了众所周知的称为面向对象编程(OOP)的计算机编程技术,客户/服务器计算的优点进一步加强了,该OOP允许客户和服务器分别位于不同(异构的)“平台”上。一个平台是计算机用来进行工作的特定硬件/软件/操作系统/通信协议的组合。OOP允许客户应用程序和服务器应用程序各在它们自己的平台上运行而不必顾虑客户应用程序的工作请求如可发送和被服务器应用程序接收。类似地,服务器应用程序不必顾虑OOP系统如何接收和翻译服务器应用程序的处理结果及如何将此结果送回至发出请求的客户应用程序。
美国专利5,440,744和欧洲专利刊登申请EP 0677,943 A2中解释了OOP技术如何与异构客户/服务器系统结合为整体的细节。此两份刊登物在此处引为参考资料。然而下面将给出一个基本体系例子供对本发明环境上下文理解之用。
如图1中所示,客户计算机10(例如它可为具有装于其上的IBMOS/2操作系统的个人计算机)具有一个在其操作系统上运行的应用程序40(“IBM”和“OS/2”是国际商业机器公司的注册商标)。应用程序40周期性地要求在服务器计算机20上完成工作及/或将数据自服务器20退回来以供应用程序40随后使用。例如服务器计算机20可为一个在IBM的MVS操作系统上运行的功能强的主体计算机(“MVS”也是IBM公司的注册商标)。对于本发明的目的而言,不论对由服务器执行通信服务的请求是由用户与第一应用程序40交互作用而提出的,还是应用程序40独立于用户交互作用之外运行并在程序运行中自动提出的,都不重要。
当客户计算机10希望向服务器计算机20的服务提出请求时,第一应用程序40将请求的服务通知第一逻辑装置50。作为例子,可以向第一逻辑装置发送远过程名字及一列输入和输出参数。然后第一逻辑装置50参照存放于存储设备60中的可用通信服务的定义来完成建立与第二计算机20的必要通信的工作。所有可能的服务都被定义为对象类70的内聚框架,这些类自单个对象类中派生出来。以此方式定义服务可在性能和重可用性方面具有很多优点。
为建立与服务器20的必要通信,第一逻辑装置50确定需使用框架中哪些对象类,然后在服务器处建立该对象的实例,向该对象发送一个消息以促使该对象启用它的方法中的一个。这进而通过连结装置80建立起与服务器计算机20的连接,并随后向第二逻辑装置90发送一个请求。
第二逻辑装置90然后将此请求传给在服务器计算机20上运行的第二应用程序100(此后称为服务应用程序)以使服务应用程序100能完成该请求所要求的具体任务,例如运行一个数据检索过程。一旦完成此任务,服务应用程序可能需要将结果发送回至第一计算机10。在完成所请求的任务期间和当要将结果送回至第一计算机10时,服务应用程序100与第二逻辑装置90交互作用。第二逻辑装置90建立起对象的实例并启用这些对象的合适方法,及当服务应用程序100要求时,对象实例自存放于存储设备110中的对象类内聚框架中建立起来。
使用以上技术时,客户应用程序40不向通信体系暴露。此外,服务应用程序100是通过其环境的标准进程启用的;它不知道它是被远程地启用的。
对象管理组(OMG)是一个国际组织联合会,致力于在具有如图1中所示分布式对象的异构平台上的客户/服务器计算的不同方面。OMG提出已出版的标准,客户计算机(例如10)根据此标准与服务器计算机(例如20)通信(用OOP形式)。作为这些标准的一部分,定义了对象请求代理器(称为CORBA-公共对象请求代理体系),它在客户与服务计算机之间提供面向对象的桥梁。ORB使客户和服务应用程序与面向对象的实施细节相脱离,完成第一和第二逻辑装置50和90还有连结装置80的至少一部分工作。
OMG提出与“事务”有关的标准,作为CORBA软件结构的一部分,这些标准称为OTS或对象事务服务。由计算机实施的事务处理系统在不少工业中用于重要业务工作。一个事务决定一个必须或者全部完成或者不操作而全部清涂的单个工作单元。例如在银行的自动取款机中,当用户希望提取现钞时,发放现钞的操作,将取款机中可用现钞存额减少的操作和将用户银行帐号金额减少的操作必须或者全部执行或者一个都不执行。附属操作中的一项失误时将会导致记录和实际操作间的不一致。
分布式事务处理牵涉到会影响不止一个物理或逻辑地址上的资源的一个事务。在上述例子中,一个事务影响到在本地自动取款设备中管理的资源,也影响到由银行主计算机管理的银行结算。这类事务涉及一个具体客户计算机(例如10)在由服务器处理的一系列客户请求问题上与一个具体服务器计算机(例如20)的通信。OMG的OTS负责协调这些分布式事务。
通常,在客户过程上运行的应用程序所启动的事务可能牵涉到调用众多不同服务器,每一个服务器将启动一个服务过程以便根据包含于事务中的指令改变其本地数据库。事务结束时或者执行了事务(因此所有服务器都完成了对它们本地数据库的改变)或者将事务流产(因此所有服务器都“回滚”或忽略它们本地数据库的改变)。为在事务处理期间与服务器通信(例如通知它们或者执行或者流产它们在事务中的那部分),所涉及的过程中的一个必须为事务保持状态数据。这通常涉及用于建立一系列对象的过程,其中之一是协调对象,用于针对不同服务器协调事务。
由于总是存在着出错的可能性,所以该过程必需为事务存储状态数据,以便当计算机或保持状态数据的过程出错时,此状态数据是可复原的。也即,当系统刚开始出错时,此状态数据可在计算机或保持状态数据的过程的本地外部存储器中作为记录文件存储起来。当造成出错的问题被找出并纠正后,系统被复原及状态数据被重装以使正在进行中的事务得以完成。
当客户应用程序启动事务时,有两个可能的体系供选用以选择事务状态数据的所在位置。第一体系是所谓“可复原客户”,其中状态数据就地存放于客户过程中。在此情况下,客户必须在它自身内包括足够功能以便能当作服务器使用,因为它必须能够接收对于作为事务状态数据一部分而建立的对象的远程方法调用。例如,每个与事务有关的服务器必须将它本身向客户登记。
现代趋向是取消为客户附加功能,而相反地具有“纯净”或“单薄”的不能用作服务器的客户。例如,日益广受欢迎的网络计算范例的主要动向是给予客户愈来愈少功能以便对服务器功能作主要改变而不对每个客户功能作相同改变。另外,可显著地减低客户计算机价格,因为这类计算机不需要任何存储器(所有存储器都位于远程服务器处)。因此,选择事务状态数据的所在位置的第二体系是“不可复原客户”,其中事务状态数据离开(远离)客户过程而存放着(例如存放于一个服务器中)。
这两种体系选择各有它们相对的优缺点。因此根据环境支持两个体系中任何一个体系的能力是非常有利的。然而当实施一个事务时,必须根据使用可复原客户或使用不可复原客户的不同情况以不同方式编写客户应用程序源码。如客户是可复原的,则客户应用程序源码必须包括用于在本地建立事务的码,及如客户是不可复原的,则客户应用程序必须包括用于远程地建立事务的码。
因此,原本为可复原客户平台编写的客户应用程序无法轻易地搬至不可复原客户平台上。一个源码客户应用程序只能在一种体系环境内建立和运行。
如果编写源码的人试图回避这个问题,则他/她将面临巨大负担,因为当要编写一个不依赖于体系的应用程序时,客户应用程序必须包含应用程序的两个版本(上面提到的两个体系中每个有一个版本),还有用于区别体系以便确定在给定情况下使用哪个版本的编码部分。在提供此额外软件码时,客户编程人员无法集中精力编写他/她的客户应用程序的实质部分。
发明内容
根据第一个目标,本发明提供一种编写用于在客户/服务器计算系统中的客户上执行的源码计算机程序的方法,该计算机程序包括的事务中包括用于访问服务器上资源的命令,该方法包括以下步骤:用开始命令表明事务的开始;用访问命令表明事务的中间部分;及用执行命令或回滚命令表明事务的结束;其特征在于表明事务开始的步骤是在不依赖于客户是否可复原的情况下完成的。
根据第二个目标,本发明提供一种用于处理在客户/服务器计算系统中的客户上运行的源码计算机程序的方法,该源码计算机程序包括一条事务开始命令,访问服务器上资源的命令和一条事务结束命令,其中所述事务开始命令是在不依赖于所述客户是否可复原的情况下编写的,该方法包括以下步骤:对所述事务开始命令作出如下响应:如客户是可复原的则在所述客户上就地建立事务;及如客户是不可复原的则相对于所述客户远程地建立事务。
根据第三个目标,本发明还提供一个存放于可由计算机读取的存储介质上的用于在客户/服务器计算系统中的客户上运行的源码计算机程序,该计算机程序包括其中包括用于访问服务器上资源的命令的事务,源码计算机程序包括用于完成相对于本发明第一目标方法步骤的在上面列出的功能的相应码部分。
根据第四个目标,本发明还提供一个存放于可由计算机读取的存储介质上的用于处理在客户/服务器计算系统中客户上运行的源码计算机程序的计算机程序,该源码计算机程序包括一条事务开始命令,用于访问服务器上资源的命令和一条事务结束命令,其中所述事务开始命令是在不依赖于所述客户是否可复原的情况下编写的,该计算机程序包括用于完成相对于本发明第二目标方法步骤的在上面列出的功能的相应码部分。
虽然本发明可被看作或为编写源码程序的方法或为处理此源码程序的方法,但将本发明这两个观点连系起来的统一特征是该源码不必具有有关在何处建立事处的实施细节。对于第一个观点,可不依赖于客户的可复原性而提供事务开始的标志。在第二个观点中,客户可复原性的细节(即如何和在何处建立事务状态数据)是在处理阶段期间获得的(因此这些细节不必包括在源码本身中)。因此这两个观点可由一个公共发明统一起来。
在本发明中,可以不理会客户是否可复原而编写客户应用程序。也即,可复原性的问题对客户应用程序(源码)编写人员是透明的。这就使应用程序编写人员不必再让他/她本人操心客户的可复原性,从而使他/她可以化费更多时间和精力去编写源码应用程序的实质部分。
本发明也可不要求在客户应用程序中作任何修改而使所写的源码客户应用程序用于更广阔的用途。也即,一旦写完源码应用程序后,它即可建立起来(编译和连接)并可在可复原和不可复原的客户平台两者上运行而不必修改。这样一来,原先为可复原客户编写的客户应用程序可以容易地搬用于不可复原客户,因而可以利用那些通过“单薄”客户得到的优点,网络计算目标。
附图说明
参照下述图阅读本发明优选实施例下面的描述可以更好地理解本发明。
图1是众所周知的使用对象技术的异构客户/服务器体系的框图,本发明的优选实施例可用于其上下文中;
图2是根据本发明优选实施例的流程,用于显示当在可复原客户上处理客户应用程序并开始一个事务时所采取的步骤;
图3是根据本发明优选实施例的流程,用于显示当在不可复原客户上处理客户应用程序并开始一个事务时所采取的步骤;
图4显示可以根据本发明优选实施例编写的源码客户应用程序事务的例子;
图5是一个用于显示根据本发明优选实施例编写源码客尸应用程序事务中所采取的步骤的流程;
图6是一个用于显示根据本发明优选实施例自源码客户应用程序中建立一个可执行客户应用程序时所采取的步骤的流程;以及
图7是一个用于显示根据本发明优选实施例运行可执行客户应用程序时所采取的步骤的流程。
具体实施方式
公共对象请求代理器(CORBA)对象事务服务(OTS)提供一个称为“Current”的接口对象,它具有一个由客户应用程序(源码)使用的“Begin”方法,用于向基础软件层表明事务的开始。根据本发明的优选实施例,当客户应用程序在具体客户体系上建立或运行并包含“Begin”方法时,基础软件将以恰当的方式根据客户是可复原或不可复原的情况建立事务状态对象从而恰当地建立事务。
因此,可以不考虑用于建立(编译和连接)和/或运行应用程序的客户平台是可复原或不可复原而编写客户应用程序源码。这在很大程度上简化源码应用程序编写人员的工作。可以编写源码以简便地调用“Current”对象的上“Begin”方法而由面向对象的媒件负责建立事务的细节(如客户是可复原的则以一种方式运行及如客户是不可复原的则用另一种方式)。
首先,程序员如往常一样不依赖于任何客户体系地编写客户源码,但在客户应用程序编写人员希望开始一个事务的地方,应用程序编写人员只需提供一个标志表明“Begin”方法是在“Current”对象上调用的(没有必要强调有关在建立时间或运行时间内哪一个具体体系用于建立本地的或远程的事务的任何细节)。下面将结合图4和5更详细地对此解释。
其次,一旦编写完客户应用程序源码,下一步是自源码中建立可执行应用程序。这是众所周知的涉及编译和连接阶段的两阶段过程(见图6),这些都是在具体的客户体系平台(可复原或不可复原)上完成的。当接收到指令要建立源码时,发出该指令的人员向编译程序/连接程序提供待建立源码文件名称以及在连接阶段中要用的DLL(动态连接库)文件名称。编译程序/连接程序然后进而自源码中建立可执行应用程序。
第三,一旦建立起可执行应用程序后,该可执行应用程序即可在具体客户体系平台(即可复原客户或不可复原客户)上安装并运行。下面将结合图7更详细地解释这一点。
如可执行客户应用程序在可复原客户上运行,则当到达可执行应用程序中调用DLL文件名称的那部分(例如transactions.dll)时(这意味着客户应用程序源码中已包括了对“Current”对象上“Begin”方法的调用),客户操作系统在可用于调用客户应用程序的环境的搜索路径中所说明的每个目录中寻找名为transactions.dll的文件从而找到此DLL文件。对于可复原客户环境,DLL文件transactions.dll存放于路径目录中的一个中并包括图2中所示下列功能。
在步201处,使用本地事务产生器建立事务状态数据从而在本地建立事务。在步202处,建立的事务与在其上现正运行着客户应用程序的当前线程关连起来。
在执行此DLL中的Begin方法后,该事务开始运行,及该可执行客户应用程序接着进而根据事务的实质方面访问远程资源(保持于远程服务器上)。当事务结束时,客户发出一个合适的事务执行或事务回滚命令以通知远程资源事务已结束。
如可执行客户应用程序在不可复原客户上运行,则当到达可执行应用程序中调用DLL文件名称(transactions.dll)的那部分时(这意味着客户应用程序源码已包括对“Current”对象上“Begin”方法的调用),客户操作系统在可用于调用客户应用程序的环境的搜索路径中所说明的每个目录中寻找名为transactions.dll的文件从而找到此DLL文件。对于不可复原客户环境,DLL文件transactions.dll存放于路径目录中的一个中并包括图3中所示下列功能。
在步301处,使用合适的命名服务找到一个远程事务产生器及使用远程事务产生器建立事务状态数据从而远程地建立事务。在步302处,建立的事务与在其上现正运行着客户应用程序的当前线程关连起来。
在执行此DLL中的Begin方法后,该事务开始运行,及该可执行客户应用程序接着进而根据事务的实质方面访问远程资源(保持于远程服务器上)。当事务结束时,客户发出一个合适的事务执行或事务回滚命令以通知远程资源事务已结束。
图4中显示一个可根据本发明编写的简化源码客户应用程序事务的例子。事务开始时发出一个对“Current”对象的通用“Begin”调用(401)。事务的中间部分是对服务器的实际访问调用(402)。事务结束时通知服务器执行它们曾通过访问命令对它们的资源所作修改(步403)。
以此方式,如图5中所示,可以编写客户应用程序源码而不必考虑到它事实上将在可复原或在不可复原客户上运行。在步501处,客户应用程序源码编写人员编写一个“Begin”命令以表明将开始一个事务并需要建立事务状态数据。只需简单地使用“Begin”命令而不用其它指令以建立该事务,应用程序编写人员即可表明事务的开始而不依赖于事实上将运行应用程序的客户的可复原性。应用程序编写人员只需编写一个调用“Current”对象上的“Begin”方法的命令而不需要包括有关如何或在何处建立事务的任何细节。如以上所解释的,基础客户软件在运行过程中将对此负责。
应用程序编写人员然后编写服务器访问命令(图4的读和写命令402)。最后编写事务结束命令(403)(步503)。
图6中列出了自源码版本中建立可执行客户应用程序时所采用的步骤。第一,编译源码(步601)。第二,如上面所解释的,对编译结果完成连接阶段。此连接操作包括上面解释的对文件名称的标识。所得结果是接着可在容户平台上运行的可执行客户应用程序。如上面所解释的,此可执行客户应用程序可在可复原或不可复原客户上运行而不必改变码,这在图7中得到阐释。
图7是显示在具体客户平台上执行所建立的应用程序时所采取步骤的流程图。第一,开始执行所建立的程序(步701)及当调用DLL文件名称时,在搜索路径中所说明的目录中找到文件并运行它(如上面所解释的)(步702)。在第一个实施例中,如执行应用程序的客户在可复原平台上运行,则客户的目录中有一个能在本地建立事务的DLL。在此同一个第一实施例中,如执行应用程序的客户在不可复原平台上运行,则客户的目录中有一个能远程地建立事务的DLL。然后客户执行完应用程序的所有剩余部分(步703)。
通过对于两个平台上的相应DLL都使用同一文件名称,图6中的建立过程可不依赖于将运行所建立程序的客户平台而独立地完成。也即,不论运行此程序的客户平台是可复原或不可复原,在连接过程中都可提供同一文件名称。由于用于运行可执行应用程序的客户平台上只存放着一个具有共同文件名称的文件,所以在执行过程中能够访问正确的DLL文件(步702)。
本发明的第二实施例(在图7的流程反映出来)与第一实施例不同之处如下。在第一实施例中,一个DLL文件(提供图2中所示功能者)存放于运行可执行程序的可复原客户的目录中及一个不同的DLL文件(提供图3中所示功能者)存放于运行可执行程序的不可复原客户的目录中。在第二实施例中,同一个DLL文件同时存放于运行可执行程序的可复原和不可复原客户两者之中并包括图2和图3两者的功能。DLL文件还包括下列功能:确定运行应用程序的客户是可复原的或不可复原的(例如使用一个环境变量),然后相应地执行图2或图3的功能。
在第三实施例中,在连接阶段中(图6的602)实现选择图2的步骤或图3的步骤的功能。在连接过程中,根据运行应用程序的客户是可复原或不可复原这一事实表明一个合适的文件名称。因此当运行应用程序时,在图7的步702处访问一个合适的DLL文件。在此第三实施例中,两个DLL文件必须具有单一的文件名称以使它们能在连接和执行过程中被正确地标识。
Claims (4)
1.一种处理在客户/服务器计算系统中的客户上运行的源码计算机程序的方法,该源码计算机程序包括一条事务开始命令,访问服务器上资源的命令和一条事务结束命令,其中事务开始命令是在不依赖于所述客户是否可复原的情况下编写的,该方法包括对所述事务开始命令作出响应的下列步骤:
如所述客户是可复原的则在所述客户上就地建立事务;以及
如所述客户是不可复原的则相对于所述客户远程地建立事务。
2.权利要求1的方法,其特征在于根据连接过程中标明的相应文件来选择两个建立步骤中的一个。
3.权利要求1的方法,其特征在于根据对连接过程中标明的两个建立步骤都是公共的文件来选择两个建立步骤中的一个。
4.权利要求2的方法,其特征在于每个相应的文件都具有相同文件名称。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US854715 | 1997-05-12 | ||
US08/854,715 US5925095A (en) | 1997-05-12 | 1997-05-12 | Method and a computer program product for client/server computing with support for both recoverable and non-recoverable clients |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1201187A CN1201187A (zh) | 1998-12-09 |
CN1096638C true CN1096638C (zh) | 2002-12-18 |
Family
ID=25319381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98106480A Expired - Lifetime CN1096638C (zh) | 1997-05-12 | 1998-04-10 | 用于客户/服务器计算的方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5925095A (zh) |
JP (1) | JP3007874B2 (zh) |
KR (1) | KR100297633B1 (zh) |
CN (1) | CN1096638C (zh) |
GB (1) | GB2325315B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2333379A (en) * | 1998-01-16 | 1999-07-21 | Ibm | Client/server computing |
GB2334353B (en) * | 1998-02-12 | 2002-08-07 | Ibm | An apparatus,method and computer program product for client/server computing with the ability to select which servers are capable of creating transaction stat |
GB2335518A (en) * | 1998-03-18 | 1999-09-22 | Ibm | Triggering event causes creation of Coordinator transaction state object |
GB0009939D0 (en) * | 2000-04-20 | 2000-06-07 | Sgs Thomson Microelectronics | Input/output in embedded systems |
GB0009945D0 (en) * | 2000-04-20 | 2000-06-07 | Sgs Thomson Microelectronics | Debugging device nad method |
GB0009941D0 (en) * | 2000-04-20 | 2000-06-07 | Sgs Thomson Microelectronics | Computer system |
US6691070B1 (en) | 2000-11-03 | 2004-02-10 | Mack Information Systems | System and method for monitoring a controlled environment |
US20030182460A1 (en) * | 2002-03-25 | 2003-09-25 | Atul Khare | Managed code modules dynamically invoking unmanaged code modules at arbitrary locations |
CN100450256C (zh) * | 2002-10-28 | 2009-01-07 | 中兴通讯股份有限公司 | 移动通信网络规划中小区覆盖文件的分布式处理方法 |
US7519951B2 (en) * | 2003-09-30 | 2009-04-14 | International Business Machines Corporation | Multi-attribute dynamic link library packaging |
US7716360B2 (en) * | 2005-09-21 | 2010-05-11 | Sap Ag | Transport binding for a web services message processing runtime framework |
US7716279B2 (en) * | 2005-09-21 | 2010-05-11 | Sap Ag | WS addressing protocol for web services message processing runtime framework |
US7606921B2 (en) * | 2005-09-21 | 2009-10-20 | Sap Ag | Protocol lifecycle |
US8055725B2 (en) * | 2006-01-12 | 2011-11-08 | International Business Machines Corporation | Method, apparatus and program product for remotely restoring a non-responsive computing system |
CN101197698B (zh) * | 2006-12-06 | 2012-02-29 | 中兴通讯股份有限公司 | 一种简单网络管理协议管理应用层事务回滚方法 |
US9625498B2 (en) | 2010-09-17 | 2017-04-18 | Hittite Microwave Llc | RMS and envelope detector |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868744A (en) * | 1986-03-03 | 1989-09-19 | International Business Machines Corporation | Method for restarting a long-running, fault-tolerant operation in a transaction-oriented data base system without burdening the system log |
US4878167A (en) * | 1986-06-30 | 1989-10-31 | International Business Machines Corporation | Method for managing reuse of hard log space by mapping log data during state changes and discarding the log data |
EP0677943A2 (en) * | 1994-04-05 | 1995-10-18 | International Business Machines Corporation | A communications system for exchanging data between computers in a network |
EP0747812A2 (en) * | 1995-06-07 | 1996-12-11 | Tandem Computers Incorporated | Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment |
US5586312A (en) * | 1994-10-11 | 1996-12-17 | Unisys Corporation | Method and apparatus for using an independent transaction processing application as a service routine |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU628753B2 (en) * | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
-
1997
- 1997-05-12 US US08/854,715 patent/US5925095A/en not_active Expired - Lifetime
-
1998
- 1998-02-26 GB GB9803933A patent/GB2325315B/en not_active Expired - Lifetime
- 1998-04-10 CN CN98106480A patent/CN1096638C/zh not_active Expired - Lifetime
- 1998-04-20 KR KR1019980014075A patent/KR100297633B1/ko not_active IP Right Cessation
- 1998-04-27 JP JP10117369A patent/JP3007874B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868744A (en) * | 1986-03-03 | 1989-09-19 | International Business Machines Corporation | Method for restarting a long-running, fault-tolerant operation in a transaction-oriented data base system without burdening the system log |
US4878167A (en) * | 1986-06-30 | 1989-10-31 | International Business Machines Corporation | Method for managing reuse of hard log space by mapping log data during state changes and discarding the log data |
EP0677943A2 (en) * | 1994-04-05 | 1995-10-18 | International Business Machines Corporation | A communications system for exchanging data between computers in a network |
US5586312A (en) * | 1994-10-11 | 1996-12-17 | Unisys Corporation | Method and apparatus for using an independent transaction processing application as a service routine |
EP0747812A2 (en) * | 1995-06-07 | 1996-12-11 | Tandem Computers Incorporated | Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment |
Also Published As
Publication number | Publication date |
---|---|
JP3007874B2 (ja) | 2000-02-07 |
JPH1125061A (ja) | 1999-01-29 |
KR19980086623A (ko) | 1998-12-05 |
GB9803933D0 (en) | 1998-04-22 |
GB2325315B (en) | 2001-12-19 |
GB2325315A (en) | 1998-11-18 |
KR100297633B1 (ko) | 2001-10-25 |
US5925095A (en) | 1999-07-20 |
CN1201187A (zh) | 1998-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1096638C (zh) | 用于客户/服务器计算的方法 | |
CN100418057C (zh) | 用于应用程序分布式管理的启用网格的虚拟机的方法和系统 | |
AU2002318249B2 (en) | System and method for transaction processing with transaction property feature | |
JP4550411B2 (ja) | 同期されたコールバック処理特徴をもったトランザクション処理システム及び方法 | |
US7441025B2 (en) | System and method for transaction processing with delegated commit feature | |
CN1207669C (zh) | 将应用程序数据分配至不相似格式分布式数据库的方法 | |
US5920863A (en) | System and method for supporting transactions for a thin client lacking a persistent store in a distributed object-oriented environment | |
US5969967A (en) | Methods and apparatus for conspiracy between objects | |
Brodie | The promise of distributed computing and the challenges of legacy information systems | |
US7086065B1 (en) | Functional enterprise bean | |
CN1906580B (zh) | 对于具有可移动对象的启用网格的虚拟机的方法和系统 | |
JP4464525B2 (ja) | 作業負荷によって管理されるクライアント/サーバ・データ処理システムにおける集中アフィニティ維持装置および方法 | |
CN1989489B (zh) | 数据处理方法和装置 | |
US20040015898A1 (en) | Interface definition language compiler | |
Alonso et al. | Workflow management: the next generation of distributed processing tools | |
AU2002318249A1 (en) | System and method for transaction processing with transaction property feature | |
US20020174162A1 (en) | Method and system for reducing synchronization waits when allocating sequenced identifiers in a multi-threaded server | |
WO2001090886A2 (en) | Local transaction management | |
GB2308468A (en) | Data processing systems and methods providing interoperability between data processing resources | |
CN1969280A (zh) | 使用命令行环境的远程系统管理 | |
CN1290362A (zh) | 用于客户/服务器计算的设备、方法和计算机程序产品 | |
CN1160619C (zh) | 用于客户机/服务器计算的装置和方法 | |
US7668093B1 (en) | Architecture for balancing workload | |
CN1143207C (zh) | 执行事务处理的客户机/服务器处理装置和方法 | |
US7503050B2 (en) | Transaction polymorphism |
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 | ||
CX01 | Expiry of patent term |
Granted publication date: 20021218 |