Smart endpoints and Dumb Pipes has been one of the design principles for microservices during the last decade. Responsibility of the network is to just transfer messages between Source to Destination. Responsibility of microservices is to handle Business logic, transformation, validations, and process the messages.
Architecture
Istio Circuit Breaker with Outlier Detection
Outlier Detection is an Istio Resiliency strategy to detect unusual host behavior and evict the unhealthy hosts from the set of load balanced healthy hosts inside a cluster. It automatically tracks the status of each individual host and checks metrics like consecutive errors and latency associated with service calls. If it finds outliers, it will automatically evict them.
Cloud Native Monitoring with Prometheus
Prometheus is an open source metrics-based monitoring and alerting system. In 2016 the Prometheus project became the second member of the Cloud Native Computing Foundation, after Kubernetes. It has a powerful query language(PromQL) with a multidimensional data model suited to store time series data.
Microservices Journey from Netflix OSS to Istio Service Mesh
Netflix OSS is a set of libraries & framework that Netflix open sourced to solve the issues with designing distributed systems at scale. In this blog post, you will understand the issues with the Netflix OSS libraries and why organizations are adapting the Sidecar Design pattern and Service Mesh technologies.
Eight Fallacies of Distributed Computing
The Eight Fallacies of Distributed Computing are a set of assumptions that developers make while designing Distributed Systems which might backfire and cause additional work and system redesign in the long run. Designing Distributed Systems is challenging and being aware of these eight fallacies will help you in architecting your systems better.