Watchdog
Applications cope with failures automatically by monitoring and replacing application component instances if the provider-assured availability is insufficient.
How can applications automatically detect failing application components and handle their replacement? |
Context
If a Distributed Application is comprised of many application components it is dependent on the availability of all component instances. To enable high availability under such conditions, applications have to rely on redundant application component instances and the failure of these instances has to be detected and coped with automatically.
Solution
Individual application components rely on external state information by implementing the Stateless Component pattern. Components are scaled out and multiple instances of them are deployed to redundant resources. The component instances are monitored by a separate Watchdog component and replaced in case of failures.
Related Patterns
Elasticity Manager, Elastic Load Balancer, Resiliency Management Process, Transaction-based Processor, Timeout-based Message Processor, Idempotent Processor