Microservices
.Microservices architecture is the opposite of the Monolith approach to software architecture. Instead of having the whole system built within one huge codebase, the microservices approach breaks the system down by business function. Each service runs on its own and is (usually communicates with other microservices through APIs.
Microservices are decoupled, meaning that each service can be developed, deployed, and scaled without affecting the others. Each microservice should be specialized to solve one specific problem; for example, a payment microservice should only handle payment transactions. This approach also uses independent databases to enforce isolation, where each microservice owns its own data. The microservices approach is also tech-agnostic, which means that different services can be developed in different programming languages and still communicate with each other.
This architecture philosophy uses several helper tools to keep things running. The first one is the API gateway, which represents a single point of entry, making sure requests are sent to the right service. Service discovery is there to help services find each other's network location. Next thing is the load balancers, which serve to distribute traffic so no single service gets overwhelmed. Lastly, we got message brokers which allow services to talk to each other asynchronously; if your developers use Kafka or RabbitMQ, these would be examples of message brokers.
The microservices approach can offer high scalability, faster development, and better fault isolation. The downside is the increase of operational complexity and more difficult debugging; this means that a small and simple product won’t benefit from this approach, whereas a large and complex system will.
Complete the Sembi Quality Ops Survey for a chance to win $100—and have your voice heard in our upcoming industry report
Explore MoT
Thu, 19 Feb
In this webinar, Parasoft experts will discuss what to look for when selecting an AI-powered API testing solution.
Boost your career in software testing with the MoT Software Testing Essentials Certificate. Learn essential skills, from basic testing techniques to advanced risk analysis, crafted by industry experts.
Debrief the week in Quality via a community radio show hosted by Simon Tomes and members of the community