GSL-ОГРАНИЧЕНИЕ
Режим "Опроса", ограничение использования команд GET_SEAT_LIST (GSL)
GET_SEAT_LIST (GSL) - это команда API платформы BIL24, используемая для получения списка мест с актуальными статусами, а также получения ценовых категорий и тарифов. Эта команда необходима,
чтобы предложить покупателю возможность выбрать места, на которые он может приобрести билеты. В ряде случаев, разработчики сайтов, виджетов, мобильных приложений и билетных систем реализуют
API BIL24 таким образом, что центральный сервер платформы получает десятки тысяч команд GET_SEAT_LIST в сутки при почти полном отсутствии продаж. Чтобы эта неадекватная объему продаж нагрузка
не мешала реализовывать билеты другим пользователям платформы, в BIL24 создан режим ограниченного обслуживания команд GET_SEAT_LIST (GSL-ограничение).
Если у интерфейса с определенным Frontend ID (FID) фиксируется небольшой объем продаж и значительное количество команд GET_SEAT_LIST, то интерфейс переключается в режим «Опроса» (GSL-ограничения).
Этот режим отмечает, что через этот интерфейс сайт или клиентская билетная система интенсивно опрашивают BIL24, присылая множество команд GET_SEAT_LIST, неподкрепленных реальными продажами билетов.
Фактически, это «пустая» нагрузка как для BIL24, так и для внешних билетных систем, отдающих информацию о местах. Для всех интерфейсов, попавших в этот режим, действует ограничение на обслуживание
команд GET_SEAT_LIST. Когда соотношение присылаемых команд к продажам становится нормальным, то режим «Опроса» для интерфейса выключается и ограничение перестает действовать. Включение и выключение
режима «Опроса» происходит автоматически.
В режиме «Опроса» автоматически ограничивается обработка запросов GET_SEAT_LIST. На остальные команды никакие дополнительные ограничения не вводятся. В этом режиме, при большом количестве одновременно
поступивших команд GET_SEAT_LIST, они могут не успеть обработаться за отведенное время и в ответ вернется ошибка HTTP 503 Service Unavailable. Для получения максимальной производительности в режиме
«Опроса» запросы GET_SEAT_LIST должны отправляться по одному, т.е. следующий запрос отправляется только после получения ответа на предыдущий.