Давайте представим себе, что веб-сервер обрабатывает конвейер запросов, а один из них не работает по какой-то причине. В каких случаях сервер может поддерживать соединение и в каких случаях он должен его закрывать? Очевидно, что такие ошибки, как 403 и 404, могут быть устранены без закрытия соединения. И, скорее всего, ошибка приведет к закрытию соединения, если часть ответа уже отправлена.HTTP-конвейерная обработка и обработка ошибок
Но как насчет «нормальных» ошибок 5xx? Являются ли популярные реализации веб-серверов, как правило, поддерживать конвейеры или закрывать их?
Вся информация очень ценится.
Как насчет ситуаций с памятью? Я реализую HTTP-сервер и буду рад сэкономить время, если другие не выпрыгнут из штанов в таких случаях. – Krit
Если вы внедряете сервер, и сервер по какой-либо причине не может продолжать глобально, вы можете, конечно, закрыть соединение. –
В общем, как сервер вы всегда можете закрыть соединение, если хотите, чтобы клиенты могли делать правильные вещи, когда вы это делаете. –