Ограничение времени выполнения запроса
С версии модуля Rest 22.0.0 в облачной версии Битрикс24 во всех ответах rest запросов в массиве time с дополнительной информацией о времени выполнения запроса добавлен дополнительный ключ operating
, который говорит о времени выполнения запроса к методу конкретным приложением. Данные о времени выполнения запросов к методу суммируются. При превышении времени выполнения запросов сверх 480 секунд в рамках прошедших 10 минут данный метод блокируется для всех приложений и веб-хуков данного портала. При этом все остальные методы продолжают работать.
Ключ operating_reset_at
возвращает timestamp в которое будет высвобождена часть лимита на данный метод.
![]()
Сообщение не промодерировано, возможны ошибки и неточности.
|
Стоит отметить, что обещанный инкремент времени работает, но только в batch!!
И так же стоит отметить, что в batch этот инкремент выдается не в результирующем объекте Time а в объекте result, есть объект result_time, где для каждой задачи из batch, в соответствии с именем задачи, есть объект, полностью повторяющий структуру time и вот там-то и есть та суммирующая operating Причем стоит смотреть только последний объект из этого списка! |
![]()
Сообщение не промодерировано, возможны ошибки и неточности.
|
Стоит отметить, что суммировать operating, придется самому, т.к. то что тут написано "Данные о времени выполнения запросов к методу суммируются" - видимо относиться к внутреннему механизму битрикс, и ни какого отношения к юзабилити api - не имеет.
Т.е. битрикс сам где-то там у себя суммирует, и ограничивает, но вам выдает только время выполнения запроса, а суммировать и делать выводы - ложиться на плечи разработчика |
![]()
Сообщение не промодерировано, возможны ошибки и неточности.
|
Стоит отметить, что значение operating совершенно не обязательно будет хотя бы приблизительно коррелировать с временем, которое прошло от реквеста до респонса. Например, метод task.dependence.add в батче способен всего за 10 секунд поднять значение operating с нуля до, примерно, 200. Видимо, учитывается общее время всех взаимодействий между серверами и таблицами внутри самого Битрикс. А метод user.get, например, вообще всегда возвращает operating равный нулю, даже если отправлять десяток однотипных батч-запросов по пятьдесят штук. Так что будьте внимательнее, особенно если работаете с миграторами.
|
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.