Service Connector

Clients must know a lot about services in order to use them. REST APIs require clients to use specific media types, HTTP Headers, and specific request methods. Some web services require data to be encrypted or demand that clients submit authentication tokens. The client must also know the service’s address, how to serialize requests, and parse responses. Each client could develop a custom solution to meet the specific requirements of the service but that would often result in duplicate code.

Instead we should create a service connector that encapsulates the logic a client can use to call a certain service.

Service Connector

Service connectors make services easier to use by hiding the communication specifics. The service connector encapsulate the generic communication logic required to use the service and also include the logic that is specific go the given service. Service connectors are typically responsible for service discovery and connection management, request dispatch, response handling, and some error handling

See also

  • Inter-Service communication - There are multiple forms in which services communicate with each other and this describes the various forms.
  • Consumer-based testing - To ensure that the service contract satisfies the consumer needs the Service Connector contains tests to confirm this.