Automatic targeted system suspension based upon downstream system failure detection
First Claim
1. A system, comprising:
- one or more application servers, each application server configured to;
execute a plurality of composites of an application;
receive and process service requests from one or more upstream service providers; and
determine and initiate interactions with one or more downstream service providers, in response to the service requests received from the upstream service providers; and
a computing device configured to execute a system management module, the computing device comprising;
a processing unit comprising one or more processors;
one or more network interfaces communicatively coupled with the one or more processors; and
memory coupled with and readable by the processing unit and storing therein a set of instructions which, when executed by the processing unit, causes the computing device to;
receive data identifying a plurality of service requests received by the application from one or more upstream service providers;
receive data identifying a plurality of interactions initiated by the application and directed to one or more downstream service providers, wherein the plurality of interactions are initiated by the application during processing of the service requests received from the upstream service providers;
detect one or more faults within the plurality of interactions initiated by the application and directed to a first downstream service provider;
identify first circuit breaker conditions associated with the first downstream service provider;
determine that the one or more faults detected within the plurality of interactions initiated by the application and directed to the first downstream service provider, satisfy the first circuit breaker conditions;
identify at least one of the upstream service providers associated with the one or more faults; and
cause the application to suspend processing of requests from the identified upstream service providers, wherein causing the application to suspend processing of requests comprises;
(i) identifying one or more components of the application; and
(ii) causing the one or more components to stop accepting requests from the identified upstream service providers, said causing comprising at least one of;
(a) causing the one or more components to stop retrieving requests from an incoming queue associated with the identified upstream service providers, or (b) causing the one or more components to, in response to a receipt of a request message from an identified upstream service provider, transmit a response message indicating a denial of the request.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques described herein relate to automatic system suspension based upon downstream system failure in service-oriented architecture (SOA) applications. A system management module of a SOA system may be configured to detect a problem with a downstream service provider involved with a SOA application, and in response, automatically suspend particular processing within the application to prevent requests that may end up at the downstream service provider from entering the SOA application. The system management module may implement a circuit breaker module that maintains a circuit breaker structure specific to a downstream endpoint leading to a downstream service provider. Upon a triggering of a circuit breaker for a downstream endpoint, one or more upstream service providers are identified as associated with faulted traffic causing the triggering, and the system management module can automatically cause further traffic from these upstream service providers to be suspended.
-
Citations
20 Claims
-
1. A system, comprising:
-
one or more application servers, each application server configured to; execute a plurality of composites of an application; receive and process service requests from one or more upstream service providers; and determine and initiate interactions with one or more downstream service providers, in response to the service requests received from the upstream service providers; and a computing device configured to execute a system management module, the computing device comprising; a processing unit comprising one or more processors; one or more network interfaces communicatively coupled with the one or more processors; and memory coupled with and readable by the processing unit and storing therein a set of instructions which, when executed by the processing unit, causes the computing device to; receive data identifying a plurality of service requests received by the application from one or more upstream service providers; receive data identifying a plurality of interactions initiated by the application and directed to one or more downstream service providers, wherein the plurality of interactions are initiated by the application during processing of the service requests received from the upstream service providers; detect one or more faults within the plurality of interactions initiated by the application and directed to a first downstream service provider; identify first circuit breaker conditions associated with the first downstream service provider; determine that the one or more faults detected within the plurality of interactions initiated by the application and directed to the first downstream service provider, satisfy the first circuit breaker conditions; identify at least one of the upstream service providers associated with the one or more faults; and cause the application to suspend processing of requests from the identified upstream service providers, wherein causing the application to suspend processing of requests comprises; (i) identifying one or more components of the application; and (ii) causing the one or more components to stop accepting requests from the identified upstream service providers, said causing comprising at least one of;
(a) causing the one or more components to stop retrieving requests from an incoming queue associated with the identified upstream service providers, or (b) causing the one or more components to, in response to a receipt of a request message from an identified upstream service provider, transmit a response message indicating a denial of the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method, comprising:
-
receiving, by a system management module executing on a computing device, data identifying a plurality of service requests received by an application from one or more upstream service providers; receiving, by the system management module, data identifying a plurality of interactions initiated by the application and directed to one or more downstream service providers, wherein the plurality of interactions are initiated by the application during processing of the service requests received from the upstream service providers; detecting, by the system management module, one or more faults within the plurality of interactions initiated by the application and directed to a first downstream service provider; identifying, by the system management module, first circuit breaker conditions associated with the first downstream service provider; determining, by the system management module, that the one or more faults detected within the plurality of interactions initiated by the application and directed to the first downstream service provider, satisfy the first circuit breaker conditions; identifying, by the system management module, at least one of the upstream service providers associated with the one or more faults; and causing, by the system management module, the application to suspend processing of requests from the identified upstream service providers, wherein causing the application to suspend processing of requests comprises; (i) identifying one or more components of the application; and (ii) causing the one or more components to stop accepting requests from the identified upstream service providers, said causing comprising at least one of;
(a) causing the one or more components to stop retrieving requests from an incoming queue associated with the identified upstream service providers, or (b) causing the one or more components to, in response to a receipt of a request message from an identified upstream service provider, transmit a response message indicating a denial of the request. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method, comprising:
-
receiving, by a system management module executing on a computing device, data identifying a plurality of service requests received by an application from one or more upstream service providers; receiving, by the system management module, data identifying a plurality of interactions initiated by the application and directed to one or more downstream service providers, wherein the plurality of interactions are initiated by the application during processing of the service requests received from the upstream service providers; detecting, by the system management module, one or more faults within the plurality of interactions initiated by the application and directed to a first downstream service provider; identifying, by the system management module, first circuit breaker conditions associated with the first downstream service provider; determining, by the system management module, that the one or more faults detected within the plurality of interactions initiated by the application and directed to the first downstream service provider, satisfy the first circuit breaker conditions; identifying, by the system management module, at least one of the upstream service providers associated with the one or more faults; and causing, by the system management module, the application to suspend processing of requests from the identified upstream service providers, wherein causing the application to suspend processing of requests comprises; identifying one or more components of the application; and causing the one or more components to stop accepting requests from the identified upstream service providers; and wherein the identifying the one or more components of the application comprises identifying, for at least one of the identified upstream service providers, (i) a first component serving as an initial processing component within the application for the upstream service provider, and (ii) a second component after a last queue within the application preceding a point of exit to the downstream service provider. - View Dependent Claims (18, 19, 20)
-
Specification