Cloud Native
Cloud Native
- Promotes OpenSource
- MicroService Architecture
- Containers and container orchestration tools (Read: Docker and K8s)
- Agility
- Automation
It is also about
- Infrastructure as a code
- CI/CD pipeline
- Monitoring tools
Cloud Computing
- On demand computing on Internet
- Minimal Mgmt efforts
- Cost effective due to economies of scale.
Serverless
- cloud-computing execution model
- dynamically managing resources.
- Pricing is based on resources consumed
- application, run in managed, ephemeral containers on a “Functions as a Service” (FaaS) platform. ” - Reduced operational cost, complexity and engineering lead time
MicroService
- Software development technique
- A Variant of SOA
- loosely couples services
- fine grained services
- lightweight protocols
- modular design
Service Oriented Architecture
- Service reusability
- Easy maintenance
- Greater reliability
- Platform independence
MicroService Benefits
- Agility
- Fine-grained Scaling
- Technology Independence
- Parallel Development
- Better Fault Isolation
- Easier to Refactor
- Easy to Understand
- Faster Developer On boarding
Micro Service Architecture Challenges
- Operational Complexity
- Performance Hit Due to Network Latency
- Increased Configuration Management
- Unsafe Communication Medium
- Harder to Troubleshoot
- Architectural Complexity
- Higher Costs
- Duplication of Developer Effort
Cross cutting concerns
- Externalized configuration
- Logging
- Health checks
- Distributed tracing
- Boilerplate code for integrations with message broker, etc.
API Design
REST over HTTP using JSON is common choice
* One can have shared database among all services OR database per service.
Fault Tolerance
The Circuit Breaker pattern can prevent an application from repeatedly trying to execute an operation that's likely to fail. It allows services to recover and limit cascading failures across multiple systems
Log Aggregation
ELK
1. Logstash
2. Elastic Serach
3. Kibana
Distributed Tracing
The correlation ID helps to understand flow of events across services.
Securing Micro Services
1. JSON Web Token (JWT)
2. OAuth2. About resource access and sharing.
3. OpenID Connect. About user authentication. It is on top of OAuth2
K8S Deployment
https://container-solutions.com/kubernetes-deployment-strategies/
https://github.com/ContainerSolutions/k8s-deployment-strategies/
- Promotes OpenSource
- MicroService Architecture
- Containers and container orchestration tools (Read: Docker and K8s)
- Agility
- Automation
It is also about
- Infrastructure as a code
- CI/CD pipeline
- Monitoring tools
Cloud Computing
- On demand computing on Internet
- Minimal Mgmt efforts
- Cost effective due to economies of scale.
Serverless
- cloud-computing execution model
- dynamically managing resources.
- Pricing is based on resources consumed
- application, run in managed, ephemeral containers on a “Functions as a Service” (FaaS) platform. ” - Reduced operational cost, complexity and engineering lead time
MicroService
- Software development technique
- A Variant of SOA
- loosely couples services
- fine grained services
- lightweight protocols
- modular design
Service Oriented Architecture
- Service reusability
- Easy maintenance
- Greater reliability
- Platform independence
MicroService Benefits
- Agility
- Fine-grained Scaling
- Technology Independence
- Parallel Development
- Better Fault Isolation
- Easier to Refactor
- Easy to Understand
- Faster Developer On boarding
Micro Service Architecture Challenges
- Operational Complexity
- Performance Hit Due to Network Latency
- Increased Configuration Management
- Unsafe Communication Medium
- Harder to Troubleshoot
- Architectural Complexity
- Higher Costs
- Duplication of Developer Effort
Cross cutting concerns
- Externalized configuration
- Logging
- Health checks
- Distributed tracing
- Boilerplate code for integrations with message broker, etc.
API Design
REST over HTTP using JSON is common choice
* One can have shared database among all services OR database per service.
Fault Tolerance
The Circuit Breaker pattern can prevent an application from repeatedly trying to execute an operation that's likely to fail. It allows services to recover and limit cascading failures across multiple systems
Log Aggregation
ELK
1. Logstash
2. Elastic Serach
3. Kibana
Distributed Tracing
The correlation ID helps to understand flow of events across services.
Securing Micro Services
1. JSON Web Token (JWT)
2. OAuth2. About resource access and sharing.
3. OpenID Connect. About user authentication. It is on top of OAuth2
K8S Deployment
https://container-solutions.com/kubernetes-deployment-strategies/
https://github.com/ContainerSolutions/k8s-deployment-strategies/
0 comments:
Post a Comment