Evolution of Enterprise Application Architecture: single-machine program->c/s->b/s, service-oriented architecture (SOA), micro-service architecture
Bold is the monomer program
Micro-Service Architecture
A fine-grained SOA is an SOA that emphasizes small, ephemeral components, and small is the beauty
The focus is on services, how to decouple between services
Each service component can be independently developed, built, tested, deployed
Self-contained (as in a container)
Lightweight process
Developing with RESTful Web services
Communicate over HTTP (must I communicate through HTTP?). )
Related to Team organization structure
Basic mode: (API Gateway +n a single service structure)
Soa
Exposing Simple Object-based Access Protocol (SOAP)
Middleware, such as Enterprise Service Bus (ESB), is important
Service-based development (presentation tier, service tier (may be divided by business service with many block service APIs), database)
Monomer Service
Classic N-tier structure (presentation layer, application layer, business logic layer, DAO, database)
Single Service Disadvantage
Prone to global paralysis problems
Small problems can lead to overall deployment
Difficult to deploy frequently
Hard to keep up with the latest technology
Difficult to meet business incremental requirements
Load, build, understand, and maintain are time consuming
Micro-Service Benefits
Can solve the single service those shortcomings
Better fit with agile methods, CI/CD (Jenkins/teamcity/tfs/auzedevops)
Micro-Service Build pipeline
CI/CD build Process: Clean up Code, code compilation, perform unit tests, build application archives, deploy on various servers such as Dev QA, perform functions and integration tests, create image containers, any other steps, build release builds, Mark release versions
Docker container
Each container has its own user namespace
relies on basic operating system features (such as isolation services)
The application in the container can be developed in any language
Isolated from each other
Micro-service architecture is a solution