US 12,250,267 B2
System and method for supporting partitions in a multitenant application server environment
Rajiv Mordani, Sunnyvale, CA (US); Nazrul Islam, Santa Clara, CA (US); Joseph Di Pol, Sunnyvale, CA (US); Peter Bower, Hollis, NH (US); Timothy Quinn, Lake Forest, IL (US); Lawrence Feigen, Watchung, NJ (US); and Abhijit Kumar, Cupertino, CA (US)
Assigned to ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed by ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed on Oct. 17, 2022, as Appl. No. 17/967,683.
Application 17/967,683 is a continuation of application No. 14/748,094, filed on Jun. 23, 2015, granted, now 11,477,278.
Claims priority of provisional application 62/054,900, filed on Sep. 24, 2014.
Claims priority of provisional application 62/016,468, filed on Jun. 24, 2014.
Prior Publication US 2023/0032267 A1, Feb. 2, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 47/783 (2022.01); G06F 9/50 (2006.01); H04L 67/01 (2022.01); H04L 67/1025 (2022.01); H04L 47/70 (2022.01); H04L 67/10 (2022.01); H04L 67/1097 (2022.01)
CPC H04L 67/1025 (2013.01) [G06F 9/5072 (2013.01); G06F 9/5077 (2013.01); H04L 47/783 (2013.01); H04L 67/01 (2022.05); H04L 47/70 (2013.01); H04L 67/10 (2013.01); H04L 67/1097 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system for supporting multi-tenancy in a cloud or other computing environment, comprising:
one or more computers including one or more processors and a cloud computing environment executing thereon, and having a domain configuration that is used at runtime to define a domain for execution of software applications, and a plurality of partitions of the domain, wherein each partition defines configuration data which operates to bind a configuration of resources deployable within the domain to specific values associated with the partition;
wherein each partition is associated with one or more virtual targets, wherein an incoming request matching a virtual target is associated with a partition context and partition identifier and directed to applications in that partition;
wherein each partition-level resource group within a partition is associated with a virtual target information that defines a target to which that resource group is deployed, wherein each partition is bound to a partition-specific database resource for use by a tenant, including that:
a partition table is used to providing a mapping from one or more of a hostname to a partition name;
a first partition includes a first partition-level resource group that contains one or more resources or applications for use with the first partition and wherein the first partition-level resource group is bound to a first partition-specific database resource for use by a first tenant and is accessible via a first virtual target; and
a second partition includes a second partition-level resource group that contains one or more resources or applications for use with the second partition and wherein the second partition-level resource group is bound to a second partition-specific database resource for use by a second tenant and is accessible via a second virtual target;
wherein a resource group contained within a partition can reference a domain-level resource group that provides a collection of resources or applications that are shareable among the plurality of partitions, wherein the configuration data associated with the partition is used to bind the applications or resources shareable among the plurality of partitions and defined at the domain-level with the resource group contained within the partition;
wherein the first and second virtual targets associated with the first and second partition-level resource groups are mapped to one or more servers, for use in directing requests to the partitions; and
wherein software applications deployed to a particular partition execute at a virtual target and with the resources or applications associated with the particular partition, including wherein upon receipt of a request directed to the particular partition, the system adds the partition identifier to an execution context associated with the received request, and executes the request at the resources or applications contained within the particular partition's resource groups.