Непредвиденные проблемы с задержкой шлюза AWS-API
Мне нужна помощь для устранения проблем задержки шлюза API AWS. У нас одинаковая конфигурация и даже данные, все одинаковые, но в Non Prod возникают проблемы с большой задержкой На самом деле мы используем ссылки Nlb и VPC для API Gateway . Пожалуйста, найдите такие же значения здесь ниже.
Мы скопировали данные из dev mongo в тестовую среду, чтобы убедиться, что в обоих местах присутствует одинаковый объем данных. Мы ударили /test/16 из обеих сред, но испытали очень высокую задержку в dev по сравнению с песочницей.
Тест: Запрос: / тест / 16
Статус:200
Задержка: 213ms
Dev:
Запрос: / тест / 16
Статус:200
Задержка:4896ms
1 ответ
Вы проверили свои журналы VPC, чтобы видеть пути потока для запросов? Если нет, я предлагаю начать там.
Как FYI, вы можете узнать о журналах потока VPC по адресу https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html.
Что стоит за балансировщиком нагрузки? Чего вы добиваетесь с DNS-именами или просто IP-адресами?
В какой-то момент у нас была аналогичная проблема, при просмотре мониторинга балансировщика нагрузки (ELB) мы обнаружили, что проблема связана с нисходящими потоками.
Мониторинг даже показал, что у нас в балансировщике нагрузки 504.
В нашем случае причиной этого было кеширование DNS, целевые экземпляры были заменены, а DNS в некоторых экземплярах nginx на сетевом пути к целевому объекту не был обновлен.
Экземпляры nginx нужно было обновить с помощью динамического разрешения DNS. Поскольку по умолчанию nginx разрешает цель только при запуске.
Однако, не зная вашей архитектуры, трудно сказать, что может вызвать ваши проблемы. Вот еще одна история DNS с некоторыми примерами отладки: https://srvaroa.github.io/kubernetes/migration/latency/dns/java/aws/microservices/2019/10/22/kubernetes-added-a-0-to-my-latency.html
Удачи.