1. A Service Requestor, which needs a particular resource such as
processor b cycles, storage space, or an application.
2. A Service Provider, which has a resource
that it wants to make available (or sell) to Service Requestors.
To share the information that it has, the Service
Provider creates a service description:
This service description provides information that a Service Requestor
would find useful about the interface and implementation of a resource.
Information like the Service Providers data types, operations, network
location, and, most importantly, binding information.
A problem arises in making this service description available to the
Service Requestor:
Unless the Service Requestor already knows of a Service Provider's
existence it is impossible to find out what resources are available
to it. This greatly limits the Service Requestors potential to gain
resources that fit its needs.
The solution to this problem is the Service
Registry:
The Service Registry provides a searchable registry of service availability
and descriptions for Service Requestors to explore. An effective Service
Registry allows a Service Requestor to be matched with the Service
Provider who best meets their needs. When this Service Provider is
found, a static or dynamic connection (or binding) between it and
the Service Requestor can be executed, fulfilling both of their needs.