Trinity-TV. Оптимизация API

Матеріал з NoDeny
Версія від 09:06, 25 вересня 2023, створена Sv (обговорення | внесок) (Створена сторінка: ==Комботарифы== В одном NoDeny тарифе содержатся 2: * тариф Trinity-TV * интернет тариф ==Оптимизация API== Известна проблема, когда API Trinity-TV отвечает довольно медленно. В случае, когда примерно в одно и тоже время переподключается множество Trinity-TV тарифов, API запро...)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Комботарифы

В одном NoDeny тарифе содержатся 2:

  • тариф Trinity-TV
  • интернет тариф

Оптимизация API

Известна проблема, когда API Trinity-TV отвечает довольно медленно. В случае, когда примерно в одно и тоже время переподключается множество Trinity-TV тарифов, API запросы выполняются последовательно, что может занять много времени. И тогда тарифы в NoDeny завершаются на некоторое время позже, соответственно новые подключаются позже. В некоторых режимах тарификации это может влиять на стоимость услуги.

В данном модуле работа с API вынесена в отдельный поток. Сам комботариф, вместо обращения к API, записывает данные в таблицу api_queue и отключает/подключает NoDeny тариф мгновенно. Далее модуль ядра с таким же названием api_queue периодически просматривает таблицу api_queue и выполняет API-запросы. Если запрос не выполнен, он будет повторен через время: сначала через минуту, потом через 5 минут, 30 минут, час и т.д. Количество попыток ограничено пятью.

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

Если вы используете обычный модуль комботарифов Trinity-TV, не забудьте его удалить (папку в modules) или отключить

touch /usr/local/nodeny/modules/trinitytv_combo/no