Класс ConnectorsPool
представляет пул коннекторов для управления подключениями к сервису MLP (Machine Learning Platform).
- token: Токен для аутентификации при подключении к сервису.
- executor: Исполнитель задач для коннекторов в пуле.
- config: Конфигурация сервиса MLP.
- scope: Область корутины для управления жизненным циклом пула коннекторов.
- clusterMutex: Мьютекс для безопасного доступа к кластеру коннекторов.
- connectors: Мапа коннекторов, ключом является их идентификатор.
-
send(connectorId: Long, toGateProto: ServiceToGateProto)
Отправляет сообщение в сервис через конкретный коннектор по его идентификатору.
-
sendToAnyGate(toGateProto: ServiceToGateProto)
Отправляет сообщение в сервис через любой доступный коннектор в пуле.
-
gracefulShutdown()
Выполняет грациозное завершение работы пула коннекторов.
-
shutdownNow()
Принудительно завершает работу пула коннекторов.
-
updateConnectors(urls: List)
Обновляет коннекторы в пуле в соответствии с новыми URL-адресами.
-
toString()
Представляет пул коннекторов в виде строки.
-
launchConnectorsMonitor()
Запускает мониторинг активности коннекторов для автоматического обновления состояния пула.
-
logProto(body: MessageLite, prompt: String)
Логирует протокол сообщения в удобочитаемом формате, если размер данных не превышает определенного значения.