У меня есть контейнер, развернутый на ECS Fargate в качестве службы.Контейнер должен обслуживать длинные HTTP-соединения Websocket и выполнять обработку в реальном времени.Каждое соединение может жить от нескольких минут до нескольких часов в разных случаях использования.
Каждый контейнер может обслуживать до постоянного количества соединений одновременно (например, максимум 10 соединений), чтобы иметь возможность обрабатывать ввод данных в режиме реального времени.-time.
Приложение AWS Балансировщик нагрузки находится в начале этой службы.По обычным правилам автомасштабирования - количество контейнеров можно уменьшать или уменьшать с помощью мониторинга CPU.Это приложение Application Balancer использует алгоритм циклической маршрутизации для каждого входящего запроса.
Мой вопрос:
Имея требование постоянного предела HARD соединений для контейнера, как я могу заставить ALB не маршрутизироватьновое соединение с контейнером без доступного слота соединения?
Сам сервис внутри контейнера - может ли он сообщить ALB, что он закрыт для новых соединений?Может быть, по конкретному HTTP-ответу?
Есть ли еще какие-либо полезные методы для обработки этого требования?