anonymous@RULINUX.NET~# Last login: 2024-11-05 12:31:15
Регистрация Вход Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск
[#] [Добавить метку] [Редактировать]
Скрыть

HTTP 1.1 - Поведение скрипта при обрыве коннекта клиентом до окончания обр-ки запроса - что про это советует RFC?

Вот допустим у нас есть веб-сервер, который что-то делает по запросу от клиента. И делает не моментально. Если коиент попался нетерпеливый и разорвал соединение в сервером до того, как его запрос был выполнен, то по возможности что лучше - окатить уже сделанные изменения либо завершить обработку запроса? Есть где-нибудь в RFC пожелания или рекоммендации сделаны на этот счёт? Ещё какие-нибудь авторитетные источники?

anonymous(*) (2014-01-16 21:54:09)

[Ответить на это сообщение]
avatar
Скрыть

Re:HTTP 1.1 - Поведение скрипта при обрыве коннекта клиентом до окончания обр-ки запроса - что про это советует RFC?

Вообще по дефолту обработка прекращается, но по желанию можно изменить на завершение обработки запроса. Про рекомендации не слышал, да и вообще это зависит от твоих задач.

Tux-oid(*)(2014-01-16 22:00:20)

Mozilla/5.0 (X11; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0 SeaMonkey/2.23
avatar
Скрыть

Re:HTTP 1.1 - Поведение скрипта при обрыве коннекта клиентом до окончания обр-ки запроса - что про это советует RFC?

Мне тоже кажется что по дефолту сервер вроде бы обычно грохает сессию как только клиент отключился, соответственно скрипт прибивается, транзакции откатываются и т.п. И это по-моему логично и я даже не знаю (и не хочу знать) как настроить его не грохать обработчик. Мне как раз интересно на основании каких рекомендаций сервер так поступает.

anonymous(*)(2014-01-16 22:14:21)

avatar
Скрыть

Re:HTTP 1.1 - Поведение скрипта при обрыве коннекта клиентом до окончания обр-ки запроса - что про это советует RFC?

Стандарт HTTP оговаривает запросы и ответы, а то, что будет делать скрипт в случае обрыва - вопрос логики программы, и к HTTP относится довольно косвенно. В стандарте есть несколько фраз про разрывы соединения, но они больше относятся к самому поведению протокола, а не к работе программы (например, 8.2.4, и то там про клиента). В HTTP 1.0, по-моему, вообще ничего такого нет.

На мой взгляд, в общем случае нужно откатывать изменения и прекращать выполнение скрипта. Принцип простой - клиент, делая запрос ради какой-нибудь операции, ожидает какой-то ответ, например "получилось/не получилось/сервер сломался/роскомнадзор заблокировал". Соответственно, если ответа не было из-за разрыва, клиент не в курсе того, что произошло с той операцией, и, по-хорошему, должен попробовать заново, считая, что ничего не изменилось. Даже если постановить, что сервер будет обрабатывать что-то дальше, то клиенту всё равно надо уточнять, получилось или нет. Потому логичнее обработку прерывать.

Вот как-то так.

SystemV(*)(2014-01-16 22:47:25)

Emacs-w3m/1.4.524 w3m/0.5.3
avatar
Скрыть

Re:HTTP 1.1 - Поведение скрипта при обрыве коннекта клиентом до окончания обр-ки запроса - что про это советует RFC?

Ну это понятно, но иногда проще сослаться на стандарт, чем драматические истории из жизни клиента и сервера живописать..

anonymous(*)(2014-01-16 23:36:01)

Этот тред читают 2 пользователя:
Анонимных: 2
Зарегистрированных: 0




(c) 2010-2020 LOR-NG Developers Group
Powered by TimeMachine

Valid HTML 4.01 Transitional Правильный CSS!