Benjamin Mahler created MESOS-9189:
--------------------------------------
Summary: Include 'Connection: close' header in streaming API
responses.
Key: MESOS-9189
URL: https://issues.apache.org/jira/browse/MESOS-9189
Project: Mesos
Issue Type: Improvement
Components: HTTP API
Reporter: Benjamin Mahler
We've seen some HTTP intermediaries (e.g. ELB) decide to re-use connections to
mesos as an optimization to avoid re-connection overhead. As a result, when the
end-client of the streaming API disconnects from the intermediary, the
intermediary leaves the connection to mesos open in an attempt to re-use the
connection for another request once the response completes. Mesos then thinks
that the subscriber never disconnected and the intermediary happily continues
to read the streaming events even though there's no end-client.
To help indicate to intermediaries that the connection SHOULD NOT be re-used,
we can set the 'Connection: close' header for streaming API responses. It may
not be respected (since the language seems to be SHOULD NOT), but some
intermediaries may respect it and close the connection if the end-client
disconnects.
Note that libprocess' http server currently doesn't close the the connection
based on a handler setting this header, but it doesn't matter here since the
streaming API responses are infinite.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)