A Service is a callable routine that is made available over a network. Services have well defined interfaces (inbound and outbound). The interfaces are often published in a directory. Optionally, directories are often utilized by a Consumer (or requester) to discover available services. The Consumer may then call the service to have some action performed.
The term Service is often interchanged with the term, “provider”. A provider is usually used in conjunction with Consumer to differentiate between the entity that consumes a resource/result and the entity that produces the resource/result.
|
Services are often compared to components. One difference that is usually noted is that services are “live”. That is, they usually reside inside of a multi-threaded engine that is network aware. The engine allows multiple consumers to utilize the services and provides some basic infrastructure (security, logging, etc.)
|