Services are the basic unit of operation within a service-oriented architecture (SOA). A service publishes one or more interfaces that other applications and services can use to invoke the operations contained within the service. The service exposes its interfaces through endpoints, such as HTTP or SOAP. The implementation of the operations in the service can also call other services, or partners.
Figure 30 illustrates the service model.
Services decouple the underlying transport from the implementation. You can define an interface you wish to offer, describe the endpoints through which clients can access the service, and specify the implementation for each operation in the service. The underlying implementation of the operations can change without affecting the configuration of the service.
Also, partner link configurations allow you to decouple partners from their endpoints. You can specify the type of the partner you wish to invoke, and a Partner Link Configuration resource associates the partner name with the endpoint of the partner service you wish to invoke. Partner Link Configuration resources allow you to provide endpoints to new partner services when you want to switch services without changing the orchestration process that invokes the partner service.