CN106471472B - 用于多租户应用服务器环境中的分区迁移的***和方法 - Google Patents

用于多租户应用服务器环境中的分区迁移的***和方法 Download PDF

Info

Publication number
CN106471472B
CN106471472B CN201580033971.9A CN201580033971A CN106471472B CN 106471472 B CN106471472 B CN 106471472B CN 201580033971 A CN201580033971 A CN 201580033971A CN 106471472 B CN106471472 B CN 106471472B
Authority
CN
China
Prior art keywords
partition
target
resource group
application server
resources
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
Application number
CN201580033971.9A
Other languages
English (en)
Other versions
CN106471472A (zh
Inventor
C·帕特尔
R·莫达尼
N·伊斯拉姆
J·迪坡
M·马雷什
T·阿加沃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oracle International Corp filed Critical Oracle International Corp
Publication of CN106471472A publication Critical patent/CN106471472A/zh
Application granted granted Critical
Publication of CN106471472B publication Critical patent/CN106471472B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

根据实施例,本文描述的是用于多租户应用服务器环境中的分区迁移的***和方法。每个资源组或包括该资源组的分区可以与定义那个资源组或分区应当被定向和部署到的目标的虚拟目标(例如,虚拟主机)信息相关联。web层部件(例如,Oracle Traffic Director)包括路由信息,该路由信息将用于分区的虚拟目标映射到诸如服务器或集群之类的对应目标,以使得对那个分区的请求例如作为一个或多个会话的一部分被引导到适当的目标。当迁移分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,以使得对那个分区的后续请求被引导到新目标。

Description

用于多租户应用服务器环境中的分区迁移的***和方法
技术领域
本发明的实施例一般涉及应用服务器和云环境,并且更具体地涉及用于多租户应用服务器环境中的分区迁移的***和方法。
背景技术
应用服务器一般提供软件应用可以在其中被部署并运行的受管理环境。基于云的环境允许应用在云提供的分布式资源内运行并利用云提供的分布式资源。这种环境可以支持大量的用户或租户,这些用户或租户中的一些可以具有特定于该用户或租户的具体需求。这些是本发明的实施例可以在其中被使用的环境类型的一些示例。
发明内容
根据实施例,本文描述了用于多租户应用服务器环境中的分区迁移的***和方法。每个资源组或包括该资源组的分区可以与定义该资源组或分区应当被定向和部署到的目标的虚拟目标(例如,虚拟主机)信息相关联。web层部件(例如,Oracle TrafficDirector)包括路由信息,其将用于特定分区的虚拟目标映射到诸如服务器或集群之类的对应目标,使得对那个分区的请求例如作为一个或多个会话的一部分被引导到适当的目标。当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,使得对那个分区的后续请求被引导到新目标。
附图说明
图1示出了根据实施例的、用于在应用服务器、云或其它环境中支持多租赁的***。
图2进一步示出了根据实施例的、用于在应用服务器、云或其它环境中支持多租赁的***。
图3进一步示出了根据实施例的、用于在应用服务器、云或其它环境中支持多租赁的***。
图4示出了根据实施例的、用于与示例性多租户环境一起使用的域配置。
图5进一步示出了根据实施例的示例性多租户环境。
图6示出了根据实施例的、在应用服务器、云或其它环境中的分区迁移的使用。
图7进一步示出了根据实施例的、在应用服务器、云或其它环境中的分区迁移的使用。
图8示出了根据实施例的、在应用服务器、云或其它环境中使用分区迁移的方法。
具体实施方式
根据实施例,本文描述了用于多租户应用服务器环境中的分区迁移的***和方法。每个资源组或包括该资源组的分区可以与定义那个资源组或分区应当被定向和部署到的目标的虚拟目标(例如,虚拟主机)信息相关联。web层部件(例如,Oracle TrafficDirector)包括路由信息,其将用于特定分区的虚拟目标映射到诸如服务器或集群之类的对应目标,使得对那个分区的请求例如作为一个或多个会话的一部分被引导到适当的目标。当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,使得对那个分区的后续请求被引导到新目标。
应用服务器(例如,多租户,MT)环境
图1示出了根据实施例的用于在应用服务器、云或其它环境中支持多租赁的***。
如图1中所示,根据实施例,实现软件应用的部署和执行的应用服务器(例如,多租户,MT)环境100或其它计算环境可被配置为包括在运行时被用来定义应用服务器域的域102配置并且根据该域102配置来操作。
根据实施例,应用服务器可以包括被定义以用于在运行时使用的一个或多个分区104。每个分区可以与全局唯一的分区标识符(ID)和分区配置相关联,并且还可以包括一个或多个资源组124,连同对资源组模板的引用126和/或分区特定的应用或资源128。域级资源组、应用和/或资源140也可以在域级被定义,可选地具有对资源组模板的引用。
每个资源组模板160可以定义一个或多个应用A 162、B 164、资源A 166、B 168和/或其它可部署的应用或资源170,并且可以由资源组来引用。例如,如图1中所示,分区104中的资源组124可以引用190资源组模板160。
一般而言,***管理员可以定义分区、域级资源组和资源组模板以及安全领域;而分区管理员可以例如通过创建分区级资源组、将应用部署到分区或者引用用于分区的具体领域来定义其自己的分区的方面。
图2进一步示出了根据实施例的、用于在应用服务器、云或其它环境中支持多租赁的***。
如图2中所示,根据实施例,分区202可以包括例如资源组205,资源组205包括对资源组模板210的引用206、虚拟目标(例如,虚拟主机)信息207以及可插拔数据库(PDB)信息208。资源组模板(例如,210)可以定义例如多个应用A 211和B 212,连同诸如Java消息服务器(JMS)服务器213、存储转发(SAF)代理215、邮件会话部件216或Java数据库连接(JDBC)资源217之类的资源。
图2中所示的资源组模板通过示例的方式被提供;根据其它实施例,可以提供不同类型的资源组模板和元素。
根据实施例,当分区(例如,202)内的资源组引用220特定的资源组模板(例如,210)时,与特定分区相关联的信息可以与所引用的资源组模板结合使用,以指示分区特定信息230,例如分区特定的PDB信息。然后,分区特定信息可以由应用服务器用来配置资源(例如PDB资源)以供分区使用。例如,与分区202关联的分区特定的PDB信息可以由应用服务器用来利用适当的PDB 238配置232容器数据库(CDB)236,以供该分区使用。
类似地,根据实施例,与特定分区相关联的虚拟目标信息可被用来定义239分区特定的虚拟目标240(例如,baylandurgentcare.com),以供该分区使用,然后可以使该分区特定的虚拟目标240经由统一资源定位符(URL)(例如,http://baylandurgentcare.com)可访问。
图3进一步示出了根据实施例的用于在应用服务器、云或其它环境中支持多租赁的***。
根据实施例,诸如config.xml配置文件之类的***配置被用来定义分区,该***配置包括用于与该分区相关联的资源组的配置元素,和/或其它分区特性。可以使用特性名称/值对来每分区地指定值。
根据实施例,多个分区可以在可以提供对CDB 243的访问并且经由web层244可访问的受管理的服务器/集群242或者类似环境内执行。这允许例如域或分区与(CDB的)PDB中的一个或多个PDB相关联。
根据实施例,多个分区中的每个分区(在该示例中为分区A 250和分区B 260)可被配置为包括与该分区相关联的多个资源。例如,分区A可被配置为包括资源组251,资源组251包含应用A1 252、应用A2 254和JMS A 256,连同与PDB A 259相关联的数据源A257,其中该分区可经由虚拟目标A 258访问。类似地,分区B 260可被配置为包括资源组261,资源组261包含应用B1 262、应用B2264和JMS B 266,连同与PDB B 269相关联的数据源B 267,其中该分区可经由虚拟目标B 268访问。
虽然上面的示例中的几个示例示出了CDB和PDB的使用,但是根据其它实施例,可以支持其它类型的多租户或非多租户数据库,其中可以例如通过模式的使用或不同数据库的使用来为每个分区提供特定的配置。
资源
根据实施例,资源是可被部署到环境的域的***资源、应用或者其它资源或对象。例如,根据实施例,资源可以是可被部署到服务器、集群或其它应用服务器目标的应用、JMS、JDBC、JavaMail、WLDF、数据源或者其它***资源或其它类型的对象。
分区
根据实施例,分区是可以与分区标识符(ID)和配置相关联、并且可以通过资源组和资源组模板的使用包含应用和/或参考域范围的资源的域的运行时和管理细分或切片。
一般而言,分区可以包含其自己的应用、经由资源组模板参考域范围的应用,并且具有其自己的配置。可分区的实体可以包括资源,例如JMS、JDBC、JavaMail、WLDF资源,以及其它部件,诸如JNDI命名空间、网络业务、工作管理器以及安全策略和领域。在多租户环境的上下文中,***可被配置为提供对于与租户相关联的分区的管理和运行时方面的租户访问。
根据实施例,分区内的每个资源组可以可选地引用资源组模板。分区可以具有多个资源组,并且这些资源组中的每个资源组可以引用资源组模板。每个分区可以定义用于在该分区的资源组所引用的资源组模板中未指定的配置数据的特性。这使得分区能够充当在资源组模板中定义的可部署资源到用于与该分区一起使用的具体值的绑定。在一些情况下,分区可以重写(override)由资源组模板指定的配置信息。
根据实施例,例如由config.xml配置文件定义的分区配置可以包括多个配置元素,例如:“partition(分区)”,其包含定义分区的属性和子元素;“resource-group(资源组)”,其包含被部署到分区的应用和资源;“resource-group-template(资源组模板)”,其包含由那个模板定义的应用和资源;“jdbc-system-resource-override(JDBC***资源重写)”,其包含数据库特定的服务名称、用户名和密码;以及“partition-properties(分区特性)”,其包含可用于资源组模板中的宏替换的特性键值。
在启动时,***可以使用由配置文件提供的信息以从资源组模板为每个资源生成分区特定的配置元素。
资源组
根据实施例,资源组是可以在域或分区级被定义并且可以引用资源组模板的可部署资源的命名的、完全限定的集合。资源组中的资源被认为是完全限定的,是因为管理员已提供了启动或连接到那些资源所需的信息中的所有信息,例如用于连接到数据源的凭据或者用于应用的定向信息。
***管理员可以在域级或者在分区级声明资源组。在域级,资源组提供了分组相关资源的方便的方式。***可以与未分组的资源相同地管理在域级资源组中声明的资源,以使得资源可以在***启动期间被启动,并且在***关闭期间被停止。管理员还可以单独地停止、启动或移除组中的资源,并且可以通过对组的操作来隐式地对组中的所有资源执行动作。例如,停止资源组停止该组中尚未停止的资源中的所有资源;启动资源组启动该组中尚未起动的任何资源;而移除资源组移除该组中包含的资源中的所有资源。
在分区级,受任何安全限制的影响,***或分区管理员可以在分区中配置零个或更多个资源组。例如,在SaaS用例中,各种分区级资源组可以参考域级资源组模板;而在PaaS用例中,不参考资源组模板的分区级资源组可以被创建,但是替代地表示将仅在该分区内可用的应用及其相关资源。
根据实施例,资源分组可被用来将应用和它们使用的资源分组在一起作为域内的不同管理单元。例如,在下面描述的医疗记录(MedRec)应用中,资源分组定义MedRec应用及其资源。多个分区可以运行相同的MedRec资源组,每个分区利用分区特定的配置信息,以使得作为每个MedRec实例的一部分的应用特定于每个分区。
资源组模板
根据实施例,资源组模板是在域级定义的、可以从资源组引用的可部署资源的集合,并且激活其资源所需的信息中的一些信息可以不被存储为模板本身的一部分,以使得其支持分区级配置的规范。域可以包含任何数量的资源组模板,这些资源组模板中的每个资源组模板可以包括例如一个或多个相关的Java应用和这些应用所依赖的资源。关于这些资源的信息中的一些信息可以是跨所有分区相同的,而其它信息可以依分区而不同。并非所有配置都需要在域级指定——分区级配置可以替代地通过宏或特性名称/值对的使用在资源组模板中指定。
根据实施例,特定的资源组模板可以由一个或多个资源组引用。一般而言,在任何给定的分区内,资源组模板可以一次由一个资源组引用,即,不由同一分区内的多个资源组同时引用;然而,它可以由不同分区中的另一资源组同时引用。包含资源组的对象(例如域或分区)可以使用特性名称/值指派来设置资源组模板中任何标记(token)的值。当***使用引用的资源组激活资源组模板时,它可以用在资源组的包含对象中设置的值替换这些标记。在一些情况下,***还可以使用静态配置的资源组模板和分区来为每个分区/模板组合生成运行时配置。
例如,在SaaS用例中,***可以多次激活相同的应用和资源,包括一次为了将使用它们的每个分区的激活。当管理员定义资源组模板时,他们可以使用标记来表示将在其它地方提供的信息。例如,在连接到CRM相关的数据资源中使用的用户名可以在资源组模板中被指示为\${CRMDataUsername}。
租户
根据实施例,在诸如多租户(MT)应用服务器环境之类的多租户环境中,租户是可以由一个或多个分区和/或一个或多个租户感知的应用表示或以其它方式与一个或多个分区和/或一个或多个租户感知的应用相关联的实体。
例如,租户可以表示诸如不同的外部公司或特定企业内的不同部门(例如,HR部门和财务部门)之类的不同的用户组织,这些用户组织中的每个用户组织可以与不同的分区相关联。租户全局唯一身份(租户ID)是特定用户在特定时刻与特定租户的关联。***可以从用户身份例如通过参考用户身份仓库(store)来导出特定用户属于哪个租户。用户身份使***能够实施用户被授权执行的那些动作,包括但不限于用户可以属于哪个租户。
根据实施例,***实现将不同租户的管理和运行时彼此隔离。例如,租户可以配置他们的应用的一些行为,以及他们可以访问的资源。***可以确保特定的租户不能管理属于另一租户的工件(artifact);并且在运行时代表特定租户工作的应用仅参考与那个租户相关联的资源,而不参考与其他租户相关联的资源。
根据实施例,非租户感知的应用是不包含显示处理租户的逻辑的应用,以使得不管哪个用户提交了该应用正在对其进行响应的请求,该应用使用的任何资源都可以是可访问的。相比之下,租户感知的应用包括显式处理租户的逻辑。例如,基于用户的身份,应用可以导出用户所属的租户并且使用该信息来访问租户特定的资源。
根据实施例,***使用户能够部署被显式写为租户感知的的应用,以使得应用开发者可以获得当前租户的租户ID。然后,租户感知的应用可以使用租户ID来处理正在使用应用的单个实例的多个租户。
例如,支持单个医生的办公室或医院的MedRec应用可以暴露给两个不同的分区或租户(例如,湾地紧急护理(Bayland Urgent Care)租户和山谷健康(Valley Health)租户),这些不同的分区或租户中的每个能够访问诸如分开的PDB之类的分开的租户特定的资源,而无需改变底层应用代码。
示例性域配置和多租户环境
根据实施例,应用可以在域级被部署到资源组模板,或者被部署到范围为分区或范围为域的资源组。可以使用每应用或每分区指定的部署计划重写应用配置。部署计划也可以指定为资源组的一部分。
图4示出了根据实施例的、用于与示例性多租户环境一起使用的域配置。
根据实施例,当***启动分区时,它根据所提供的配置创建到各自的数据库实例的虚拟目标(例如,虚拟主机)和连接池,这包括为每个分区创建一个虚拟目标和连接池。
通常,每个资源组模板可以包括一个或多个相关的应用和那些应用所依赖的资源。通过提供资源组模板中的可部署资源到与分区相关联的具体值的绑定,每个分区可以提供在它所参考的资源组模板中没有指定的配置数据;在一些情况下,这包括重写由资源组模板指定的某些配置信息。这使得***能够使用每个分区已定义的特性值为每个分区以不同方式激活由资源组模板表示的应用。
在一些实例中,分区可以包含不参考资源组模板或直接定义它们自己的分区范围的可部署资源的资源组。在分区内定义的应用和数据源一般仅对于该分区是可用的。资源可以被部署以使得可以使用分区:<分区名称>/<资源JNDI名称>或者域:<资源JNDI名称>从跨分区来访问它们。
例如,MedRec应用可以包括多个Java应用、数据源、JMS服务器和邮件会话。为了为多个租户运行MedRec应用,***管理员可以定义单个MedRec资源组模板286,在该模板中声明那些可部署资源。
与域级的可部署资源相比,在资源组模板中声明的可部署资源可能未在模板中完全配置,或者不能按原样被激活,因为它们缺少一些配置信息。
例如,MedRec资源组模板可以声明由应用使用的数据源,但是它可以不指定用于连接到数据库的URL。与不同租户相关联的分区(例如分区BUC-A 290(湾地紧急护理,BUC)和分区VH-A 292(山谷健康,VH))可以通过各自包括引用296、297MedRec资源组模板的MedRec资源组293、294来引用一个或多个资源组模板。然后,该引用可被用来创建302、306用于每个租户的虚拟目标/虚拟主机,包括与BUC-A分区相关联的虚拟主机baylandurgentcare.com304,以供湾地紧急护理租户使用;以及与VH-A分区相关联的虚拟主机valleyhealth.com 308,以供山谷健康租户使用。
图5进一步示出了根据实施例的示例性多租户环境。如图5中所示,并且继续其中两个分区引用MedRec资源组模板的来自上文的示例,根据实施例,服务器端小程序(servlet)引擎310可被用来支持多个租户环境,在这个示例中是湾地紧急护理医师(Bayland Urgent Care Physician)租户环境320和山谷健康医师(Valley HealthPhysician)租户环境330。
根据实施例,每个分区321、331可以定义在其上接受用于该租户环境的传入业务的不同虚拟目标,以及用于连接到该分区及其资源324、334的不同URL 322、332,在这个示例中分别包括湾地紧急护理数据库或山谷健康数据库。数据库实例可以使用兼容模式,因为相同的应用代码将对这两个数据库都执行。当***启动分区时,它可以创建到各自的数据库实例的虚拟目标和连接池。
分区迁移
根据实施例,本文描述了用于多租户应用服务器环境中的分区迁移的***和方法。每个资源组或包括该资源组的分区可以与定义那个资源组或分区应当被定向和部署到的目标的虚拟目标(例如,虚拟主机)信息相关联。web层部件(例如,Oracle TrafficDirector)包括路由信息,其将用于特定分区的虚拟目标映射到诸如服务器或集群之类的对应目标,使得对那个分区的请求例如作为一个或多个会话的一部分被引导到适当的目标。当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,以使得对那个分区的后续请求被引导到新目标。
根据实施例,分区迁移可以用来提供无缝迁移,包括当分区从一个目标迁移到另一个目标时,保持与分区相关联的会话的状态。这在例如确保客户应用不会由于底层计算基础设施的问题而中断中可以是有用的。
图6示出了根据实施例的、在应用服务器、云或其它环境中的分区迁移的使用。如图6中所示,根据实施例,第一或原始目标集群A402可以包括一个或多个分区,该一个或多个分区包括与分区配置406以及一个或多个分区特定的资源组、应用或资源408相关联的特定分区A 404。
可选地,分区可以引用资源组模板410。
每个资源组或包括那个资源组的分区可以与定义那个资源组或分区应当被定向和部署到的目标(诸如虚拟目标A 420)的虚拟目标(例如,虚拟主机)信息相关联。web层部件(例如,诸如Oracle Traffic Director之类的业务导向器)430包括路由信息432,其将用于特定分区的虚拟目标映射到诸如服务器或集群之类的对应目标,以使得对那个分区的请求例如作为一个或多个会话434的一部分被引导到适当的目标。
如进一步所示,***可以包括分区可以被部署到的第二或新目标集群B 442。
图7进一步示出了根据实施例的、在应用服务器、云或其它环境中的分区迁移的使用。如图7中所示,根据实施例,可以接收将特定分区和当前在其上操作的任何会话从原始目标迁移444到新目标的指示。通常,***将只在与特定虚拟目标相关联的目标之间迁移分区,例如在与特定虚拟目标相关联的不同集群成员之间(而不是在不同的虚拟目标之间)迁移分区。
作为响应,特定分区被迁移,包括在原始目标和新目标之间复制会话信息,以及向web层部件提供修正的路由信息446,该修正的路由信息446将用于特定分区的虚拟目标映射到新目标,以使得对那个分区的后续请求被引导448到新目标。
例如,根据实施例,应用服务器环境可以通知业务导向器(例如,OTD)特定计算机集群将很快关闭(例如,由于维护或故障转移原因),并且指示业务导向器开始向预期的新集群发送请求。同时,应用服务器可以将会话信息复制到新集群。一旦会话复制完成,应用服务器环境可以通知业务导向器从其配置中移除降级的计算机集群,然后该降级的计算机集群还可以从任何资源组定向中被移除。
根据实施例,当集群被用作目标时,***执行会话的在线(live)迁移。当计算机服务器被用作目标时,可以禁用在线迁移功能,并且可以使用用户控制的手动迁移,从而可以向用户通知任何可能的停机时间或会话信息的丢失。
图8示出了根据实施例的、在应用服务器、云或其它环境中使用分区迁移的方法。如图8中所示,根据实施例,在步骤460处,提供包括用于软件应用的执行的域以及一个或多个分区和资源组的应用服务器环境,其中每个分区提供域的管理和运行时细分并且可以包括一个或多个资源组,并且其中每个资源组是可以引用资源组模板的可部署应用或资源的集合。
在步骤462处,每个资源组或包括那个资源组的分区可以与定义那个资源组或分区应当被定向和部署到的目标的虚拟目标(例如,虚拟主机)信息相关联。
在步骤464处,接收到将特定分区和当前在其上操作的任何会话从原始目标迁移到新目标的指示。
在步骤466处,迁移特定分区,包括在原始目标和新目标之间复制会话信息,并且向web层部件(例如,诸如Oracle Traffic Director之类的业务导向器)提供修正的路由信息,该修正的路由信息将用于特定分区的虚拟目标映射到新目标,以使得对那个分区的后续请求被引导到新目标。
示例实施方式
为了说明的目的,下面提供描述示例性实施例的附加细节。
在线迁移概述(用于http和t3业务)
根据实施例,在在线迁移期间,资源组正在运行。管理员使用例如JMX命令启动资源组迁移,并且指定虚拟目标mbean、现有目标和新目标作为参数。新目标被添加到虚拟目标,并且资源被部署到新目标。如果抛出验证错误,则操作终止,并通知用户关闭源资源组并且执行非在线迁移。如果当前和新目标是集群,则启动用于会话复制和T3重新路由的集群API。启动用于OTD重新路由的LCM API,其在内部确定OTD是否正在前端处理(front-ending)该资源组(多个资源组)。使用用于指定目标的资源组平滑关闭(gracefulshutdown)来启动定向到旧目标的应用/资源的平滑关闭。用于虚拟目标的mbean配置被更新以移除旧目标。
非在线迁移概述(用于http和t3业务)
根据实施例,在非在线迁移期间,资源组不在运行。WLS管理员使用例如JMX命令启动资源组迁移,并指定虚拟目标mbean、现有目标、新目标作为参数。旧目标从虚拟目标中移除并且新目标被添加到虚拟目标,该虚拟目标在内部将资源/应用部署到新目标。启动用于OTD更新的LCM API,其在内部确定OTD是否正在前端处理该资源组(多个资源组)。
资源组迁移API
根据实施例,将使用新服务PortablePartitionManagerMbean来启动迁移。
ResourceGroupMigrationTask=migrateResourceGroup(TargetMBeanVirtualTarget,TargetMBean currentTarget,TargetMBean newTarget,long timeout);
如果在对同一虚拟目标正在进行另一迁移调用的同时启动新的迁移调用,则将抛出验证异常。在一个资源组中启动两个同时的迁移进程是不可能的。ResourceGroupMigrationTask包含关于该长时间运行进程的状态的信息。
向虚拟目标添加新目标
根据实施例,在在线迁移的情况下,新目标被添加到虚拟目标,并且RG中的应用和资源被部署在新目标上。如果任何应用或资源不支持多定向,则它们将抛出验证异常。在这种情况下,迁移操作将终止,报告资源组不支持在线迁移,并且RG必须首先被关闭以进行非在线迁移。
会话复制和T3重新路由
根据实施例,在新目标被添加之后,WLS-MT集群会话复制特征可以被用来同步旧集群和新集群之间的会话,其中会话状态被拷贝到新拓扑中的一些服务器-新目标。在那之后,回调事件被发送,但是进程继续同步已更改的会话。迁移集群子***向所有连接的t3客户机通知关于目标的改变。T3客户机将从目标重新连接到新的url,并且透明地继续其与迁移的应用的通信。在整个集群应当关闭的情况下,客户机应当具有到达公知地址并且重新发现要路由到的新集群的能力。
使用WLS-MT生命周期的HTTP业务重新路由
根据实施例,迁移功能可以为了迁移而利用生命周期模块的可用性,该生命周期模块试图跨用不同语言、并且使用用于配置和管理的不同体系架构独立开发的部件来提供配置集成。
无缝情况
根据实施例,在无缝情况期间,应用服务器将利用分区迁移REST调用来调用LCM:
//迁移与环境相关联的所有分区
POST
/management/lifecycle/latest/environments/{name}/partitions/{id}/migrate
有效载荷(payload)将包含分区在其中被部署的新集群的细节以及又将调用用于OTD中的配置改变的OTD插件的阶段:start-migrate。以下是如在OTD功能规范中规定的、在OTD侧发生的步骤。
当启动分区迁移时,用于该分区的相关联的虚拟服务器的obj.conf配置中的路由条目将被修改以列出除了将处理新请求的现有池之外的新的源服务器池。现有池(旧池或排放池(drain pool))将只处理对其源服务器的粘性请求。
在这种配置改变之后,对于对那个分区的每个请求,OTD将首先检查它是否是粘性请求,以及预期处理该请求的源服务器是否是旧源服务器池的一部分。
如果是,则该请求被路由到旧池的特定源服务器。如果该旧的源服务器不是活动的,则该请求将被路由到旧池的另一源服务器。
如果请求不是粘性请求,则它被路由到新的源服务器池。
旧池将继续处理粘性请求,直到配置被修改以移除旧池条目。在适当时间处关闭池的排放将是管理员的责任。
WLS将利用指定阶段:end-migrate的第二分区迁移REST调用来调用LCM,阶段:end-migrate又将调用用于OTD中的配置改变的OTD插件。
非无缝情况
根据实施例,在无缝情况期间,应用服务器将利用分区更新REST调用来调用LCM。
//更新与环境相关联的所有分区
POST
/management/lifecycle/latest/environments/{name}/partitions/{id}/update
有效载荷将包含分区在其中被部署的新集群的细节。LCM将把调用委派(delegate)给OTD插件,以更新用于那个分区的OTD配置。
平滑关闭
根据实施例,在该阶段期间,使用资源组关闭特征为指定的(旧)目标启动对资源组的平滑关闭。这将允许处理飞行中的(inflight)工作。这将减少来自诸如JMS消息、运行作业、计划任务和JTA事务之类的单例(singleton)服务的未处理状态的问题。资源容器以不同的方式处理其相关的停止/挂起调用。例如,数据源容器将进行其资源从事务管理器的完全注销,而JMS容器将不会执行注销,而是将阻止进一步的请求/消息处理。所有资源容器在取消部署期间进行执行注销调用。各种资源容器的注销行为不同,然而总是存在容器将借此等待未决事务完成的至少一个平滑期。
确保所有JTA事务完成
在通常情况下,当发生资源组迁移时,涉及所涉及的资源的所有事务在迁移发生之前将已完成。在用于给定资源的所有事务在平滑期结束时没有完成的罕见的情况下(如果例如数据库在启动资源组迁移的同时对于延长的时间段变得不可用,则情况将是这样),资源仍然可以被迁移。这是由于资源迁移被限制到单个域并且原始服务器可以在其新位置中找到该资源并且执行恢复的事实。
EJB存根(Stubs)
对于集群EJB和RMI,使用对象的副本感知(replica-aware)存根来完成RG迁移。当客户机通过副本感知存根对失效的服务做出调用时,存根检测到故障并且对另一副本重试该调用。如果主服务器失效,则客户机的EJB存根自动将进一步的请求重定向到辅助应用服务器实例。这时,辅助服务器使用复制的状态数据创建新的EJB实例,并且处理在辅助服务器上继续。如果客户机被误导(不正确的主/辅助服务器信息),则会话复制框架将采用会话状态查询协议来确定托管副本的服务器,并将把该信息发送回给客户机存根。然后客户机存根将把其请求重定向到托管副本的服务器。
JMS
如果管理员尝试启动具有JMS配置的资源组的迁移,则将抛出验证异常。将向管理员显示在迁移之前关闭资源组的消息。为了避免在RG迁移期间数据丢失,在取消部署或移除JMS服务器或SAF代理之前,应用消息应该被完全排放并且所有未决事务应当完成。因此,管理员的工作是确保在启动资源组关闭之前完成所有排放。在资源组迁移完成之后,管理员的工作是然后重启资源组。
MBean配置改变
根据实施例,当应用停止或达到超时时,然后资源组的目标,即虚拟目标被更新以移除旧集群。这是迁移过程的最后步骤。
可以使用包括根据本公开内容的教导编程的一个或多个处理器、存储器和/或计算机可读存储媒介的一个或多个常规的通用或专用数字计算机、计算设备、机器或微处理器来方便地实现本发明。如对软件领域的技术人员将显而易见的,基于本公开的教导,熟练的程序员可以容易地准备适当的软件编码。
在一些实施例中,本发明包括计算机程序产品,该计算机程序产品是具有存储在其上/其中的可以被用于对计算机进行编程以执行本发明的过程中的任何过程的指令的非暂态存储介质或计算机可读介质(媒介)。存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器以及磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪存存储器设备、磁卡或光卡、纳米***(包括分子存储器IC),或适于存储指令和/或数据的任何类型的介质或设备。
出于说明和描述的目的提供了本发明的上述描述。它并不旨在是详尽的或者将本发明限制到所公开的精确形式。许多修改和变化对于本领域技术人员来说将是明显的。实施例被选择和描述以便于最佳地解释本发明的原理及其实践应用,从而使得本领域其他技术人员能够对于各种实施例以及利用适合所设想的特定使用的各种修改来理解本发明。旨在由以下权利要求和它们的等价物来限定本发明的范围。

Claims (17)

1.一种用于支持应用服务器环境中的分区迁移的***,包括:
一个或多个计算机,所述一个或多个计算机包括具有用于软件应用的执行的域、以及一个或多个分区和资源组的应用服务器环境,
其中每个分区提供域的管理和运行时细分并且能够包括一个或多个资源组;
其中每个资源组是能够引用资源组模板的可部署应用或资源的集合,因此与分区相关联的信息能够与所引用的资源组模板结合使用,以指示由应用服务器用来配置供该分区使用的资源的分区特定信息;以及
其中多个分区能够各自使用分区特定的配置信息来运行相同的资源组;
其中每个资源组或包括该资源组的分区能够与定义该资源组或分区应当被定向和部署到的目标的虚拟目标信息相关联;以及
其中web层部件包括路由信息,所述路由信息将用于特定分区的虚拟目标映射到对应目标,以使得对该分区的请求被引导到适当的目标。
2.根据权利要求1所述的***,其中所述对应目标包括服务器或集群。
3.根据权利要求1所述的***,其中所述应用服务器或云环境包括Java EE应用服务器。
4.根据权利要求1至3中任何一项权利要求所述的***,其中当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,以使得对该分区的后续请求被引导到所述新目标。
5.根据权利要求1至3中任何一项权利要求所述的***,其中所述***在云环境内被提供,以支持在所述云环境内操作的多个租户,包括***能够将一个或多个分区与租户相关联,以供所述租户使用。
6.一种用于支持应用服务器环境中的分区迁移的方法,包括:
在一个或多个计算机处,提供具有用于软件应用的执行的域、以及一个或多个分区和资源组的应用服务器环境,
其中每个分区提供域的管理和运行时细分并且能够包括资源组;
其中每个资源组是能够引用资源组模板的可部署应用或资源的集合,因此与分区相关联的信息能够与所引用的资源组模板结合使用,以指示由应用服务器用来配置供该分区使用的资源的分区特定信息;以及
其中多个分区能够各自使用分区特定的配置信息来运行相同的资源组;
其中每个资源组或包括该资源组的分区能够与定义该资源组或分区应该被定向和部署到的目标的虚拟目标信息相关联;以及
其中web层部件包括路由信息,所述路由信息将用于特定分区的虚拟目标映射到对应目标,以使得对该分区的请求被引导到适当的目标。
7.根据权利要求6所述的方法,其中所述对应目标包括服务器或集群。
8.根据权利要求6所述的方法,其中所述应用服务器或云环境包括Java EE应用服务器。
9.根据权利要求6至8中任何一项权利要求所述的方法,其中当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,以使得对该分区的后续请求被引导到所述新目标。
10.根据权利要求6至8中任何一项权利要求所述的方法,其中所述方法在云环境内执行,以支持在所述云环境内操作的多个租户,包括***能够将一个或多个分区与租户相关联,以供所述租户使用。
11.一种计算设备,包括:
一个或多个处理器;以及
计算机可读存储介质,所述计算机可读存储介质包括存储在其上的机器可读格式的程序指令,当所述程序指令被所述一个或多个处理器执行时,使所述一个或多个处理器执行如权利要求6至10中任何一项权利要求所述的方法。
12.一种包括用于执行如权利要求6至10中任何一项权利要求所述的方法的部件的装置。
13.一种非暂态计算机可读存储介质,包括存储在其上的指令,当所述指令被一个或多个计算机读取和执行时,使得所述一个或多个计算机执行步骤,包括:
提供具有用于软件应用的执行的域、以及一个或多个分区和资源组的应用服务器环境,
其中每个分区提供域的管理和运行时细分并且能够包括资源组;
其中每个资源组是能够引用资源组模板的可部署应用或资源的集合,因此与分区相关联的信息能够与所引用的资源组模板结合使用,以指示由应用服务器用来配置供该分区使用的资源的分区特定信息;以及
其中多个分区能够各自使用分区特定的配置信息来运行相同的资源组;
其中每个资源组或包括该资源组的分区能够与定义该资源组或分区应当被定向和部署到的目标的虚拟目标信息相关联,以及
其中web层部件包括路由信息,所述路由信息将用于特定分区的虚拟目标映射到对应目标,以使得对该分区的请求被引导到适当的目标。
14.根据权利要求13所述的非暂态计算机可读存储介质,其中所述对应目标包括服务器或集群。
15.根据权利要求13所述的非暂态计算机可读存储介质,其中所述应用服务器或云环境包括Java EE应用服务器。
16.根据权利要求13至15中任何一项权利要求所述的非暂态计算机可读存储介质,其中当迁移特定分区时,在原始目标和新目标之间复制会话信息,并且向web层部件提供修正的路由信息,以使得对该分区的后续请求被引导到新目标。
17.根据权利要求13至15中任何一项权利要求所述的非暂态计算机可读存储介质,其中所述应用服务器环境在云环境内提供,以支持在所述云环境内操作的多个租户,包括***能够将一个或多个分区与租户相关联,以供所述租户使用。
CN201580033971.9A 2014-06-23 2015-06-23 用于多租户应用服务器环境中的分区迁移的***和方法 Active CN106471472B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462016035P 2014-06-23 2014-06-23
US62/016,035 2014-06-23
US201462055106P 2014-09-25 2014-09-25
US62/055,106 2014-09-25
PCT/US2015/037264 WO2015200374A1 (en) 2014-06-23 2015-06-23 System and method for partition migration in a multitenant application server environment

Publications (2)

Publication Number Publication Date
CN106471472A CN106471472A (zh) 2017-03-01
CN106471472B true CN106471472B (zh) 2020-03-03

Family

ID=53511007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580033971.9A Active CN106471472B (zh) 2014-06-23 2015-06-23 用于多租户应用服务器环境中的分区迁移的***和方法

Country Status (6)

Country Link
US (1) US10439953B2 (zh)
EP (1) EP3158441A1 (zh)
JP (1) JP6615796B2 (zh)
KR (1) KR102399421B1 (zh)
CN (1) CN106471472B (zh)
WO (1) WO2015200374A1 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9961011B2 (en) 2014-01-21 2018-05-01 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US9973380B1 (en) 2014-07-10 2018-05-15 Cisco Technology, Inc. Datacenter workload deployment using cross-domain global service profiles and identifiers
EP3198426B1 (en) * 2014-09-26 2023-08-30 Oracle International Corporation System and method for transaction recovery 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
US10193867B2 (en) 2015-05-27 2019-01-29 Ping Identity Corporation Methods and systems for API proxy based adaptive security
US10296594B1 (en) 2015-12-28 2019-05-21 EMC IP Holding Company LLC Cloud-aware snapshot difference determination
US11023433B1 (en) * 2015-12-31 2021-06-01 Emc Corporation Systems and methods for bi-directional replication of cloud tiered data across incompatible clusters
US10146684B2 (en) * 2016-10-24 2018-12-04 Datrium, Inc. Distributed data parallel method for reclaiming space
US10681012B2 (en) 2016-10-26 2020-06-09 Ping Identity Corporation Methods and systems for deep learning based API traffic security
KR101989074B1 (ko) * 2017-08-10 2019-06-14 네이버 주식회사 데이터베이스 샤딩 환경에서의 복제 로그 기반의 마이그레이션
US10699010B2 (en) 2017-10-13 2020-06-30 Ping Identity Corporation Methods and apparatus for analyzing sequences of application programming interface traffic to identify potential malicious actions
US10462009B1 (en) * 2018-02-20 2019-10-29 Amazon Technologies, Inc. Replicating customers' information technology (IT) infrastructures at service provider networks
CN108829507B (zh) * 2018-03-30 2019-07-26 北京百度网讯科技有限公司 分布式数据库***的资源隔离方法、装置和服务器
US11190599B2 (en) 2018-06-27 2021-11-30 Oracle International Corporation Method and system for cloud service pre-provisioning
US10911367B2 (en) 2018-06-27 2021-02-02 Oracle International Corporation Computerized methods and systems for managing cloud computer services
US10785129B2 (en) 2018-06-27 2020-09-22 Oracle International Corporation Computerized methods and systems for maintaining and modifying cloud computer services
US11115344B2 (en) 2018-06-27 2021-09-07 Oracle International Corporation Computerized methods and systems for migrating cloud computer services
JP7132494B2 (ja) 2018-08-21 2022-09-07 富士通株式会社 マルチクラウド運用プログラム、およびマルチクラウド運用方法
EP3678348A1 (en) 2019-01-04 2020-07-08 Ping Identity Corporation Methods and systems for data traffic based adpative security
US10887380B2 (en) 2019-04-01 2021-01-05 Google Llc Multi-cluster ingress
US11907743B2 (en) 2019-05-21 2024-02-20 Oracle International Corporation System and method for relocating customer virtual machine instances in a multi-tenant cloud service
CN110287197B (zh) * 2019-06-28 2022-02-08 微梦创科网络科技(中国)有限公司 一种数据存储方法、迁移方法及装置
US11200095B2 (en) * 2019-09-23 2021-12-14 Open Text Holdings, Inc. System and method for an efficient and scalable multitenant implementation for content management services platforms, including cloud deployed content management services platforms
JP7112437B2 (ja) * 2020-01-21 2022-08-03 株式会社日立製作所 ストレージシステムおよびデータ移行方法
CN113253986B (zh) * 2021-05-31 2024-07-16 猫岐智能科技(上海)有限公司 新旧业务***混合设计方法及***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959370B2 (en) * 2003-01-03 2005-10-25 Hewlett-Packard Development Company, L.P. System and method for migrating data between memories
CN104462389A (zh) * 2014-12-10 2015-03-25 上海爱数软件有限公司 基于分级存储的分布式文件***实现方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101639835A (zh) 2008-07-30 2010-02-03 国际商业机器公司 多租户场景中应用数据库分区的方法和装置
US20110125979A1 (en) * 2009-11-25 2011-05-26 International Business Machines Corporation Migrating Logical Partitions
CN102170457A (zh) 2010-02-26 2011-08-31 国际商业机器公司 向应用的多租户提供服务的方法和装置
US8627426B2 (en) * 2010-04-26 2014-01-07 Vmware, Inc. Cloud platform architecture
US8572706B2 (en) * 2010-04-26 2013-10-29 Vmware, Inc. Policy engine for cloud platform
US8775626B2 (en) 2010-09-17 2014-07-08 Microsoft Corporation Using templates to configure cloud resources
US8402453B2 (en) * 2010-09-22 2013-03-19 Telefonaktiebolaget L M Ericsson (Publ) In-service software upgrade of control and line cards of network element
KR20120045586A (ko) 2010-10-29 2012-05-09 한국전자통신연구원 다중 테넌트용 SaaS 애플리케이션 설정 장치 및 방법
US8699499B2 (en) * 2010-12-08 2014-04-15 At&T Intellectual Property I, L.P. Methods and apparatus to provision cloud computing network elements
US8843501B2 (en) * 2011-02-18 2014-09-23 International Business Machines Corporation Typed relevance scores in an identity resolution system
JP5691062B2 (ja) * 2011-04-04 2015-04-01 株式会社日立製作所 仮想計算機の制御方法及び管理計算機
US9336060B2 (en) * 2011-06-17 2016-05-10 Microsoft Technology Licensing, Llc Middleware services framework for on-premises and cloud deployment
CN102333115A (zh) 2011-09-01 2012-01-25 杭州湾云计算技术有限公司 一种将已有Web应用转化为SaaS多租户应用的方法和装置
US8589481B2 (en) 2011-09-14 2013-11-19 Microsoft Corporation Multi tenant access to applications
US8635152B2 (en) 2011-09-14 2014-01-21 Microsoft Corporation Multi tenancy for single tenancy applications
US9442769B2 (en) * 2011-09-30 2016-09-13 Red Hat, Inc. Generating cloud deployment targets based on predictive workload estimation
US8892601B2 (en) * 2011-10-25 2014-11-18 Microsoft Corporation Creating web applications using cloud-based friction-free databases without requiring web hosting knowledge
CN102571916B (zh) 2011-12-02 2015-11-04 曙光信息产业(北京)有限公司 一种云存储空间的租赁软件的架构与操作方法
CN102609271B (zh) 2012-02-20 2014-09-10 山东大学 一种元数据驱动的SaaS应用的可视化定制方法及***
CN102571821A (zh) 2012-02-22 2012-07-11 浪潮电子信息产业股份有限公司 一种云安全访问控制模型
US8904402B2 (en) * 2012-05-30 2014-12-02 Red Hat, Inc. Controlling capacity in a multi-tenant platform-as-a-service environment in a cloud computing system
US8850432B2 (en) 2012-05-30 2014-09-30 Red Hat, Inc. Controlling utilization in a multi-tenant platform-as-a-service (PaaS) environment in a cloud computing system
CN103455512A (zh) 2012-05-31 2013-12-18 上海博腾信息科技有限公司 Saas平台多租户数据管理模型
US8984240B2 (en) * 2012-08-30 2015-03-17 International Business Machines Corporation Reducing page faults in host OS following a live partition mobility event
US9319285B2 (en) * 2012-11-09 2016-04-19 Unisys Corporation Optimizing partition placement in virtualized environments

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959370B2 (en) * 2003-01-03 2005-10-25 Hewlett-Packard Development Company, L.P. System and method for migrating data between memories
CN104462389A (zh) * 2014-12-10 2015-03-25 上海爱数软件有限公司 基于分级存储的分布式文件***实现方法

Also Published As

Publication number Publication date
JP6615796B2 (ja) 2019-12-04
KR20170023121A (ko) 2017-03-02
JP2017519309A (ja) 2017-07-13
KR102399421B1 (ko) 2022-05-19
WO2015200374A1 (en) 2015-12-30
EP3158441A1 (en) 2017-04-26
US20150372938A1 (en) 2015-12-24
CN106471472A (zh) 2017-03-01
US10439953B2 (en) 2019-10-08

Similar Documents

Publication Publication Date Title
CN106471472B (zh) 用于多租户应用服务器环境中的分区迁移的***和方法
US11880679B2 (en) System and method for supporting patching in a multitenant application server environment
US20230037542A1 (en) System and method for providing a cloud computing environment
US10853056B2 (en) System and method for supporting patching in a multitenant application server environment
US20210255934A1 (en) Automated disaster recovery system and method
US10187454B2 (en) System and method for dynamic clustered JMS in an application server environment
CN107077382B (zh) 在多租户应用服务器环境中进行事务恢复的***和方法
CN106471471B (zh) 用于在多租户应用服务器环境中支持分区的***和方法
CN107077389B (zh) 用于在多租户应用服务器环境中使用全局运行时的***和方法
CN106462833B (zh) 用于在多租户应用服务器环境中支持多个分区编辑会话的***和方法
US20160094406A1 (en) System and method for clustering in a multitenant application server environment
US10452387B2 (en) System and method for partition-scoped patching in an application server environment
US10769022B2 (en) Database backup from standby DB
US9667490B1 (en) Method for high availability of services in cloud computing systems
US11900099B2 (en) Reduced downtime during upgrade of an application hosted in a data center
US20230109215A1 (en) Expand and contract framework for reduced downtime during upgrade of an application hosted in a data center
US11563800B1 (en) Distributed semantic network for concurrent access to interconnected objects
US20230229478A1 (en) On-boarding virtual infrastructure management server appliances to be managed from the cloud
CN107533485B (zh) 用于对从多租户中间件应用调用的os程序进行多租户执行的***和方法
US20230229475A1 (en) Leader selection and revocation for tasks in a virtualized computing system
US20240020108A1 (en) Cluster partition handling during upgrade of a highly available application hosted in a data center
US20240126531A1 (en) Single node rolling online patching of a database server
WO2023059563A1 (en) Expand and contract framework for reduced downtime during upgrade of an application hosted in a data center
Orozco Oracle Enterprise Manager Ops Center Cloud Infrastructure API and CLI Reference Guide, 12c Release 2 (12.2. 0.0. 0) E38530-01

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