Service composition means composing a larger service by combining many smaller services. This is the same principle used when composing a larger software component from many smaller components. Here is a diagram illustrating service composition:
|Service Composition - composing a service by combining several smaller ones.|
Service Composition Performance
While service composition may look compelling on paper, just like component composition would, keep in mind that services typically communicate with each other via the network. That means that inter-service communication is much slower than typical inter-component communication, which typically takes place inside the same address space (application / process). Decomposing your larger services into too many smaller services may hurt performance. Especially if the services communicate internally via an enterprise service bus (ESB).