https://github.com/urunov/microservice-modern-application
Spring Boot and Kafka practical results
https://github.com/urunov/microservice-modern-application
job kafka kafka-apache spring
Last synced: 19 days ago
JSON representation
Spring Boot and Kafka practical results
- Host: GitHub
- URL: https://github.com/urunov/microservice-modern-application
- Owner: Urunov
- Created: 2020-10-22T06:14:23.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-04-23T03:03:35.000Z (over 4 years ago)
- Last Synced: 2025-05-08T01:16:23.712Z (6 months ago)
- Topics: job, kafka, kafka-apache, spring
- Language: Java
- Homepage:
- Size: 68.4 KB
- Stars: 4
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Microservice - Modern Application
-----------------
1. Monolith vs Microservices - An Analysis
2. Design Principles | Boundaries around microservices | Guidelines to follow when designing microservices applications
3. Microservices: Design Patterns
----
🌠More about Microservices :
* Microservices Decomposition Pattern: By Domain and subdomain
* Microservices Decomposition Pattern: Strangle Vine Pattern
* Microservices Decomposition Pattern: Sidecar Pattern
* Microservices Decomposition Pattern: Service Mesh
* Microservices Database Pattern: Database per service & Shared Database per service
* Microservices Database Pattern: CQRS - Common Query Responsibility Segregation
* Microservices Database Pattern: Data Consistency - Eventual vs Strong Consistency
* Microservices Database Pattern: Event-Driven Architecture
* Microservices Database Pattern: Event Sourcing
* Mircroservices Databse Pattern: 2 Phase Commit
* Microservices Database Pattern: SAGA
* Microservices Database Pattern: Summary
* Microservices Communication: How microservices understand each other(such as connect)
* Microservices Communication: Synchronous vs Asyncronous
* Microservices Communication: HTTP & REST
* Microservices Communication: Message Based Communication
* Microservices Communication: GraphQL
* Microservices Integration Patterns: API Gateway
* Microservices Integration Patterns: Aggregator Pattern
* Chained Pattern
* Branch Pattern
* Microservices Integration Pattern: Clientside UI Composition Pattern
* Microservices Observable Pattern: Health Check and Performance Metrics
* Microservices Cross Cutting Concern Pattern: Service Registry and Discovery
* Microservices Cross Cutting Concern Pattern: Load Balancer
* Microservices Cross Cutting Concern PatternL Extrenal Configuration
* Microservices Deployment Patterns: What is Container ? What is VM? Container vs VM
* Microservices Deployment Patterns: Multiple service instances per host & Service instance per host? Service Instance per VM | Service Instance per Container
* Microservices Deployment Patterns: Serverless Pattern
* Microservices Deployment Patterns: Blue - Green | Cananry| Rolling Patterns
## Practical Microservices Architecture vs source code
## Monolith vs Microservices - An Analysis
## What is Monoloth Architecture?
* Single jar/war file for whole application
* Issues
* Less flexible for large team and code base
* Overload IDE
* Continuous development is difficult
* Scaling the app is difficult
* Scaling development is difficult
* Technology stack change is difficult
[Reference architecture - Monolothic](https://user-images.githubusercontent.com/11626327/110196093-88743780-7e85-11eb-9a3f-4ce9aa7a226b.png)
## What is Microservice Architecture?
=> A Set of loosely coupled, collaborating services. Each service is relating several parameters:
* Highly maintainable and testable
* Loosely coupled with other services
* Independently deployable
* Capable of being developed by a small team
* Services can be developed independent of each other
* Communication among service via HTTP/REST/AMQP
* Service granularity (how small service and how to size of the service capacity. Logically)
* Linguistic approach
* Technologic agnostic
More about Microservices:
* Microservices is a specialization of an implementation approarch for service - oriented architecure (SOA) used to build flexible, independently deployable software systems.
* Followed the introduction of DevOps
* Strategy - "Do one thing and do it well".
## Important References:
🔥 Microservices Antipatterns
🔥 CAP Theorem
[Reference architecture - Mircroservice](https://user-images.githubusercontent.com/11626327/110196328-20265580-7e87-11eb-9381-0727ba11028b.png)