Задать вопрос

Какое время ответа сервиса должно быть при разработке api?

Искал долго и упорно но найти хоть какой то ответ на это не смог. В web разработке общепринятым является время ответа 200ms, но опять же нигде явно об этом не написано. Есть ли какие то стандарты в которых черным по белому написано сколько времени сервер должен отвечать. Для веба, для обменов с erp системами и подобным. Если же кто то не знает такого то все равно прошу отписаться кто как думает какое время приемлемое и насколько реально достижимое для проектов на базе 1C (имеется ввиду не битрикс а управление торговлей скажем), sap erp и прочего, подобного.
  • Вопрос задан
  • 5129 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
dmitry_pavlov
@dmitry_pavlov
World-class .NET freelance contractor (remotely)
В старой книжке по юзабилити было сказано примерно так:

0,1 s (или 100 ms) - предел, до которого пользователю кажется, что система работает мгновенно и никаких прогресс баров не требуется.

1 s (или 1000 ms) - предел, до которого пользователь замечает небольшую задержку, но в целом ему кажется, что все работает нормально.

10 s (или 10 000 ms) - пользователь перестает следить за процессом и ему кажется что система подвисла.

В целом логика проста: меньше - лучше. Думаю, что предел когда все можно считать OK - до 1 секунды, лучше 500 ms (если конечно речь не про вызов API в цикле - тогда надо чтобы все запросы уложились в этот предел). Если отклик больше имеет смысл для той системы (обычно некий пользоваельский интерфейс), которая использует API - добавить какую-то анимацию вроде индикатора загрузки - в этом случае пользователь спокойней переносит б0льшие интервалы отклика, так как видит что система что-то делает. Обычно в веб приложении, которое лезет за данными (особенно если это не по одному элементу а обработка пакетом) в какие-то внешние системы делают индикатор. Можно довольно просто навесить какую-то анимацию на все AJAX вызовы с помощью api.jquery.com/category/ajax/global-ajax-event-handlers - на старт показывать на завершение скрывать. Есть много готовых решений.
Ответ написан
@Archusha
https://agaltsovav.ru/
Смотря что за сервис и с чем его едят.

У меня есть несколько сервисов, которые забирают данные по крону. Вот, там мне в целом все равно 100мс или 10с отдается запрос (утрировано).

Если вы, делаете что-то, что требует оперативного обмена информацией, то до секунды вполне рабочий вариант. Но опять же, отдавать какой-нибудь json с списком 10 новостей для сайта визитки в течение секунды не айс. Тут надо разбираться.

Если же вы не можете повлиять на сервис отдающий (1с, sap и т.д.), железо там плохое, данные сложные, то есть куча вариантов как и тут избавиться от беды. Начиная от сервера прокладки, до раннего запроса информации.

Тут надо плясать от ситуации.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы