A service-oriented architecture (SOA) is at the heart of modern distributed computing. In this methodology, an application’s business logic is modularized and is presented as a service to the end-consumer. Applications can be built by composing different services without the need to worry about the underlying platform or language used to implement the service.