Microservices & Evolution

Microservices & Evolution

Pre-SOA(Monolithic) | SOA | Microservices

Image source: RoboMQ

What is SOA?

A service-oriented architecture (SOA) is a style of computer software where services are provided to the other components by application components, through a communication protocol over a network. The basic fundamental principles of service-oriented architecture are independent of vendors, products and technologies

Key Characteristics of SOA

? Reusable

? Autonomous units of business functionality

? Contract-based

? Loosely coupled 

? Platform-independent

? Discoverable and location independent

? Standards-based

Image source: InfoQ

What is Microservices?

An approach to developing a single application as a suite of small services, each running of its own process and communication with lightweight mechanism, often HTTP resource API. 

Key Characteristics of Microservices

? Componentization via services

? Organized around Business Capabilities

? Products not Projects

? Smart endpoints and dumb pipes

? Decentralized Governance

? Decentralized Data Management

? Infrastructure Automation

? Design for failures

? Evolutionary Design

Microservices Architecture

Key Decision Criteria for Microservice Architecture

? Better scalability of autonomous acting services.

? Faster response time to new technologies.

? Each microservice is a single product.

? The functionality of a single microservice can be used in several other applications.

? Employment of several distributed teams & Faster onboarding of new developers and employees.

? Introduction of the continuous delivery model.

? Microservices can be developed more easily and faster for a specific business purpose.

? Integration complexity can be reduced since a single service contains less functionality and thus less complexity.

? Errors can be isolated easier & small things can be tested easier.

Benefits of Microservices

? Agility and productivity

? Small Codebase

? Easy to understand & deployment

? Technology independent & easy integration

? Highly Scalable & easy to enhance

? Resilient/Flexible

? Single Responsibility Principle

Qualitative Differences

Conclusion

Microservices architecture provides a range of technical benefits that contributes to development velocity and product quality in software projects, while also contributing to overall business agility such as Gateway is undoubtedly make the mark on the Microservices Architecture Landscape.

Sander van Oosterom

Project Manager @ TheGatewayGroup, Autofacets & DILX

6 年

Great article!

回复

No biased but to have micro service or not is more of contextual secession depending on many things. Microseconds for every SOA is not mandatory

回复

要查看或添加评论,请登录

Arvind Nanda的更多文章

  • NoSQL Will Rule Analytics

    NoSQL Will Rule Analytics

    At Gateway our vision is to become the world’s leading intelligent insight mining and real-time collaboration solution…

社区洞察

其他会员也浏览了