Сервис вроде бы находится в одной VPC, но запросы между двумя компонентами внезапно становятся заметно медленнее.
Особенно часто это всплывает после масштабирования: backend поднялся в другой зоне, а клиент продолжил ходить к нему через балансировщик или другой региональный компонент.
Посмотреть, куда реально уходит соединение:
ss -tnp
Если адреса backend’ов принадлежат разным зонам, следующий вопрос - действительно ли трафик идёт напрямую между ними.
traceroute -T -p 443 <backend-ip>
Но одного маршрута мало.
Интереснее сравнить latency до backend’ов в разных зонах:
mtr -T -P 443 <backend-ip>
Иногда разница небольшая на одном запросе, но начинает сильно влиять на p95/p99, когда сервис делает несколько последовательных обращений к другим компонентам.
Ещё неприятнее, когда frontend находится в одной зоне, application - в другой, а database - снова в первой. Один пользовательский запрос превращается в несколько cross-zone переходов.
N.A.


