Declarative service domain federation
First Claim
1. A method, in a distributed service-oriented data processing system, for declarative service domain federation, the method comprising:
- receiving, in a planning engine executing on a processor of a federation server within the service-oriented data processing system, a federation intent declaration comprising a federation rule, a quality-of-service policy, and a service group definition, wherein the federation rule specifies a verb, a subject, an object, and an adverb, wherein the verb specifies an action, wherein the subject specifies a set of services, wherein the object specifies a set of service domains, and wherein the adverb specifies how the federation is to be carried out;
automatically identifying, by the planning engine, a set of services based on the service group definition;
automatically generating, by the planning engine, a service visibility configuration and one or more service proxies based on the federation rule and the quality-of-service policy, wherein the visibility configuration enables service consumers to interact with service providers residing in different service domains and wherein the one or more service proxies enable a service consumer in a first service domain within a plurality of service domains to access a service in a second service domain within the plurality of service domains;
automatically deploying, by the planning engine, the visibility configuration to the plurality of service domains comprising the identified set of services;
automatically deploying, by the planning engine, the one or more service proxies to execute within connectivity middleware executing on at least one processor of the plurality of service domains within the service-oriented data processing system;
collecting, by a service monitor, performance metrics of federated services at runtime; and
dynamically adjusting the one or more service proxies to maintain quality-of-service objectives specified in the quality-of-service policy.
1 Assignment
0 Petitions
Accused Products
Abstract
A mechanism for declarative service domain federation uses a declarative approach to both the visibility aspect and the management aspect of service domain federation. Instead of manually exporting services, that is, selecting individual services from source domains to be visible in the target domain, using the present system, a federation architect uses a federation console to specify federation intent. The federation intent may include federation rule, query-based service group, and quality-of-service (QoS) policy. Based on the declared federation intent, a planning engine resolves the individual services based on the group query, generates the service visibility configuration, and creates the necessary service proxies and/or mediation objects to satisfy the goal. At runtime, a service monitor collects the performance metrics of federated services and dynamically adjusts the mediation/proxy configurations to maintain the QoS objectives specified by the federation architect.
21 Citations
22 Claims
-
1. A method, in a distributed service-oriented data processing system, for declarative service domain federation, the method comprising:
-
receiving, in a planning engine executing on a processor of a federation server within the service-oriented data processing system, a federation intent declaration comprising a federation rule, a quality-of-service policy, and a service group definition, wherein the federation rule specifies a verb, a subject, an object, and an adverb, wherein the verb specifies an action, wherein the subject specifies a set of services, wherein the object specifies a set of service domains, and wherein the adverb specifies how the federation is to be carried out; automatically identifying, by the planning engine, a set of services based on the service group definition; automatically generating, by the planning engine, a service visibility configuration and one or more service proxies based on the federation rule and the quality-of-service policy, wherein the visibility configuration enables service consumers to interact with service providers residing in different service domains and wherein the one or more service proxies enable a service consumer in a first service domain within a plurality of service domains to access a service in a second service domain within the plurality of service domains; automatically deploying, by the planning engine, the visibility configuration to the plurality of service domains comprising the identified set of services; automatically deploying, by the planning engine, the one or more service proxies to execute within connectivity middleware executing on at least one processor of the plurality of service domains within the service-oriented data processing system; collecting, by a service monitor, performance metrics of federated services at runtime; and dynamically adjusting the one or more service proxies to maintain quality-of-service objectives specified in the quality-of-service policy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a processor of a federation server within a service-oriented data processing system, causes the federation server to:
-
receive, in a planning engine executing on the processor of the federation server within a service-oriented data processing system, a federation intent declaration comprising a federation rule, a quality-of-service policy, and a service group definition, wherein the federation rule specifies a verb, a subject, an object, and an adverb, wherein the verb specifies an action, wherein the subject specifies a set of services, wherein the object specifies a set of service domains, and wherein the adverb specifies how the federation is to be carried out; automatically identify, by the planning engine, a set of services based on the service group definition; automatically generate, by the planning engine, a service visibility configuration and one or more service proxies based on the federation rule and the quality-of-service policy, wherein the visibility configuration enables service consumers to interact with service providers residing in different service domains and wherein the one or more service proxies enable a service consumer in a first service domain within a plurality of service domains to access a service in a second service domain within the plurality of service domains; automatically deploy, by the planning engine, the visibility configuration to the plurality of service domains comprising the identified set of services; automatically deploy, by the planning engine, the one or more service proxies to execute within connectivity middleware executing on at least one processor of the plurality of service domains within the service-oriented data processing system; collect, by a service monitor, performance metrics of federated services at runtime; and dynamically adjust the one or more service proxies to maintain quality-of-service objectives specified in the quality-of-service policy. - View Dependent Claims (12, 13, 14, 19, 20)
-
-
15. A federation server within a service-oriented data processing system, comprising:
-
a processor; and a memory coupled to the processor, wherein the memory comprises a planning engine comprising instructions which, when executed by the processor, cause the processor to; receive, in a planning engine executing on the processor of the federation server within a service-oriented data processing system, a federation intent declaration comprising a federation rule, a quality-of-service policy, and a service group definition, wherein the federation rule specifies a verb, a subject, an object, and an adverb, wherein the verb specifies an action, wherein the subject specifies a set of services, wherein the object specifies a set of service domains, and wherein the adverb specifies how the federation is to be carried out; automatically identify, by the planning engine, a set of services based on the service group definition; automatically generate, by the planning engine, a service visibility configuration and one or more service proxies based on the federation rule and the quality-of-service policy, wherein the visibility configuration enables service consumers to interact with service providers residing in different service domains and wherein the one or more service proxies enable a service consumer in a first service domain within a plurality of service domains to access a service in a second service domain within the plurality of service domains; automatically deploy, by the planning engine, the visibility configuration to the plurality of service domains comprising the identified set of services; automatically deploy, by the planning engine, the one or more service proxies to execute within connectivity middleware executing on at least one processor of the plurality of service domains within the service-oriented data processing system; collect, by a service monitor, performance metrics of federated services at runtime; and dynamically adjust the one or more service proxies to maintain quality-of-service objectives specified in the quality-of-service policy. - View Dependent Claims (16, 17, 18, 21, 22)
-
Specification