Калибровка приложения для потребления ресурсов
У меня есть приложение, ~40 контейнеров докеров, отличающихся от NoSQL, RDBMS, приложений C, приложений Go, Python и т. Д., Оркестрированных с использованием Kubernetes
, Все работает на GCP
, С GLB(Load Balancer) на внешнем интерфейсе.
Теперь, если я создаю много реплик и даю много ресурсов этим приложениям, тогда все работает правильно. Но если я даю достаточно ресурсов, то интерфейс иногда загружается очень медленно, веб-приложение на некоторое время перестает отвечать на запросы, а затем загадочно возвращается обратно.
Все это происходит без вытеснения или перезапуска.
Когда это происходит, я вижу, что процессор / память на 50%, поэтому ресурсы не исчерпаны.
Как начать отладку, в чем причина медлительности? Как мне откалибровать какое приложение требует сколько ресурсов?
1 ответ
Вы можете посмотреть трассировку или что-то вроде Istio, оба из которых дадут вам лучшую телеметрию о том, кто с кем разговаривает, латентность между ними и т. Д.