Service-Oriented Architecture

Learn about service-oriented architecture.

If you’ve never heard of it, service-oriented architecture is an architectural style where a software design is made up of several independent components communicating over a network. Each service is a discrete unit of functionality that can work autonomously. That means that the problem can be divided up into interacting logical pieces. If we refer back to the different application styles defined in Introduction to Scaling, Service-Oriented Architecture (SOA) refers to network distributed applications.

This kind of architecture is not a perfect or magical solution. It has many drawbacks, but it also has many advantages that make it valuable… and so popular these days for building distributed applications.

The service-oriented architecture is not a first-class citizen in Python, though it makes it easy to use and implement (the language being generic and the ecosystem rich enough).

Get hands-on with 1400+ tech skills courses.