When HTTP requests are received with the Keep-Alive header present the VSE will maintain the connection, as requested. Since each connection requires a file handle associated with the socket, the maximum number of open connections for the process may be exceeded, thus causing the VSE to crash.
We have several ways of closing the connection after we respond from an HTTP virtual service and it just varies if you are using HTTP /1.0 or HTTP/1.1
- When using HTTP/1.0 the socket will be closed after every transaction if a Keep-Alive header was NOT sent in the request.
- When using HTTP/1.1 a socket close can be specified by doing either of the following :
- Sending "Connection: close” in the headers of the request OR
- Adding a metadata entry on the responses in the service image with key “Connection” and value “close” for META and specific transactions.
3. The Connection key may also be set with a scriptable DPH in the model.