Microservices Design Patterns : https://vslive.com/Blogs/News-and-Tips/2018/02/Go-Fast-by-Going-Micro-Microservices-Design-Patterns-You-Should-Know.aspx
https://www.edureka.co/blog/microservices-design-patterns
Authentication & Authorization : https://medium.com/tech-tajawal/microservice-authentication-and-authorization-solutions-e0e5e74b248a
Learn to be a backend Developer : https://medium.com/tech-tajawal/modern-backend-developer-in-2018-6b3f7b5f8b9
Design Steps
- Identify object model
- Create Model URIs
- Determine Representations
- Assign HTTP Methods
JAX-RS 2.0 (Java API for RESTful
Services).
JAX-RS stands for JAVA API for RESTful Web Services
Caching
Has the following
attributes in the header
- Date
- Last Modified
- Cache Control - Public, Private, no-cache/no-store, max-age, must-revalidate
- Expires
- Age
- Scope microservices using Bounded Context
- Domain Driven Design- Bounded Context
- Ubiquitous Language
- N+1 problem - https://restfulapi.net/rest-api-n-1-problem/
- Asynchronous Web Services - Event Based
- Competing Worker Pattern
- Fanout Pattern
- Async API Call
- Architecture of API Based Microservice
- Functional Requirement
- Loosely coupled
- Independently changeable
- Independently deployable
- Support and honor contracts
- Technology Agnostic
- Stateless API
- API Architectural Styles
- Basic REST Implementation
- Following the rest constraints
- HTTP Protocol is followed
- Inherits the advantages of the Web
- Uses JSON/XML to send and receive data
- Uses Resource End point to communicate
- Uniform Resource Identifier
- Stateless
- Cacheable
- Example
- Pragmatic REST
- Not all resources would do CRUD Operation
- Some resources takes actions/Task
- Name these resources as Verbs instead of nouns
- HATEOAS REST
- RPC
- SOAP
- API Architectural Pattern
- Façade Pattern
- Proxy Pattern
- Stateless service pattern
- No State information maintained on server
- Clients maintain state
- State is send as part of the request
- Advantages: Help in scalability, performance and availability
- Composing Microservices
- Composition Patterns
- Broker Composition Pattern
- Aggregate Composition Pattern
- Chained Composition Pattern
- Proxy Composition Pattern
- Branch Composition Pattern
Data Consistency
- Two Phase Commit
- Saga Pattern-Saga Execution Coordinator
- Eventual Consistency : Eventually the Data would be consistent across the systems. It is a practice rather than pattern. It chooses Availability over Consistency.
API Gateway
Open Source API
Gateway
No comments:
Post a Comment