Здравствуйте, Ночной Смотрящий, Вы писали:
MH>>, когда хотят на сервере ограничить частоту реквестов от клиента. в этом случае да, лучше его. MH>>я имел ввиду несколько другие ситуации, например для обработки реквеста надо сходить в базу, база перегружена и ответила соотвествующей ошибкой. MH>>или сервер под высокой нагрузкой и реквест клиента по каким-то причинам (особенно связанным с данными клиентам) выполняется слишком долго и его прервали. MH>>или сервер уже под высокой нагрузкой и пока лучше не начинать обработку новых запросов. НС>Не вижу принципиального отличия. Если ты понял что проблема именно в перегруженности — 429 самое то, неважно какой именно компонент перегружен. Потому что реакция клиента во всех случаях одна — попробовать попозже или сказать что сервер перегружен.
Принципиальное отличие, что возвратить 4xx клиенту — обвинить клиента в том, что он что-то делает не так. А 5xx — это что-то не так с сервером.
При перегрузке сервера не по вине данного клиента — надо возвращать 503 Service Unavailable. Собственно это как раз то, что обычно делают в такой ситуации всякие лоад-балансеры и проксяки.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай