A client uses a service to execute a business task, provide access to files or documents, or perform generic functions like authentication or logging. The request must be processed immediately.
What's the simplest way for a web service to process a request and provide a result?
When a client uses a service, it usually wants the service to carry out its orders immediately. If, for example, a traveler clicks on a link for the current weather conditions in Munich, the intent is to see that information now. Services like these must provide an immediate response to a specific client instance. However, the act of invoking a remote service is far more involved than calling a local method. Information must be sent from the client process to the service process and back again to the client, often to a specific client thread. How can a service provide immediate results to a client with minimal complexity?
Process requests when they're received and return results over the same client connection.
Request/Response is the most basic and common of the client-service interaction patterns. It is used when the client must have an immediate response or wants the service to complete a task without delay. Request/Response begins when the client establishes a connection to the service. Once a connection has been established, the client sends its request and waits for a response. The service processes the request as soon as it is received and returns a response over the same connection.