IP Library Granted Patent US 10,474,998
Granted Patent B2
US 10,474,998 · App. 14/865,767 · Granted Nov 12, 2019

System and method for messaging in a multitenant application server environment

Inventors: Dongbo Xiao (Edison, NJ); Thomas Barnes (Whitehouse, NJ); Lily He (Beijing, CN); Amy Kang (Mountain View, CA); Rich T. Lee (Morristown, NJ); David Zhao (Beijing, CN); Padmanabha Bhat (Bangalore, IN); Jigang Wang (Beijing, CN); Simon Meng (Beijing, CN); Sal Gambino (Ringoes, NJ)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06Q10/107
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,474,998
App. No.
14/865,767
Granted
Nov 12, 2019
Kind
B2
Abstract

In accordance with an embodiment, a system and method provides a messaging service in a multitenant application server environment. Deployable resources are usable within the multitenant application server environment and groupings of resources are defined by resource group templates within a domain. One or more partitions are provided, with each partition providing an administrative and runtime subdivision of the domain that can be associated with a tenant. Java message service (JMS) resources are defined within a resource group template or a resource group, and instantiated within a partition from the one or more partitions to enable messaging for applications deployed within the partition and between the one or more partition.

Claims (39)

1. A system for supporting messaging in an application server environment, comprising:

one or more computers having memory and at least one processor, including the application server environment executing thereon that enables deployment and execution of software applications,

wherein the application server environment includes a domain configuration that defines an application server domain for execution of the software applications, and a plurality of partitions of the application server domain;

a plurality of deployable resources available for use within the application server environment;

one or more resource groups that enable partition-specific information for one or more of the deployable resources;

wherein each partition of the plurality of partitions, is associated with a partition configuration and provides a subdivision of the application server domain, includes one or more of the resource groups, and is associated with a tenant;

wherein when a resource group of the one or more resource groups within a particular partition of the plurality of partitions references a resource group template, information associated with the particular partition is used in combination with the referenced resource group template, to indicate the partition-specific information for the one or more of the deployable resources;

one or more message service resources defined within a resource group, and instantiated within a partition from the plurality of partitions to enable messaging for applications deployed within the partition and between the plurality of partitions;

a work manager instantiated within the partition from the plurality of partitions, that ensures that an execute thread of a request being called will have a correct partition identity of the partition and that runs jobs with the partition identity of the partition on the execute thread, wherein the work manager is scoped to the partition to isolate threads from others of the plurality of partitions; and

whereupon the request being called in a context of the partition from the plurality of partitions, the work manager is provided for the partition from the plurality of partitions, so that the context of the partition from the plurality of partitions is provided in the execute thread when the request is executed.

2. The system of claim 1 , wherein the one or more message service resources are Java Message Service (JMS) resources and include JMS components that are fully partition scoped.

3. The system of claim 2 , wherein the one or more JMS resources includes JMS connection factories and their child resources associated with the partition for which they are configured.

4. The system of claim 2 , wherein the one or more JMS resources includes default connection factories available to applications in partitions.

5. A method for supporting messaging in an application server environment, comprising:

providing, at one or more computers having memory and at least one processor, the application server environment executing thereon that enables deployment and execution of software applications,

wherein the application server environment includes a domain configuration that defines an application server domain for execution of the software applications, and a plurality of partitions of the application server domain;

providing a plurality of deployable resources available for use within the application server environment; and

providing one or more resource groups that enable partition-specific information for one or more of the deployable resources;

wherein each partition of the plurality of partitions, is associated with a partition configuration and provides a subdivision of the application server domain, includes one or more of the resource groups, and is associated with a tenant;

wherein when a resource group of the one or more resource groups within a particular partition of the plurality of partitions references a resource group template, information associated with the particular partition is used in combination with the referenced resource group template, to indicate the partition-specific information for the one or more of the deployable resources;

providing one or more message service resources are defined within a resource group, and instantiated within a partition from the plurality of partitions to enable messaging for applications deployed within the partition and between the plurality of partitions; and

providing a work manager instantiated within the partition from the plurality of partitions, that ensures that an execute thread of a request being called will have a correct partition identity of the partition and that runs jobs with the partition identity of the partition on the execute thread, wherein the work manager is scoped to the partition to isolate threads from others of the plurality of partitions;

whereupon the request being called in a context of the partition from the plurality of partitions, the work manager is provided for the partition from the plurality of partitions, so that the context of the partition from the plurality of partitions is provided in the execute thread when the request is executed.

6. The method of claim 5 , wherein the one or more message service resources are Java Message Service (JMS) resources and include JMS components that are fully partition scoped.

7. The method of claim 6 , wherein the one or more JMS resources includes JMS connection factories and their child resources associated with the partition for which they are configured.

8. The method of claim 6 , wherein the one or more JMS resources includes default connection factories available to applications in partitions.

9. A non-transitory computer readable storage medium, including instructions stored thereon which when read and executed by one or more computers having memory and at least one processor cause the one or more computers to perform a method comprising:

providing an application server environment that enables deployment and execution of software applications,

wherein the application server environment includes a domain configuration that defines an application server domain for execution of the software applications, and a plurality of partitions of the application server domain;

providing a plurality of deployable resources available for use within the application server environment; and

providing one or more resource groups that enable partition-specific information for one or more of the deployable resources;

wherein each partition of the plurality of partitions, is associated with a partition configuration and provides a subdivision of the application server domain, includes one or more of the resource groups, and is associated with a tenant;

wherein when a resource group of the one or more resource groups within a particular partition of the plurality of partitions references a resource group template, information associated with the particular partition is used in combination with the referenced resource group template, to indicate the partition-specific information for the one or more of the deployable resources;

providing one or more message service resources are defined within a resource group, and instantiated within a partition from the plurality of partitions to enable messaging for applications deployed within the partition and between the plurality of partitions; and

providing a work manager instantiated within the partition from the plurality of partitions, that ensures that an execute thread of a request being called will have a correct partition identity of the partition and that runs jobs with the partition identity of the partition on the execute thread, wherein the work manager is scoped to the partition to isolate threads from others of the plurality of partitions;

whereupon the request being called in a context of the partition from the plurality of partitions, the work manager is provided for the partition from the plurality of partitions, so that the context of the partition from the plurality of partitions is provided in the execute thread when the request is executed.

10. The non-transitory computer readable storage medium of claim 9 , wherein the one or more message service resources are Java Message Service (JMS) resources and include JMS components that are fully partition scoped.

11. The non-transitory computer readable storage medium of claim 10 , wherein the one or more JMS resources includes JMS connection factories and their child resources associated with the partition for which they are configured.

12. The non-transitory computer readable storage medium of claim 10 , wherein the one or more JMS resources includes default connection factories available to applications in partitions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2015
From: XIAO, DONGBO; BARNES, THOMAS; HE, LILY; KANG, AMY; LEE, RICH T.; ZHAO, DAVID; BHAT, PADMANABHA; WANG, JIGANG; MENG, SIMON; GAMBINO, SAL
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 037064/0692 →
Continuity (2)
Provisional Application 62056439 · Sep 26, 2014
Related Publication 20160094510A1 · Mar 31, 2016
Cited By (3)
US 12,223,294 US 12,250,267 US 12,724,589