SAS 9.1.3 Integration Technologies » Administrator's Guide


SAS Foundation Services
Understanding
Service Deployments
Service Deployment Configuration
Managing Service Deployments
Defining
Importing
Exporting
Duplicating
Redistributing
Installing and Running Foundation Services as a Windows Service
Understanding How Applications
Deploy Foundation Services
Locate Services
Scenario: Stand-alone application
Scenario: Remote-accessible Services
Scenario: Local and Remote-accessible Services
Share Foundation Services
Modifying Service Configurations
Event Broker Service
Events and Process Flows
Modifying the Configuration
Creating Events and Process Flows
Information Service
Logging Service
Pattern Layouts
Session and User Service
Monitoring Applications
Foundation Services

Scenario: Remote-accessible Services

To enable applications to access remote services, one application must deploy the remote services. (The application that deploys the remote services can then access the services as local services). Instead of deploying their own set of local services, other applications can access the remote services. To access the remote service deployment, applications locate the deploying application's remote Discovery Service in order to locate and access the deployed remote services. This scenario is useful if one or more client applications need to use the same set of services.

In this scenario, Application 1 deploys the remote services and accesses them as local services. Applications 2, 3, and 4 locate Application 1's remote Discovery Service in order to access the remote services. Note that Applications 2 and 3 are Web client applications that run in the same servlet container and each deploy their own local services for their own exclusive use.

Diagram showing how Applications Deploy, Access and Use Foundation Services

To deploy remote services, Application 1 does the following:

  1. Uses the service loader to query service deployment metadata from either a SAS Metadata Server or an XML file (that contains exported metadata).
  2. Uses the service loader to instantiate services defined in the service deployment metadata and register them with the local Discovery Service.

    Note: In this scenario, these services must be configured as remote-accessible.

  3. Uses its local Discovery Service to find services based upon their service interfaces and optionally, their service attributes.

To locate the remote-accessible services (that were deployed by Application 1), Applications 2, 3, and 4 do the following:

  1. Use the service loader to query service deployment metadata from either a SAS Metadata Server or an XML file (that contains exported metadata).
  2. Use the service loader to obtain a name binding to the remote-accessible Discovery Service instantiated by Application 1.
  3. Register the remote Discovery Service with their own local Discovery Service.
  4. Use their own local Discovery Service to find services based upon their service interfaces and optionally, their service attributes. The local Discovery Service uses the remote Discovery Service to locate the remote-accessible services.

    Note: In this scenario, Applications 2, 3 and 4 do not deploy any services themselves; they only locate remote-accessible services instantiated by Application 1.

  5. When Applications 2, 3, and 4 no longer need the services, they each terminate their own local Discovery Service.

When Application 1 exits, it terminates its local Discovery Service; the local Discovery Service then terminates all locally instantiated services. After all services are terminated, no services are available to any other applications.