CN106663033B - 在事务中间件机器环境支持绕域和代理模型并更新服务信息以跨域消息传送的系统和方法 - Google Patents
在事务中间件机器环境支持绕域和代理模型并更新服务信息以跨域消息传送的系统和方法 Download PDFInfo
- Publication number
- CN106663033B CN106663033B CN201580022576.0A CN201580022576A CN106663033B CN 106663033 B CN106663033 B CN 106663033B CN 201580022576 A CN201580022576 A CN 201580022576A CN 106663033 B CN106663033 B CN 106663033B
- Authority
- CN
- China
- Prior art keywords
- domain
- transaction
- remote
- transaction domain
- service
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000015654 memory Effects 0.000 claims description 24
- 230000008676 import Effects 0.000 abstract description 15
- 241000677635 Tuxedo Species 0.000 description 31
- 238000010586 diagram Methods 0.000 description 24
- 230000004044 response Effects 0.000 description 18
- 238000004804 winding Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000001419 dependent effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
Images
Classifications
-
- 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/546—Message passing systems or structures, e.g. queues
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- 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/167—Interprocessor communication using a common memory, e.g. mailbox
-
- 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
-
- 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
- G06F9/467—Transactional memory
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- 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
-
- 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
-
- 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
-
- 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/567—Integrating service provisioning from a plurality of service providers
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5015—Service provider selection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
一种系统和方法可以在事务中间件环境中支持跨域消息传送。事务域可以导入来自远程事务域的一个或多个服务,其中所述一个或多个服务在与该事务域相关联的服务表中注册。此外,事务域中的客户机可以从服务表发现提供所述一个或多个服务的远程事务域中的远程服务器,并且直接向远程服务器发送调用所述一个或多个服务的消息从而绕过事务域和远程事务域二者中的一个或多个域网关服务器。
Description
版权声明
本专利文档的公开的一部分包含受版权保护的材料。版权所有者不反对任何人对专利文档或专利公开的传真复制,因为它出现在专利商标局专利文件或记录中,但在别的方面保留所有任何版权权利。
技术领域
本发明一般涉及计算机系统和诸如中间件之类的软件,并且特别涉及事务中间件机器环境。
背景技术
事务中间件系统或面向事务的中间件包括可以处理组织内的各种事务的企业应用服务器。随着诸如高性能网络和多处理器计算机之类的新技术的发展,存在进一步改善事务中间件的性能的需要。这些是本发明的实施例旨在解决的公认领域。
发明内容
本文描述的是在事务中间件机器环境中可以支持跨域消息传送的系统和方法。事务域可以导入来自远程事务域的一个或多个服务,其中所述一个或多个服务在与该事务域相关联的服务表中注册。此外,事务域中的客户机可以从服务表发现提供所述一个或多个服务的远程事务域中的远程服务器,并且直接向该远程服务器发送消息以调用所述一个或多个服务,从而绕过事务域和远程事务域二者中的一个或多个域网关服务器。
本文描述的是在事务中间件机器环境中可以支持跨域消息传送的系统和方法。事务域中的网关服务器操作以向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知。此外,网关服务器可以接收来自远程事务域的对于所述一个或多个服务的查询,并且向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
本文描述的是在事务中间件机器环境中可以支持跨域消息传送的系统和方法。通过使用代理(proxy)模型,第一事务域可以向第二事务域导出一个或多个服务,其中所述一个或多个服务从第三事务域导入。此外,事务域中的第一网关服务器可以接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求,并且可以将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
附图说明
图1示出了根据本发明的实施例的在事务中间件机器环境中经由域网关支持跨域消息传送的图示。
图2示出了根据本发明的实施例的在事务中间件机器环境中利用绕过域网关来支持跨域消息传送的图示。
图3示出了根据本发明的实施例的在事务中间件机器环境中支持跨域消息传送的图示。
图4示出了根据本发明的实施例的用于在事务中间件机器环境中支持跨域消息传送的示例性流程图。
图5示出了根据本发明的实施例的在事务中间件机器环境中支持绕域组(bypass-domain group)的图示。
图6示出了根据本发明的实施例的在事务中间件机器环境中共享和更新支持跨域消息传送的服务信息的图示。
图7示出了根据本发明的实施例的用于在事务中间件机器环境中共享和更新支持跨域消息传送的服务信息的示例性流程图。
图8示出了根据本发明的实施例的在事务中间件机器环境中提供代理模型的图示。
图9示出了根据本发明的实施例的在事务中间件机器环境中使用代理模型来支持跨域消息传送的图示。
图10示出了根据本发明的实施例的用于在事务中间件机器环境中使用代理模型来支持跨域消息传送的示例性流程图。
图11示出了根据本发明的实施例的在事务中间件机器环境中的事务域中的客户机的示例性框图。
图12示出了根据本发明的实施例的在事务中间件机器环境中的事务域中的网关服务器的示例性框图。
图13示出了根据本发明的实施例的在事务中间件机器环境中的第一事务域中的第一网关服务器的示例性框图。
图14示出了根据本发明的实施例的在事务中间件机器环境中的第一事务域中的第二网关服务器的示例性框图。
具体实施方式
在附图的图中通过示例的方式而不是通过限制的方式示出本发明,在附图中相似的附图标记指示相似的元件。应当注意的是本公开中对“一”或“一个”或“某个”实施例(多个实施例)的指代不必然地指代同一实施例,并且这样的指代意味着至少一个。
如下的本发明的描述使用Tuxedo环境作为事务中间件机器环境的示例。对本领域技术人员来说明显其他类型的事务中间件机器环境可以被使用而没有限制。
本文描述的是可以支持事务中间件机器环境的系统和方法。
事务中间件机器环境
根据本发明的实施例,系统包括高性能硬件(例如,64位处理器技术、高性能大容量存储器以及冗余InfiniBand(无限带宽)和以太网联网)与诸如WebLogic套件(WebLogicSuite)之类的应用服务器或中间件环境的组合,以提供完整的Java EE应用服务器联合体(complex),该Java EE应用服务器联合体包括可以被快速提供、并且可以按需缩放的大规模并行存储器内网格(in-memory grid)。根据实施例,系统可以被部署为完全的、一半或四分之一机架、或其他配置,这些配置提供应用服务器网格、存储区域网络和InfiniBand(IB)网络。中间件机器软件可以提供应用服务器、中间件和诸如例如WebLogic Server(服务器)、JRockit或Hotspot JVM、Oracle Linux或Solaris和Oracle VM之类的其他功能。根据实施例,系统可以包括经由IB网络彼此通信的多个计算节点、IB交换机网关和存储节点或单元。当被实现为机架配置时,机架的不使用的部分可以保持为空或被填充物占据。
根据本发明的实施例,系统提供了用于托管诸如Oracle Middleware SW套件或Weblogic之类的中间件或应用服务器软件的容易部署的解决方案。如本文所描述的,根据实施例,系统是“盒中网格(grid in a box)”,其包括一个或多个服务器、存储单元、用于存储联网的IB结构、以及托管中间件应用所需的所有其他组件。可以通过使用例如RealApplication Clusters(真正应用集群)和Exalogic Open存储器来利用(leverage)大规模并行网格架构而为所有类型的中间件应用实现显著的性能。系统利用线性I/O可伸缩性递送改善的性能、使用和管理起来简单、并且实现对任务关键的可用性和可靠性。
根据本发明的实施例,诸如Oracle Tuxedo系统之类的事务中间件系统可以利用诸如Oracle Exalogic中间件机器之类的具有多个处理器的快速机器以及诸如IB网络之类的高性能网络连接。附加地,Oracle Tuxedo系统可以利用集群数据库,诸如Oracle RealApplication Clusters(RAC,真正应用集群)企业数据库,Oracle RAC企业数据库是具有共享高速缓存架构的集群数据库并且可以是云架构的组件。Oracle RAC可以克服传统的无共享和共享盘方法的限制来为商业应用提供高度可伸缩的并且高度可用的数据库解决方案。
根据本发明的实施例,Oracle Tuxedo系统提供一组软件模块,这组软件模块实现高性能、分布式的商业应用的构建、执行和管理并且它们已经被若干多层应用开发工具用作事务中间件。Tuxedo是可以被用于管理分布式计算环境中的分布式事务处理的中间件平台。它是用于解锁企业传统应用并且将它们扩展为面向服务的架构同时实现无限制的可伸缩性以及基于标准的互操作性的已证实的平台。
跨域消息传送
根据本发明的实施例,事务中间件机器环境可以基于域网关服务器支持跨域消息传送。
域网关服务器可以负责将本地域连接到远程域、向本地域通告导入的服务、充当用于在两个域之间传送请求/响应的代理以及充当用于事务的从属者(subordinator)。例如,驻留在Tuxedo中的域网关服务器上的GWTDOMAIN过程可以与远程域中的其他GWTDOMAIN过程通信并且支持域间通信。
图1示出了根据本发明的实施例的在事务中间件机器环境中经由域网关支持跨域消息传送的图示。如图1所示,事务中间件机器环境100(例如,Tuxedo系统)可以包括多个域,诸如具有域网关A 103的事务域A 101以及具有域网关B 104的事务域B 102。
此外,事务中间件机器环境100中的事务域A-B 101-102可以在服务表107-108中(例如,在共享存储器105-106中)存储服务相关信息。例如,Tuxedo系统可以利用公告板(BB),该公告板使用共享存储器以用于包含与不同应用中的各个过程相关联的信息,诸如UBBCONFIG文件中定义的信息以及其他统计信息和位置信息。
如图1所示,事务域A 101中的客户机111可以检查共享存储器105中的服务表107以获得服务器122的地址,服务器122在事务域B 102中托管目标服务(例如,SVC 123)。然后,客户机111可以向域网关A 103发送消息,域网关A 103例如经由基于以太网上传输控制协议(TCP)协议110的网络连接将消息转发到远程事务域B 102中的域网关B 104。
此外,域网关B 104可以向事务域B 102中的目标服务器122发送接收到的消息。对应地,托管目标服务(即,SVC 123)的目标服务器122可以经由同一路径向客户机111发送答复。
附加地,事务域B 102中的客户机121可以为了获得服务器112的地址而检查共享存储器106中的服务表108,服务器112在事务域A 101中托管目标服务(例如,SVC 113)。然后,客户机121可以经由域网关A 103和域网关B 104调用目标服务。
根据本发明的实施例,消息传送系统可能需要在诸如域网关A 103和域网关B 104之类的域网关服务器处执行不同的打包(packing)和解包(unpacking)操作,以用于例如经由事务中间件机器环境100中的各种过程间通信(IPC)队列或远程直接存储器存取(RDMA)队列来跨域传输消息。
例如,在Tuxedo中,在客户机111从公告板(BB)得到远程域中的目标服务器122的地址之后,客户机111可以经由IPC队列向本地GWTDOMAIN过程发送消息。
然后,GWTDOMAIN过程可以对IPC消息进行解包并且确定该消息应当被路由到哪个远程网关(即,远程域中的另一个GWTDOMAIN过程)。此外,GWTDOMAIN过程可以将该消息打包为网络消息并且向远程GWTDOMAIN服务器发送网络消息。
在接收到网络消息之后,GWTDOMAIN过程可以在将消息打包成IPC消息并且通过本地IPC队列向服务器发送消息之前对网络消息进行解包。最后,服务器122可以从本地IPC队列检索消息。
因此,由于打包操作和解包操作可以对消息传送系统的性能带来负面影响,因此诸如域网关A 103和域网关B 104之类的域网关服务器可能成为高并发场景中的瓶颈。
绕域模型
根据本发明的实施例,事务中间件机器环境可以基于绕域模型(也称作绕过域的模型)支持跨域消息传送。
通过使用绕域模型,当导入的服务被调用时,系统可以利用具有高性能和低延迟的网络协议以直接向远程域传递消息,而不是跨网关域服务器传送消息。
例如,在Tuxedo中,系统可以通过利用IB网络以传送消息来跳过GWTDOMAIN过程。IB网络可以支持允许本地客户机直接向远程节点中的存储器写数据的远程数据访问。
图2示出了根据本发明的实施例的在事务中间件机器环境中利用绕过域网关来支持跨域消息传送的图示。如图2所示,事务中间件机器环境200(例如,Tuxedo环境)可以包括多个域,诸如具有域网关A 203的事务域A 201以及具有域网关B 204的事务域B 202。
根据本发明的实施例,事务域A 201和事务域B 202可以使用全局资源230以交换各种信息(例如,在系统的启动期间)。例如,Tuxedo系统可以或者实现不同的域网关服务器可以通过其交换信息的服务器或者使用网络文件系统(NFS)文件来共享信息。因此,Tuxedo域可以经由全局资源230从间接连接的域获得各种机器和事务信息,诸如机器识别符(MID)、组号(GRPID)和事务管理服务器(TMS)服务信息。
此外,事务中间件机器环境200中的事务域A-B 201-202可以例如在共享存储器205-206中存储各种机器和服务相关信息。例如,Tuxedo系统可以利用公告板(BB),公告板可以包括为本地域和远程域二者存储各种机器和服务相关信息的各种表。这些表可以包括节点表、过程(PE)表、服务器组表、服务表、路由表以及路由数据表(在这些表中节点表和过程(PE)表可以被划分成多个部分,即其中一个部分用于单个域)。
通过使用绕域模型,网关域A-B 203-204可以在本地共享存储器205-206(例如,Tuxedo BB)中的服务表207-208中注册导入的服务相关信息。
因此,客户机211或222可以从本地服务表207-208获得用于远程服务223或213的地址,远程服务223或213由本地域网关203-204导入。然后,客户机211或222可以发送调用远程服务的请求。这里,远程服务的调用可以基于IB上RDMA网络220,而不是以太网上TCP网络210。
例如,客户机211可以在本地共享存储器205中的服务表207中发现对于目标服务(例如,SVC 223)的提供者,并且例如经由RDMA队列直接向远程服务器221发送消息。同样,客户机222可以在本地共享存储器206中的服务表208中发现对于目标服务(例如,SVC 213)的提供者,并且例如经由RDMA队列直接向远程服务器212发送消息。
图3示出了根据本发明的实施例的在事务中间件机器环境中支持跨域消息传送的图示。如图3所示,事务中间件机器环境300(例如,Tuxedo环境)可以包括多个域,诸如事务域A-B 301-302。
如图3所示,作为事务域A 301中的域网关服务器的GWTDOMAIN A 303可以将来自本地公告板(BB)A 305的服务和事务信息写入到NFS共享文件307中;而作为事务域B 302中的域网关服务器的GWTDOMAIN B 304可以将来自本地BB B 306的服务和事务信息写入到NFS共享文件308中。NFS共享文件307和NFS共享文件308二者可以由事务域A 301和事务域B302共享。
此外,服务和事务信息可以与不同的服务313-314和/或事务管理服务器(TMS)315-316相关。在Tuxedo中,这样的信息可以包括机器、组、TMS信息。
例如,为了导入来自远程事务域B 304的服务314,GWTDOMAIN A 303可以在系统启动期间和/或在连接的建立之后读取来自事务域B 304中的NFS文件308的信息。此外,事务域A 301可以在本地公告板(BB)A 305中注册服务314(例如,事务域B 302中的RDMAQ地址)。
然后,事务域A 301中的客户机311可以查找本地公告板(BB)A 305以发现(事务域B 102中的)提供目标服务314的远程服务器。在获得事务域B 302中的远程服务器的地址信息后,客户机311可以通过例如经由(绕过网关服务器A-B 303-304的)基于InfiniBand(IB)上远程直接存储器存取(RDMA)320网络的网络连接直接向远程服务器发送消息来调用目标服务314。
类似地,客户机312可以通过绕过网关服务器A-B 303-304直接向远程服务器发送消息来调用目标服务313。另外,客户机311或312在充当事务的提交者和/或协调者时能够获得本地TMS和远程TMS 315-316二者。
附加地,客户机311或312可以经由以太网上TCP网络310使用域网关A-B 303-304向远程服务器发送消息。
因此,系统可以通过利用绕域模型显著地改善消息传送系统的跨域消息传送性能。另外,事务可以在没有从属的情况下跨域传播。
图4示出了根据本发明的实施例的用于在事务中间件机器环境中支持跨域消息传送的示例性流程图。如图4所示,在步骤401处,事务域可以导入来自远程事务域的一个或多个服务,其中所述一个或多个服务在与该事务域相关联的服务表中注册。然后,在步骤402处,事务域中的客户机可以从服务表发现提供所述一个或多个服务的远程事务域中的远程服务器。此外,在步骤403处,客户机可以直接向远程服务器发送消息以调用所述一个或多个服务。
绕域组
根据本发明的实施例,绕域组可以包括基于绕域模型直接地或间接地彼此互联的一组域。
图5示出了根据本发明的实施例的在事务中间件机器环境中支持绕域组的图示。如图5所示,事务中间件机器环境500(例如,Tuxedo系统)可以包括绕域组520,绕域组520包括多个域,诸如具有域网关A-C 521-523的事务域A-C 501-503。
此外,不同的事务域A-C 501-503可以共享绕域组520内的全局资源510中的信息。例如,Tuxedo系统可以使用网络文件系统(NFS)以共享存储在本地公告板(BB)531-533中的机器识别符(MID)、组号(GRPID)、事务管理服务器(TMS)和路由(DDR)信息。在Tuxedo中,每个事务域可以利用网络文件系统(NFS)文件,在NFS文件中提供了全局资源510。附加地,NFS文件可以由绕域组520中的不同的域访问。
根据本发明的实施例,绕域组520中的每个域可以与域识别符(ID)相关联。例如,事务域A 501可以与域ID 511相关联,事务域B 502可以与域ID 512相关联,事务域C 503可以与域ID 513相关联。
此外,绕域组520中的每个域可以利用每个单个域内唯一的一组识别符(诸如MID和GRPID)。然而,在服务542-543(作为服务信息的部分)被跨域导入之后,这些识别符可能不能维持其唯一性。
根据本发明的实施例,每个域ID可以包括域序列号(诸如Tuxedo中的DMSQNM,DMSQNM是识别域组520内的特定域的唯一的号码)(或者由域序列号表示)。
例如,通过使用域序列号,Tuxedo可以使用DMSQNM作为MID的一部分并且将GRPID与DMSQNM组合来重新构建MID。因此,Tuxedo系统可以在跨域消息传送中保持识别符(例如,MID和GRPID)的唯一性。
根据本发明的实施例,系统可以传播唯一域序列号的列表以支持事务。
在Tuxedo中,系统可以传播与GRPID一起的DMSQNM的列表,并且将DMSQNM添加到全局事务表条目(GTTE)。然后,提交者(或TMS_MANAGE)可以使用组合的DMSQNM和GRPID来确定适当的TMS(即,识别事务中包括的TMS)。
因此,当客户机541直接调用远程服务542时,事务的提交者可以了解跨事务域A-C501-503的所有TMS服务。
另外,GWTDOMAIN过程可以不需要作为事务管理服务器(TMS)参与事务。另外,GWTDOMAIN过程可以不需要知道由客户机541调用的远程服务542是否将调用其他远程服务(例如,服务543)。
更新服务信息
图6示出了根据本发明的实施例的在事务中间件机器环境中共享和更新支持跨域消息传送的服务信息的图示。如图6所示,事务中间件机器环境600(例如,Tuxedo系统)可以包括多个域,诸如事务域A 610和事务域B 620。
此外,作为事务域B 620中的域网关服务器的GWTDOMAIN B 623可以将来自本地BBB 622的机器和事务相关信息导出到共享NFS文件630。然后,作为事务域A 610中的域网关服务器的GWTDOMAIN A 613可以将来自共享NFS文件630的机器和事务相关信息导入到本地BB A 612。
例如,Tuxedo可以实现两种操作,GWEV_RDMA_EXPORTLBB和GWEV_RDMA_IMPORTRBB,这两种操作可以在每个嘀嗒(tick-tock)处被调度以用于分别执行导出和导入操作。
GWTDOMAIN B 623可以使用GWEV_RDMA_EXPOETLBB操作来导出本地MID、GRPID和TMS信息,这些信息可以由其他域节点使用以用于执行应用到事务监控器接口(ATMI)调用。GWEV_RDMA_EXPOETLBB操作可以将与本地BB B 622相关联的版本与最新写入的BB版本进行比较,并且可以将资源、机器、组和TMS服务信息写到共享文件630。
GWTDOMAIN A 613可以使用GWEV_RDMA_IMPORTRBB操作以基于预定义的NFS文件导入来自域组中的每个域(即,对于从0到MAXDOMAIN的序列号)的MID、GRPID和TMS信息。GWEV_RDMA_IMPORTRBB操作还可以导入来自共享NFS文件的信息,该共享NFS文件的域间接连接到该域。GWEV_RDMA_IMPORTRBB操作可以将与本地BB A 612相关联的版本与最新写入的BB版本进行比较,并且可以从共享文件630读取资源、机器、组和TMS服务信息。
如图6所示,系统可以基于不同的域网关服务器(诸如GWTDOMAIN A 613和GWTDOMAIN B 623)来处理远程服务621的改变。
在步骤601处,系统可以在服务621改变后更新BB B 622。
在步骤602处,GWTDOMAIN B 623可以检查与BB B 622相关联的版本。例如,Tuxedo可以基于调度的嘀嗒周期地调用gw_rdma_check_BB_change()函数调用。该函数可以遍历域组中的每个域(即,0到MAXDOMAIN)并且比较与共享文件630相关联的版本。
在步骤603处,如果在BB B 622中任何服务已经改变,则GWTDOMAIN B 623可以例如通过向每个连接的网关发送GWEV_NW_BBCHG_NOTIFY消息来通知所有连接的域。
在步骤604处,当域A 610中的域网关服务器(例如,GWTDOMAIN A 613)接收到来自远程域B 620的通知消息时,域网关服务器可以例如通过将GWEV_NW_BBCHG_NOTIFY消息中的BB版本与本地BB A 612的版本进行比较来确定要从远程域B 620导入的服务的列表。
在步骤605处,GWTDOMAIN A 613可以针对要从远程域B 620导入的服务向GWTDOMAIN B 623发送查询消息(例如,GWEV_NW_INQRDOMDATA消息)。
在步骤606处,当GWTDOMAIN B 623接收到GWEV_NW_INQRDOMDATA消息时,GWTDOMAIN B 623可以从数据包检索服务名称并且为了各种机器和服务信息(诸如RDMAQ地址)而搜索本地BB B 622。
在步骤607处,GWTDOMAIN B 623可以将响应(例如,GWEV_NW_INQRDOMDATA_RPLY消息)发送回GWTDOMAIN A 613,并且等待下一个调度的时间。
在步骤608处,域A 610中的客户机611可以检查本地BB A 612并且获得用于目标服务621的RDMAQ地址。
在步骤609处,客户机611可以直接调用远程域中的目标服务621。
根据本发明的实施例,系统可以使用不同的策略以在导入(或导出)目标服务时获得(或提供)用于与目标服务相关联的消息队列的RDMA地址。
系统可以支持跨域数据依赖路由(DDR)。通过使用绕域模型,由于域网关服务器可以实现如配置文件中定义的DDR设置,因此客户机可以根据本地DDR选择(直接或间接连接的)适当的远程服务。例如,域网关服务器可以将来自配置文件(例如,Tuxedo dmconfig文件)的DDR设置转换为本地BB,本地BB维护用于本地DDR设置的信息。因此,远程服务调用(例如,Tuxedo tpcall)可以使用本地BB来以类似于本地调用的方式选择远程服务。
另外,系统可以交换访问控制(ACL)信息。例如,当域网关服务器例如通过暴露导入服务的远程域的RDMAQ地址来导出服务时,域网关服务器可以根据配置设置生成密钥并且将密钥提供给远程域。然后,远程域中的客户机可以使用接收到的密钥例如通过进行tpcall来调用远程服务。
此外,系统可以支持服务故障转移(fail-over)。域网关服务器可以通过检查故障转移信息(诸如故障转移号)将服务请求路由到远程域,由于远程服务RDMAQ地址被导入到本地BB因此该故障转移信息可能是不可用的。
例如,当域网关服务器导入远程服务时,域网关服务器检查故障转移号以寻找导入的服务。如果有相同的(或相似的)服务存在,则系统可以将导入的服务当作故障转移服务,在这种情况中域网关服务器可以将导入的服务的状态改变为“暂停(suspended)”并且设置适当的负载。
另外,当域网关服务器删除远程服务时,域网关服务器检查远程域是否为在故障转移链路(的顶部)中要删除的服务的提供者,并且恢复具有最小故障转移号的剩余服务。
此外,系统可以删除来自远程域的导入的服务。例如,当GWTDOMAIN A 613关闭时,它可以删除来自本地BB A的导入的服务。
附加地,当到远程域的连接断开时(由于网络问题或者因为远程域网关被关闭),系统可以删除与该远程域相关的所有服务。此外,系统可以检查远程域是否为故障转移链路(的顶部)中的某些服务的提供者,并且恢复具有最小故障转移号的剩余服务。
图7示出了根据本发明的实施例的用于在事务中间件机器环境中共享和更新支持跨域消息传送的服务信息的示例性流程图。如图7所示,在步骤701处,事务域中的网关服务器可以向一个或多个远程事务域中的一个或多个网关服务器通知一个或多个服务的更新。然后,在步骤702处,网关服务器可以接收来自远程事务域的对于所述一个或多个服务的查询。此外,在步骤403处,网关服务器可以向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
代理模型
图8示出了根据本发明的实施例的在事务中间件机器环境中提供代理模型的图示。如图8所示,事务中间件机器环境800(例如,Tuxedo环境)可以包括多个域,诸如具有域网关A-C 811-813和公告板(BB)821-823的事务域A-C 801-803。
此外,不同的域A-C 801-803可以共享全局资源810中的信息。例如,Tuxedo系统可以使用网络文件系统(NFS)以共享MID、GRPID、TMS、路由信息。
如图8所示,事务域B 802可以将不同的服务导出到各个远程域。例如,事务域B802可以将服务823导出到事务域A 801。另外,事务域B 802可以(使用代理模型)将从另一远程事务域C 803导入的服务833导出到事务域A 801。
根据本发明的实施例,客户机831可以使用本地BB 821以用于以类似于本地调用的方式选择远程服务832。客户机831可以使用数据依赖路由(DDR)进程以跨域路由一个或多个消息。DDR进程可以基于(从配置文件转换而来的)存储在本地BB 821中的DDR设置814。
可替代地,客户机831可以根据DDR设置814选择远程服务833。通过使用代理模型,事务域B 802可以导出服务833。事务域B 802可以暴露用于域网关B 812的RDMAQ地址,域网关B 812从远程事务域C 803导入服务,而不是暴露用于服务833的最终RDMAQ地址。
随后,当客户机831调用服务833时,请求(例如,tpcall)可以被指向到域网关B812,域网关B 812可以根据存储在本地BB 822中的DDR设置824路由到远程服务833(即,单侧绕域)。
图9示出了根据本发明的实施例的在事务中间件机器环境中使用代理模型来支持跨域消息传送的图示。如图9所示,事务中间件机器环境900(例如,Tuxedo环境)可以包括多个域,诸如事务域A-C 921-923。
例如,事务域B 922中的GWTDOMAIN B2 928可以导入来自事务域C 923中的GWTDOMAIN C 929的服务930。此外,事务域B 922中的GWTDOMAIN B1 926可以将服务930导出到事务域A 921中的GWTDOMAIN A 925。
在步骤901处,事务域C 923中的GWTDOMAIN C 929可以检测与服务930相关联的改变。
在步骤902处,GWTDOMAIN C 929可以向事务域B 922中的GWTDOMAIN B2 928通知关于服务930的改变。然后,在步骤903处,GWTDOMAIN B2 928可以针对服务的列表(包括服务930)向GWTDOMAIN C 929发送查询消息。此外,在步骤904处,GWTDOMAIN C 929可以在回复中向GWTDOMAIN B2 928提供服务930的改变。
在步骤905处,GWTDOMAIN B2 928用关于服务930的更新后的信息来更新本地BB927。在步骤906处,GWTDOMAIN B1 926可以周期地检查本地BB 927。
在步骤907处,GWTDOMAIN B1 926可以向事务域A 921中的GWTDOMAIN A 925通知关于服务930的更新。然后,在步骤908处,GWTDOMAIN A 925可以针对服务的列表(包括服务930)向GWTDOMAIN B1 926发送查询消息。
此外,在步骤909处,GWTDOMAIN B1 926可以在回复中向GWTDOMAIN A 925提供服务930的更新。例如,GWTDOMAIN B1 926可以向事务域A 921中的GWTDOMAIN A 925暴露用于与GWTDOMAIN B2 928相关联的消息队列的地址,GWTDOMAIN B2 928导入来自远程事务域C923的服务930。
在步骤910处,客户机924可以获得用于与GWTDOMAIN B2 928相关联的消息队列的地址,并且为了调用服务930而向GWTDOMAIN B2 928发送请求。
因此,在步骤911处,GWTDOMAIN B2 928可以将请求路由到事务域C 923中的服务930。
图10示出了根据本发明的实施例的用于在事务中间件机器环境中使用代理模型来支持跨域消息传送的示例性流程图。如图10所示,在步骤1001处,第一事务域可以将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入。然后,在步骤1002处,事务域中的第一网关服务器可以接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求。此外,在步骤1003处,第一网关服务器可以将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
图11示出了根据本发明的实施例的在事务中间件机器环境中的事务域中的客户机的示例性框图。事务域操作以导入来自远程事务域的一个或多个服务,并且所述一个或多个服务在与该事务域相关联的服务表中注册。
如图11所示,示例性客户机1100可以包括发现单元1110和第一发送单元1120。发现单元1110可以被配置为从服务表发现提供所述一个或多个服务的远程事务域中的远程服务器。第一发送单元1120可以被配置为直接向远程服务器发送消息以调用所述一个或多个服务。
在一个实施例中,事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在一个实施例中,事务域和远程事务域共享全局资源,该全局资源包含机器和事务相关信息。
在一个实施例中,使用共享文件和服务器中的至少一个来支持全局资源。
在一个实施例中,事务域操作以使用域网关服务器来导入全局资源,该全局资源包含机器和事务相关信息。
在一个实施例中,域网关服务器操作以在本地共享存储器中存储导入的机器和事务相关信息。
在一个实施例中,示例性客户机1100还可以包括第一获得单元1130,第一获得单元1130可以被配置为获得在事务中涉及的事务域和远程事务域二者中的一个或多个事务管理服务器。
在一个实施例中,示例性客户机1100还可以包括第二发送单元1140,第二发送单元1140可以被配置为经由驻留在事务域中的一个或多个网关服务器向远程服务器发送另一消息。
在一个实施例中,示例性客户机1100还可以包括第二获得单元1150,第二获得单元1150可以被配置为获得用于与远程服务器相关联的消息队列的地址,其中消息队列基于远程直接存储器存取(RDMA)协议。
图12示出了根据本发明的实施例的在事务中间件机器环境中的事务域中的网关服务器的示例性框图。
如图12所示,示例性网关服务器1200可以包括第一提供单元1210、接收单元1220和发送单元1230。第一提供单元1210可以被配置为向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知。接收单元1220可以被配置为接收来自远程事务域的对于所述一个或多个服务的查询。发送单元1230可以被配置为向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
在一个实施例中,事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在一个实施例中,事务域和远程事务域共享全局资源,该全局资源包含机器和事务相关信息。
在一个实施例中,所述域ID是域序列号,其被用于在域组中保持机器和事务相关信息唯一。
在一个实施例中,示例性网关服务器1200还可以包括传播单元1240,传播单元1240可以被配置为传播域组中的域序列号的列表以支持事务。
在一个实施例中,示例性网关服务器1200还可以包括第二提供单元1250,第二提供单元1250可以被配置为向远程事务域中的网关服务器提供访问控制(ACL)信息。
在一个实施例中,网关服务器允许远程事务域支持故障转移。
在一个实施例中,示例性网关服务器1200还可以包括检查单元1260,检查单元1260可以被配置为针对所述一个或多个服务的更新而检查本地公告板。
在一个实施例中,示例性网关服务器1200还可以包括搜索单元1270和暴露单元1280,搜索单元1270可以被配置为为了允许所述远程事务域中的客户机调用所述一个或多个服务的信息而在本地公告板中搜索,暴露单元1280可以被配置为暴露用于与所述一个或多个服务相关联的消息队列的地址。
图13示出了根据本发明的实施例的在事务中间件机器环境中的第一事务域中的第一网关服务器的示例性框图。第一事务域操作以将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入。
图14示出了根据本发明的实施例的在事务中间件机器环境中的第一事务域中的第二网关服务器的示例性框图。
如图13所示,示例性第一网关服务器1300可以包括第一接收单元1310和路由单元1320。第一接收单元1310可以被配置为接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求。路由单元1320可以被配置为将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
在一个实施例中,第一事务域以及第二和第三事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在一个实施例中,第一事务域以及第二和第三事务域共享全局资源,该全局资源包含机器和事务相关信息。
在一个实施例中,示例性第一网关服务器1300还可以包括第二接收单元1330,第二接收单元1330可以被配置为接收来自第三事务域的对于所述一个或多个服务的更新的通知。
在一个实施例中,示例性第一网关服务器1300还可以包括更新单元1340,更新单元1340可以被配置为对于从第三事务域导入的所述一个或多个服务的更新来更新第一事务域中的本地公告板。
在一个实施例中,第一事务域还包括第二网关服务器1400。第二网关服务器1400可以包括检查单元1410,检查单元1410可以被配置为针对从第三事务域导入的所述一个或多个服务的更新在本地公告板中检查。
在一个实施例中,第二网关服务器1400还可以包括暴露单元1420,暴露单元1420可以被配置为向第二事务域暴露用于与第一事务域中的第一网关服务器相关联的消息队列的地址。
在一个实施例中,请求的路由基于第一事务域中的本地公告板中的数据依赖路由设置。
在一个实施例中,第二事务域包括客户机。客户机包括获得单元和发送单元,获得单元可以被配置为获得用于与第一网关服务器相关联的消息队列的地址,发送单元可以被配置为向第一网关服务器发送调用第三事务域中的所述一个或多个服务的请求。
图11-14中所描述的单元可以由硬件(诸如现场可编程门阵列(FPGA)、集成电路(IC)或专用集成电路(ASIC)等)、软件、固件或其任何组合实现以执行本发明的原理。本领域技术人员理解的是图11-14所描述的单元可以被组合或分成子单元以实现如上文所描述的本发明的原理。因此,根据实际需要,图11-14所描述的单元可以根据如上面的实施例中所描述的本发明的原理来执行各种操作。
根据本发明的一些示例性实施例可以如下所示。
(1)一种用于在事务中间件机器环境中在事务中间件机器环境中支持跨域消息传送的系统,包括:
事务域,该事务域操作以导入来自远程事务域的一个或多个服务,其中所述一个或多个服务在与该事务域相关联的服务表中注册,该事务域包括客户机,该客户机操作以:
从服务表发现提供所述一个或多个服务的远程事务域中的远程服务器;以及直接向远程服务器发送调用所述一个或多个服务的消息。
(2)一种用于在事务中间件机器环境中支持消息传送的系统,包括:包括网关服务器的事务域,其中该网关服务器操作以:向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知;接收来自远程事务域的对于所述一个或多个服务的查询;以及向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
(3)一种用于在事务中间件机器环境中支持消息传送的系统,包括:第一事务域,其操作以将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入,第一事务域包括第一网关服务器,第一网关服务器操作以:接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求;以及将请求路由到提供所述一个或多个服务的第三事务域中的服务器。根据本发明的实施例,一种用于在事务中间件机器环境中支持消息传送的方法,包括:经由事务域中的网关服务器向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知;经由网关服务器接收来自远程事务域的对于所述一个或多个服务的查询;以及经由网关服务器向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
根据本发明的实施例,该方法还包括:允许事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
根据本发明的实施例,该方法还包括:经由事务域和远程事务域共享全局资源,该全局资源包含用于域组中的不同事务域的机器和事务相关信息。
在本发明的实施例中,该方法还包括:允许所述域ID是域序列号,其被用于在域组中保持机器和事务相关信息唯一。
在本发明的实施例中,该方法还包括:传播域组中的域序列号的列表以支持事务。
在本发明的实施例中,该方法还包括:向远程事务域中的网关服务器提供访问控制(ACL)信息。
在本发明的实施例中,该方法还包括:允许远程事务域支持故障转移。
在本发明的实施例中,该方法还包括:经由网关服务器针对所述一个或多个服务的更新来检查本地公告板。
在本发明的实施例中,根据权利要求8的方法,还包括:经由网关服务器在本地公告板中搜索允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
在本发明的实施例中,该方法还包括:经由网关服务器暴露用于与所述一个或多个服务相关联的消息队列的地址。
在本发明的实施例中,一种非暂态机器可读存储介质,该非暂态机器可读存储介质具有存储在其上的指令,当该指令被执行时使得系统执行上述方法中的任何方法中的方法的步骤。
在本发明的实施例中,一种用于在事务中间件机器环境中支持消息传送的系统,包括:一个或多个微处理器;事务域中的网关服务器,其运行在一个或多个微处理器上,其中网关服务器操作以向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知;接收来自远程事务域的对于所述一个或多个服务的查询;以及向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
在本发明的实施例中,该系统其中:事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在本发明的实施例中,该系统其中:事务域和远程事务域共享全局资源,该全局资源包含机器和事务相关信息。
在本发明的实施例中,该系统其中:所述域ID是域序列号,其被用于在域组中保持机器和事务相关信息唯一。
在本发明的实施例中,该系统其中:网关服务器操作以传播域组中的域序列号的列表以支持事务。
在本发明的实施例中,该系统其中:事务域中的网关服务器操作以向远程事务域中的网关服务器提供访问控制(ACL)信息。
在本发明的实施例中,该系统其中:事务域中的网关服务器允许远程事务域支持故障转移。
在本发明的实施例中,该系统其中:网关服务器操作以针对所述一个或多个服务的更新检查本地公告板。
在本发明的实施例中,该系统其中:网关服务器操作以针对允许所述远程事务域中的客户机调用所述一个或多个服务的信息在本地公告板中搜索,以及暴露用于与所述一个或多个服务相关联的消息队列的地址。
在本发明的实施例中,一种事务域中的网关服务器,包括:第一提供单元,其被配置为向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知;接收单元,其被配置为接收来自远程事务域的对于所述一个或多个服务的查询;以及发送单元,其被配置为向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
在本发明的实施例中,该网关服务器其中,事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在本发明的实施例中,该网关服务器其中,事务域和远程事务域共享全局资源,该全局资源包含机器和事务相关信息。
在本发明的实施例中,该网关服务器其中,所述域ID是域序列号,其被用于在域组中保持机器和事务相关信息唯一。
在本发明的实施例中,该网关服务器还包括被配置为传播域组中的域序列号的列表以支持事务的传播单元。
在本发明的实施例中,该网关服务器还包括:被配置为向远程事务域中的网关服务器提供访问控制(ACL)信息的第二提供单元。
在本发明的实施例中,该网关服务器其中,网关服务器允许远程事务域支持故障转移。
在本发明的实施例中,该网关服务器还包括被配置为针对所述一个或多个服务的更新检查本地公告板的检查单元。
在本发明的实施例中,该网关服务器还包括搜索单元和暴露单元,该搜索单元被配置为在本地公告板中搜索允许所述远程事务域中的客户机调用所述一个或多个服务的信息,以及该暴露单元被配置为暴露用于与所述一个或多个服务相关联的消息队列的地址。
在本发明的实施例中,一种非暂态机器可读存储介质,该非暂态机器可读存储介质具有存储在其上的指令,当该指令被执行时使得系统执行步骤,包括:经由事务域中的网关服务器向一个或多个远程事务域中的一个或多个网关服务器提供一个或多个服务的更新的通知;经由网关服务器接收来自远程事务域的对于所述一个或多个服务的查询;以及经由网关服务器向远程事务域中的网关服务器发送响应,其中该响应包含允许所述远程事务域中的客户机调用所述一个或多个服务的信息。
在本发明的实施例中,一种用于在事务中间件机器环境中支持消息传送的方法,包括:经由第一事务域将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入;经由事务域中的第一网关服务器接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求;以及经由第一网关服务器将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
在本发明的实施例中,该方法还包括:允许事务域和远程事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在本发明的实施例中,该方法还包括:经由事务域和远程事务域共享全局资源,该全局资源包含用于域组中的不同事务域的机器和事务相关信息。
在本发明的实施例中,该方法还包括:经由第一网关服务器接收对于来自第三事务域的所述一个或多个服务的更新的通知。
在本发明的实施例中,该方法还包括:经由第一网关服务器对于从第三事务域导入的所述一个或多个服务的更新来更新第一事务域中的本地公告板。
在本发明的实施例中,该方法还包括:经由第一事务域中的第二网关服务器针对从第三事务域导入的所述一个或多个服务的更新在本地公告板中检查。
在本发明的实施例中,该方法还包括:经由第一事务域中的第二网关服务器向第二事务域暴露用于与第一事务域中的第一网关服务器相关联的消息队列的地址。
在本发明的实施例中,该方法还包括:允许请求的路由基于第一事务域中的本地公告板中的数据依赖路由设置。
在本发明的实施例中,该方法还包括:经由第二事务域中的客户机获得用于与第一事务域中的第一网关服务器相关联的消息队列的地址。
在本发明的实施例中,该方法还包括:经由第二事务域中的客户机向第一事务域中的第一网关服务器发送调用第三事务域中的所述一个或多个服务的请求。
在本发明的实施例中,一种非暂态机器可读存储介质,该非暂态机器可读存储介质具有存储在其上的指令,当该指令被执行时使得系统执行上述方法中的任何方法中的方法的步骤。
在本发明的实施例中,一种用于在事务中间件机器环境中支持消息传送的系统,包括:一个或多个微处理器;第一事务域,其运行在一个或多个微处理器上,其中第一事务域操作以将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入;以及第一事务域中的第一网关服务器,该第一网关服务器操作以接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求;以及将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
在本发明的实施例中,该系统其中:第一事务域以及第二和第三事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在本发明的实施例中,该系统其中:第一事务域以及第二和第三事务域共享全局资源,该全局资源包含机器和事务相关信息。
在本发明的实施例中,该系统其中:第一事务域中的第一网关服务器操作以接收来自第三事务域的对于所述一个或多个服务的更新的通知。
在本发明的实施例中,该系统其中:第一事务域中的第一网关服务器操作以对于从第三事务域导入的所述一个或多个服务的更新来更新第一事务域中的本地公告板。
在本发明的实施例中,该系统其中:第一事务域中的第二网关服务器操作以针对从第三事务域导入的所述一个或多个服务的更新在本地公告板中检查。
在本发明的实施例中,该系统其中:第一事务域中的第二网关服务器操作以向第二事务域暴露用于与第一事务域中的第一网关服务器相关联的消息队列的地址。
在本发明的实施例中,该系统其中:请求的路由基于第一事务域中的本地公告板中的数据依赖路由设置。
在本发明的实施例中,该系统其中:第二事务域中的客户机操作以获得用于与第一事务域中的第一网关服务器相关联的消息队列的地址,以及向第一事务域中的第一网关服务器发送调用第三事务域中的所述一个或多个服务的请求。
在本发明的实施例中,一种非暂态机器可读存储介质,该非暂态机器可读存储介质具有存储在其上的指令,当该指令被执行时使得系统执行步骤,包括:经由第一事务域将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入;经由事务域中的第一网关服务器接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求;以及经由第一网关服务器将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
在本发明的实施例中,第一事务域中的第一网关服务器,其中第一事务域操作以将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入,第一网关服务器包括:被配置为接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求的第一接收单元;以及被配置为将请求路由到提供所述一个或多个服务的第三事务域中的服务器的路由单元。
在本发明的实施例中,第一网关服务器其中,第一事务域以及第二和第三事务域在域组中,其中域组中的每个域与唯一识别符(ID)相关联。
在本发明的实施例中,第一网关服务器其中,第一事务域以及第二和第三事务域共享全局资源,该全局资源包含机器和事务相关信息。
在本发明的实施例中,第一网关服务器还包括被配置为接收来自第三事务域的对于所述一个或多个服务的更新的通知的第二接收单元。
在本发明的实施例中,第一网关服务器还包括被配置为对于从第三事务域导入的所述一个或多个服务的更新来更新第一事务域中的本地公告板的更新单元。
在本发明的实施例中,第一网关服务器,其中第一事务域还包括第二网关服务器,其中第二网关服务器包括检查单元,该检查单元被配置为针对从第三事务域导入的所述一个或多个服务的更新在本地公告板中检查。
在本发明的实施例中,根据上述的第一网关服务器,其中第二网关服务器还包括:被配置为向第二事务域暴露用于与第一事务域中的第一网关服务器相关联的消息队列的地址的暴露单元。
在本发明的实施例中,根据上述的第一网关服务器,其中请求的路由基于第一事务域中的本地公告板中的数据依赖路由设置。
在本发明的实施例中,根据上述的第一网关服务器,其中第二事务域包括客户机,该客户机包括:被配置为获得用于与第一网关服务器相关联的消息队列的地址的获得单元,以及被配置为向第一事务域中的第一网关服务器发送调用第三事务域中的所述一个或多个服务的请求的发送单元。
在本发明的实施例中,一种非暂态机器可读存储介质,该非暂态机器可读存储介质具有存储在其上的指令,当该指令被执行时使得系统执行步骤,包括:经由第一事务域将一个或多个服务导出到第二事务域,其中所述一个或多个服务从第三事务域导入;经由事务域中的第一网关服务器接收来自第二事务域中的客户机的调用第三事务域中的所述一个或多个服务的请求;以及经由第一网关服务器将请求路由到提供所述一个或多个服务的第三事务域中的服务器。
本发明的许多特征可以在硬件、软件、固件或其组合中执行、通过使用硬件、软件、固件或其组合来执行或者在硬件、软件、固件或其组合的协助下执行。因此,本发明的特征可以使用处理系统(例如,包括一个或多个处理器)来实现。
本发明的特征可以在计算机程序产品中实现、使用计算机程序产品实现或在计算机程序产品的协助下实现,该计算机程序产品是具有存储在其上/其中的指令的存储介质(媒介)或计算机可读介质(媒介),该指令可以被用于对处理系统编程以执行本文呈现的特征中的任何特征。存储介质可以包括但不限于任何类型的盘,该任何类型的盘包括软盘、光盘、DVD、CD-ROM、微型硬盘以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC)或适用于存储指令和/或数据的任何类型的媒介或设备。
被存储在机器可读介质(媒介)中的任何一种上,本发明的特征可以被并入软件和/或固件中以用于控制处理系统的硬件以及用于使得处理系统能够利用本发明的结果与其他机制交互。这样的软件或固件可以包括但不限于应用代码、设备驱动器、操作系统和执行环境/容器。
本发明的特征还可以使用例如诸如专用集成电路(ASIC)之类的硬件组件在硬件中实现。以便于执行本文所描述的功能的硬件状态机的实现对于相关领域技术人员将是明显的。
附加地,使用包括根据本公开的教导编程的一个或多个处理器、存储器和/或计算机可读存储媒介的一个或多个常规通用或专用电子计算机、计算设备、机器或微处理器可以方便地实现本发明。如对于软件领域技术人员将明显的,熟练的程序员可以基于本公开的教导容易地准备合适的软件编码。
尽管上文描述了本发明的各种实施例,但是应当理解的是它们以示例的方式,而不是限制的方式被呈现。对于相关领域技术人员将明显的是可以在其中进行形式和细节的各种改变而不背离本发明的精神和范围。
上文借助示出特定功能及其关系的执行的功能建立块描述了本发明。为了方便描述,这些功能建立块的界限在此通常被任意定义。只要合适地执行特定功能及其关系,则可以定义替代界限。因此,任何这样的替代界限在本发明的范围和精神内。
出于说明和描述的目的提供了本发明的上述描述。它并不旨在是详尽的或者将本发明限制到所公开的精确形式。本发明的宽度和范围不应当被上文描述的示例性实施例中的任何实施例所限制。许多修改和变化对于本领域技术人员来说将是明显的。修改和变化包括所公开的特征的任何相关的组合。实施例被选择和描述以便于最佳地解释本发明的原理及其实践应用,从而使得本领域其他技术人员能够对于各种实施例以及如适合所设想的特定使用的各种变型来理解本发明。旨在由以下权利要求和它们的等价物来限定本发明的范围。
Claims (16)
1.一种用于在包括本地事务域和远程事务域的事务中间件机器环境中支持跨域消息传送的方法,包括:
在所述本地事务域和所述远程事务域可访问的存储资源中存储与来自所述远程事务域的一个或多个服务有关的服务信息,所述服务信息包括用于由所述远程事务域中的远程服务器提供的目标服务的远程直接存储器地址队列RDMAQ地址;
在所述本地事务域中提供网关服务器;
由所述本地事务域中的网关服务器导入所述服务信息;
由所述本地事务域中的所述网关服务器在与所述本地事务域相关联的服务表中注册所述服务信息,所述服务表存储在跨所述本地事务域共享的存储器中;
由所述本地事务域中的客户机从所述服务表发现用于由所述远程事务域中的远程服务器提供的所述目标服务的所述RDMAQ地址;以及
由所述客户机通过经由远程直接存储器访问协议在网络连接上直接向用于所述目标服务的所述RDMAQ地址发送消息,所述远程直接存储器访问协议操作为在所述网络连接上的上层协议来调用所述目标服务,从而直接向所述RDMAQ地址发送消息绕过所述本地事务域中的所述网关服务器。
2.根据权利要求1所述的方法,还包括:
将所述本地事务域和所述远程事务域包括在域组中,其中所述域组中的每个域与唯一标识符ID相关联。
3.根据权利要求1所述的方法,还包括:
使用网络文件系统NFS服务来使得所述存储资源能被所述本地事务域和所述远程事务域访问。
4.根据权利要求3所述的方法,还包括:
使用共享文件和服务器中的至少一个来支持所述存储资源。
5.根据权利要求1所述的方法,其中,所述服务表包括在ORACLE TUSEDO系统可访问的公告板中。
6.根据权利要求1所述的方法,还包括:
经由提交事务的所述客户机获得与在所述事务中涉及的所述本地事务域和所述远程事务域二者中的一个或多个事务管理服务器有关的事务服务信息。
7.根据权利要求1所述的方法,还包括:
由所述客户机经由所述本地事务域中所包括的所述网关服务器向提供所述目标服务的所述远程服务器发送另一消息。
8.根据权利要求1所述的方法,其中所述RDAMQ地址基于远程直接存储器存取(RDMA)协议。
9.一种用于在事务中间件机器环境中支持跨域消息传送的系统,包括:
一个或多个微处理器;
本地事务域,包括在所述本地事务域中操作并在所述一个或多个微处理器上运行的网关服务器;
存储资源,所述存储资源可由所述本地事务域和远程事务域访问,其中所述存储资源存储与来自所述远程事务域的一个或多个服务有关的服务信息,所述服务信息包括用于由所述远程事务域中的远程服务器提供的目标服务的远程直接存储器地址队列RDMAQ地址;
存储器,所述存储器跨所述本地事务域共享并且包括服务表;和
所述本地事务域的客户机;
其中,在所述本地事务域中操作的所述网关服务器:
从所述存储资源导入所述服务信息;和
在跨所述本地事务域共享的所述存储器中所包括的所述服务表中注册所述服务信息;以及
其中,所述本地事务域的所述客户机:
从所述服务表发现用于由所述远程事务域中的远程服务器提供的所述目标服务的所述RDMAQ地址;和
经由远程直接存储器访问协议在网络连接上直接向用于所述目标服务的所述RDMAQ地址发送消息,所述远程直接存储器访问协议操作为在所述网络连接上的上层协议来调用所述目标服务,从而直接向所述RDMAQ地址发送消息绕过所述本地事务域中的所述网关服务器。
10.根据权利要求9所述的系统,其中:
所述本地事务域和所述远程事务域在域组中,并且其中所述域组中的每个域与唯一标识符ID相关联。
11.根据权利要求9所述的系统,其中:
使用网络文件系统NFS服务来使得所述存储资源能被所述本地事务域和所述远程事务域访问。
12.根据权利要求11所述的系统,其中:
使用共享文件和服务器中的至少一个来支持所述存储资源。
13.根据权利要求11所述的系统,其中,所述服务表包括在ORACLE TUSEDO系统可访问的公告板中。
14.根据权利要求9所述的系统,其中:
提交事务的所述客户机操作以获得与在所述事务中涉及的所述本地事务域和所述远程事务域二者中的一个或多个事务管理服务器有关的事务服务信息。
15.根据权利要求9所述的系统,其中:
所述客户机操作以经由所述本地事务域中包括的所述网关服务器向提供所述目标服务的所述远程服务器发送另一消息。
16.一种非瞬态计算机可读存储介质,其上存储计算机指令,所述指令当被一个或多个处理器执行时,使得用于在包括本地事务域和远程事务域的事务中间件机器环境中支持跨域消息传送的系统执行如权利要求1-8中任一项所述的方法。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461985156P | 2014-04-28 | 2014-04-28 | |
US61/985,156 | 2014-04-28 | ||
US14/602,039 | 2015-01-21 | ||
US14/602,039 US9749445B2 (en) | 2014-04-28 | 2015-01-21 | System and method for updating service information for across-domain messaging in a transactional middleware machine environment |
US14/602,037 | 2015-01-21 | ||
US14/602,041 | 2015-01-21 | ||
US14/602,037 US10091333B2 (en) | 2014-04-28 | 2015-01-21 | System and method for supporting a bypass-domain model for across-domain messaging in a transactional middleware machine environment |
US14/602,041 US9723110B2 (en) | 2014-04-28 | 2015-01-21 | System and method for supporting a proxy model for across-domain messaging in a transactional middleware machine environment |
PCT/US2015/022835 WO2015167713A1 (en) | 2014-04-28 | 2015-03-26 | System and method for supporting a bypass-domain model and a proxy model and updating service information for across-domain messaging in a transactional middleware machine environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106663033A CN106663033A (zh) | 2017-05-10 |
CN106663033B true CN106663033B (zh) | 2021-04-06 |
Family
ID=54335921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580022576.0A Active CN106663033B (zh) | 2014-04-28 | 2015-03-26 | 在事务中间件机器环境支持绕域和代理模型并更新服务信息以跨域消息传送的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (3) | US9723110B2 (zh) |
EP (1) | EP3138003B1 (zh) |
JP (1) | JP6539677B2 (zh) |
KR (1) | KR102341809B1 (zh) |
CN (1) | CN106663033B (zh) |
WO (1) | WO2015167713A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721473B (zh) * | 2016-02-24 | 2019-07-09 | 锐达互动科技股份有限公司 | 一种web端远程调用优化的方法及系统 |
CN108234152B (zh) * | 2016-12-12 | 2021-08-10 | 北京京东尚科信息技术有限公司 | 远程接口调用的网络监控的方法和系统 |
DE102017203185B4 (de) * | 2017-02-28 | 2018-09-06 | Audi Ag | Kraftfahrzeug mit einem in mehrere getrennte Domänen eingeteilten Datennetzwerk sowie Verfahren zum Betreiben des Datennetzwerks |
CN108259576B (zh) * | 2017-12-27 | 2021-08-24 | 武汉网信安全技术股份有限公司 | 一种软硬件实时信息传输系统和方法 |
US11269805B2 (en) * | 2018-05-15 | 2022-03-08 | Intel Corporation | Signal pathways in multi-tile processors |
CN113746679B (zh) * | 2019-04-22 | 2023-05-02 | 腾讯科技(深圳)有限公司 | 跨子域通信运维方法、总运维服务器和介质 |
CN111082961B (zh) | 2019-05-28 | 2023-01-20 | 中兴通讯股份有限公司 | 域间的数据交互方法及装置 |
CN111131427B (zh) * | 2019-12-19 | 2022-09-23 | 北京神舟航天软件技术股份有限公司 | 一种基于中心域的跨域协同系统及实现方法 |
CN111930396B (zh) * | 2020-06-29 | 2021-05-11 | 广西东信易联科技有限公司 | 一种基于notify机制的4G路由器中通讯模组的升级方法 |
CN113992750B (zh) * | 2020-07-10 | 2024-09-10 | 华为云计算技术有限公司 | 一种全局事务协同方法、装置、设备及介质 |
US11693837B2 (en) | 2020-09-18 | 2023-07-04 | Databricks, Inc. | Model ML registry and model serving |
CN112099878A (zh) * | 2020-11-19 | 2020-12-18 | 中国电力科学研究院有限公司 | 应用软件配置管理方法、装置及系统 |
CN112764826B (zh) * | 2020-12-30 | 2024-05-17 | 中国人寿保险股份有限公司上海数据中心 | tuxedo资源批量处理方法、系统、设备及介质 |
CN113014492B (zh) * | 2021-03-16 | 2023-08-15 | 广州市华奕电子科技有限公司 | 中间件tcp通信应用层数据路由方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007047183A2 (en) * | 2005-10-11 | 2007-04-26 | Citrix Systems, Inc. | Systems and methods for facilitating distributed authentication |
CN101416173A (zh) * | 2006-03-31 | 2009-04-22 | STTWebOS股份有限公司 | 在基于万维网的环境下交换信息的方法及装置 |
CN101821725A (zh) * | 2007-06-25 | 2010-09-01 | 戴尔产品有限公司 | 带有目标侧识别和路由表上载的存储区域网络 |
CN102404212A (zh) * | 2011-11-17 | 2012-04-04 | 曙光信息产业(北京)有限公司 | 一种基于InfiniBand网络的跨平台RDMA通信方法 |
CN103197936A (zh) * | 2005-10-07 | 2013-07-10 | 茨特里克斯系统公司 | 用于在应用程序的预定数量的执行方法之间选择的方法 |
CN103207814A (zh) * | 2012-12-27 | 2013-07-17 | 北京仿真中心 | 一种去中心化的跨集群资源管理与任务调度系统与调度方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702761B1 (en) * | 2000-10-10 | 2010-04-20 | Xerox Corporation | Network switching device |
US20060020688A1 (en) * | 2001-05-14 | 2006-01-26 | At&T Corp. | System having generalized client-server computing |
US20040181530A1 (en) | 2001-08-29 | 2004-09-16 | Smith Lawrence T. | Distributed networking system for resource-constrained computing devices |
US20030079027A1 (en) | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
US7020753B2 (en) | 2002-01-09 | 2006-03-28 | Sun Microsystems, Inc. | Inter-domain data transfer |
US7243352B2 (en) | 2002-11-27 | 2007-07-10 | Sun Microsystems, Inc. | Distributed process runner |
ES2238184B8 (es) * | 2004-02-09 | 2014-06-05 | Consejo Superior De Investigaciones Cientificas | Procedimiento y dispositivo para medir la potencia disipada por la reaccion de hidruracion en tubos y vainas tubulares y la correspondiente variacion de resistencia electrica. |
US7843906B1 (en) * | 2004-02-13 | 2010-11-30 | Habanero Holdings, Inc. | Storage gateway initiator for fabric-backplane enterprise servers |
US7852861B2 (en) | 2006-12-14 | 2010-12-14 | Array Networks, Inc. | Dynamic system and method for virtual private network (VPN) application level content routing using dual-proxy method |
US7975138B2 (en) | 2007-07-18 | 2011-07-05 | Oracle International Corporation | Systems and methods for mutually authenticated transaction coordination messages over insecure connections |
US8165925B2 (en) * | 2008-04-03 | 2012-04-24 | Retrevo Inc. | Methods, systems, and program products for generating multidimensional comparisons |
CN101398769B (zh) * | 2008-10-28 | 2012-09-05 | 华为技术有限公司 | 一种对操作系统透明的处理器资源整合利用方法 |
US20110040875A1 (en) | 2009-08-14 | 2011-02-17 | Martin Scholz | System And Method For Inter-domain Information Transfer |
JP5610397B2 (ja) | 2011-01-17 | 2014-10-22 | 日本電信電話株式会社 | 資源予約装置及び方法及びプログラム |
US9215096B2 (en) | 2011-08-26 | 2015-12-15 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for providing communication between network domains in a service cloud |
US9110851B2 (en) | 2011-09-29 | 2015-08-18 | Oracle International Corporation | System and method for persisting transaction records in a transactional middleware machine environment |
US9116761B2 (en) * | 2011-09-29 | 2015-08-25 | Oracle International Corporation | System and method for preventing single-point bottleneck in a transactional middleware machine environment |
US8832217B2 (en) * | 2011-09-29 | 2014-09-09 | Oracle International Corporation | System and method for supporting different message queues in a transactional middleware machine environment |
US8898271B2 (en) | 2011-09-29 | 2014-11-25 | Oracle International Corporation | System and method for supporting accurate load balancing in a transactional middleware machine environment |
US9549024B2 (en) * | 2012-12-07 | 2017-01-17 | Remote Media, Llc | Routing and synchronization system, method, and manager |
US9525564B2 (en) * | 2013-02-26 | 2016-12-20 | Zentera Systems, Inc. | Secure virtual network platform for enterprise hybrid cloud computing environments |
KR102206577B1 (ko) * | 2014-04-30 | 2021-01-25 | 오라클 인터내셔날 코포레이션 | 트랜잭셔널 미들웨어 머신 환경에서 분산 트랜잭션 락을 제공하는 시스템 및 방법 |
-
2015
- 2015-01-21 US US14/602,041 patent/US9723110B2/en active Active
- 2015-01-21 US US14/602,037 patent/US10091333B2/en active Active
- 2015-01-21 US US14/602,039 patent/US9749445B2/en active Active
- 2015-03-26 KR KR1020167033138A patent/KR102341809B1/ko active IP Right Grant
- 2015-03-26 JP JP2016565059A patent/JP6539677B2/ja active Active
- 2015-03-26 EP EP15716292.6A patent/EP3138003B1/en active Active
- 2015-03-26 WO PCT/US2015/022835 patent/WO2015167713A1/en active Application Filing
- 2015-03-26 CN CN201580022576.0A patent/CN106663033B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103197936A (zh) * | 2005-10-07 | 2013-07-10 | 茨特里克斯系统公司 | 用于在应用程序的预定数量的执行方法之间选择的方法 |
WO2007047183A2 (en) * | 2005-10-11 | 2007-04-26 | Citrix Systems, Inc. | Systems and methods for facilitating distributed authentication |
CN101416173A (zh) * | 2006-03-31 | 2009-04-22 | STTWebOS股份有限公司 | 在基于万维网的环境下交换信息的方法及装置 |
CN101821725A (zh) * | 2007-06-25 | 2010-09-01 | 戴尔产品有限公司 | 带有目标侧识别和路由表上载的存储区域网络 |
CN102404212A (zh) * | 2011-11-17 | 2012-04-04 | 曙光信息产业(北京)有限公司 | 一种基于InfiniBand网络的跨平台RDMA通信方法 |
CN103207814A (zh) * | 2012-12-27 | 2013-07-17 | 北京仿真中心 | 一种去中心化的跨集群资源管理与任务调度系统与调度方法 |
Non-Patent Citations (1)
Title |
---|
"基于属性的访问控制模型及应用研究";侯素娟;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120315(第03期);第I139-334页 * |
Also Published As
Publication number | Publication date |
---|---|
KR20160148650A (ko) | 2016-12-26 |
US20150312376A1 (en) | 2015-10-29 |
JP2017517064A (ja) | 2017-06-22 |
EP3138003A1 (en) | 2017-03-08 |
US9749445B2 (en) | 2017-08-29 |
WO2015167713A1 (en) | 2015-11-05 |
JP6539677B2 (ja) | 2019-07-03 |
KR102341809B1 (ko) | 2021-12-21 |
US10091333B2 (en) | 2018-10-02 |
CN106663033A (zh) | 2017-05-10 |
US20150312378A1 (en) | 2015-10-29 |
US9723110B2 (en) | 2017-08-01 |
EP3138003B1 (en) | 2022-05-11 |
US20150312377A1 (en) | 2015-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106663033B (zh) | 在事务中间件机器环境支持绕域和代理模型并更新服务信息以跨域消息传送的系统和方法 | |
CA2914802C (en) | Distributed lock management in a cloud computing environment | |
US9672071B2 (en) | Method and system for distributed processing of HTTP requests | |
US9977694B2 (en) | System and method for supporting transaction affinity based on resource manager (RM) instance awareness in a transactional environment | |
US7512668B2 (en) | Message-oriented middleware server instance failover | |
US7664818B2 (en) | Message-oriented middleware provider having multiple server instances integrated into a clustered application server infrastructure | |
CN109981716A (zh) | 一种微服务调用方法及装置 | |
TW202301118A (zh) | 動態微服務分配機制 | |
KR102059121B1 (ko) | 트랜잭셔널 미들웨어 머신 환경에서 컴플렉스 메시지 헤더를 지원하기 위한 시스템 및 방법 | |
US9116761B2 (en) | System and method for preventing single-point bottleneck in a transactional middleware machine environment | |
CZ20032918A3 (cs) | Privatizace přístupu ke skupině v klastrovém počítačovém systému | |
CN103140851A (zh) | 包括中间件机环境的系统 | |
US10587725B2 (en) | Enabling a traditional language platform to participate in a Java enterprise computing environment | |
EP2761822B1 (en) | System and method for supporting different message queues in a transactional middleware machine environment | |
US8631064B2 (en) | Unified management of a hardware interface framework | |
US12086141B1 (en) | Coordination of services using PartiQL queries | |
CN115988080B (zh) | 一种基于代理中间件的微服务资源调用方法和系统 | |
US11872497B1 (en) | Customer-generated video game player matchmaking in a multi-tenant environment | |
US12095734B1 (en) | Container-based association and sharing of domain name system configuration objects | |
CN118043776A (zh) | 可扩展改变控制管理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |