9 Resiliency patterns

 

This chapter covers

  • Making your Pulsar Functions-based applications resilient to adverse events
  • Implementing well-established resiliency patterns using Pulsar Functions

As the architect of the GottaEat order entry microservice, your primary goal is to develop a system that can accept incoming food orders from customers 24 hours a day, 7 days a week, and within a response time acceptable to the customer. Your system must be available at all times; otherwise, your company will not only lose revenue and customers, but its reputation will suffer as well. Therefore, you must design your system to be both highly available and resilient to provide continuity of service. Everyone wants their systems to be resilient, but what does that actually mean? Resilience is the ability of a system to withstand disruptions caused by adverse events and conditions, while maintaining an acceptable level of performance relative to any number of quantitative metrics, such as availability, capacity, performance, reliability, robustness, and usability.

9.1 Pulsar Functions resiliency

 

9.1.1 Adverse events

 
 

9.1.2 Fault detection

 

9.2 Resiliency design patterns

 

9.2.1 Retry pattern

 
 
 
 

9.2.2 Circuit breaker pattern

 
 

9.2.3 Rate limiter pattern

 
 
 

9.2.4 Time limiter pattern

 
 

9.2.5 Cache pattern

 
 

9.2.6 Fallback pattern

 
 
 
 

9.2.7 Credential refresh pattern

 

9.3 Multiple layers of resiliency

 
 
 

Summary

 
 
 
 
sitemap

Unable to load book!

The book could not be loaded.

(try again in a couple of minutes)

manning.com homepage
test yourself with a liveTest