SlideShare a Scribd company logo
By : Vishwas Narayan
@vishwasnarayan5 Vishwas N
https://hacksterdude.web.app
Microservices
● Microservice architecture is a type of service-oriented
architecture in which an application is organised as a series of
loosely connected services.
● Microservices architecture is characterised by fine-grained
services and lightweight protocols.
● Communication through the well defined API’s
● This is a separate Business logic instead of one Problem
statement
User Interface
Business Logic
Data Access Layer
API CALL
LAYER
DATA BASE
User Interface
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
DB
DB DB
DB
DB
DB DB
DB DB DB
DB DB
DB DB
Advantages
● Greater agility
● Faster time to market
● Better scalability
● Faster development cycles (easier deployment and debugging)
● Easier to create a Cl/CD pipeline for single-responsibility
services
● Isolated services have better fault Tolerance
● Platform- and language agnostic services
● Cloud-readiness
In summary
● Microservices may be deployed individually, giving teams more
control.
● Microservices are scalable in their own right.
● Microservices decrease downtime by isolating faults.
● The smaller codebase allows teams to grasp the code more
quickly, making it easier to maintain.
Cons
● More collaboration is required (each team has to cover the
whole microservice lifecycle)
● Because of the architecture's complexity, it's more difficult to test
and monitor.
● Due to the requirement for microservices to communicate,
performance will suffer (network latency,message processing,
etc.)
● It's more difficult to keep the network up to date (has less fault
tolerance, needs more load balancing, etc.)
● Doesn't function until there's a strong company culture in place
(DevOps culture,automation practices,etc.)
● Concerns about security (harder to maintain transaction safety,
distributed communication goes wrong more likely,etc.)
CLI/API
Here is why I would love to use LinkerD
● Real-time platform health metrics
For any meshed task, instantly monitor
success rates, latencies, and request
volumes without making any configuration
changes.
● simpler than any mesh Minimalist design
that is inherent to Kubernetes. No hidden
magic, the least amount of YAML, and the
fewest CRDs.
● TLS with zero-config mutual
Any on-cluster TCP communication can
have mutual TLS added transparently and
without setup.
● Self-contained control plane, progressive data
deployment, and a tonne of diagnostic and
debugging tools—all designed by engineers,
for engineers.
● Drop-in features for dependability
To make your applications durable, add right
away latency-aware load balancing, request
retries, timeouts, and blue-green deployments.
● modern, lightweight Rust dataplane
Amazingly little and lightning quick Rust-based
Linkerd2-proxy micro-proxy for performance
and security.
open source
★ Just work : Don’t break apps and don’t require complex config.
★ Minimize resource requirements : Bare minimum perf (and resource!) hit.
★ Keep it simple : Operationally simple with low cognitive overhead. No magic.
Data plane: linkerd2-proxy. Written in Rust. <10ms RSS, < ims p99. (HEE!
Control plane: linkerd2. Written in Go. Includes small Prometheus (6 hour
window), Grafana, etc.
Has some Design Goals
Public API
CLI
Web
Tap
Destination
Identity
Proxy Injector
sp-validator
PROXY
Application
PROXY
Application
PROXY
Application
Control Plane
Data Plane
Business Logic Database
Sidecar
Sidecar
Sidecar
Sidecar
Sidecar
Public API
CLI
Web
Tap
Destination
Identity
Proxy Injector
sp-validator
PROXY
Application
PROXY
Application
PROXY
Application
Control Plane
Data Plane

More Related Content

linkerd.pdf

  • 1. By : Vishwas Narayan @vishwasnarayan5 Vishwas N https://hacksterdude.web.app
  • 2. Microservices ● Microservice architecture is a type of service-oriented architecture in which an application is organised as a series of loosely connected services. ● Microservices architecture is characterised by fine-grained services and lightweight protocols. ● Communication through the well defined API’s ● This is a separate Business logic instead of one Problem statement
  • 3. User Interface Business Logic Data Access Layer API CALL LAYER DATA BASE
  • 5. DB DB DB DB DB DB DB DB DB DB DB DB DB DB
  • 6. Advantages ● Greater agility ● Faster time to market ● Better scalability ● Faster development cycles (easier deployment and debugging) ● Easier to create a Cl/CD pipeline for single-responsibility services ● Isolated services have better fault Tolerance ● Platform- and language agnostic services ● Cloud-readiness
  • 7. In summary ● Microservices may be deployed individually, giving teams more control. ● Microservices are scalable in their own right. ● Microservices decrease downtime by isolating faults. ● The smaller codebase allows teams to grasp the code more quickly, making it easier to maintain.
  • 8. Cons ● More collaboration is required (each team has to cover the whole microservice lifecycle) ● Because of the architecture's complexity, it's more difficult to test and monitor. ● Due to the requirement for microservices to communicate, performance will suffer (network latency,message processing, etc.) ● It's more difficult to keep the network up to date (has less fault tolerance, needs more load balancing, etc.) ● Doesn't function until there's a strong company culture in place (DevOps culture,automation practices,etc.) ● Concerns about security (harder to maintain transaction safety, distributed communication goes wrong more likely,etc.)
  • 10. Here is why I would love to use LinkerD ● Real-time platform health metrics For any meshed task, instantly monitor success rates, latencies, and request volumes without making any configuration changes. ● simpler than any mesh Minimalist design that is inherent to Kubernetes. No hidden magic, the least amount of YAML, and the fewest CRDs. ● TLS with zero-config mutual Any on-cluster TCP communication can have mutual TLS added transparently and without setup. ● Self-contained control plane, progressive data deployment, and a tonne of diagnostic and debugging tools—all designed by engineers, for engineers. ● Drop-in features for dependability To make your applications durable, add right away latency-aware load balancing, request retries, timeouts, and blue-green deployments. ● modern, lightweight Rust dataplane Amazingly little and lightning quick Rust-based Linkerd2-proxy micro-proxy for performance and security.
  • 12. ★ Just work : Don’t break apps and don’t require complex config. ★ Minimize resource requirements : Bare minimum perf (and resource!) hit. ★ Keep it simple : Operationally simple with low cognitive overhead. No magic. Data plane: linkerd2-proxy. Written in Rust. <10ms RSS, < ims p99. (HEE! Control plane: linkerd2. Written in Go. Includes small Prometheus (6 hour window), Grafana, etc. Has some Design Goals