Google Cloud Platform: отсутствует кеш CDN при переключении бэкэнда
У меня есть балансировщик нагрузки с двумя бэкэнд-сервисами. Отображение URL на LB выглядит так:
site.com -> backend-blue
test.site.com -> backend-green
Обе серверные службы имеют включенный CDN. Я мог видеть коэффициент попадания в кеш около 96% на бэкэнд-синий сервис. Затем я переключил бэкэнд-сервисы на LB:
site.com -> backend-green
test.site.com -> backend.blue
Попадание в кеш на backend-green стало 60%, и я начал получать 502 ошибки.
Ключи кеша остались прежними, поэтому я ожидал увидеть тот же коэффициент попадания в кеш около 95%.
Почему записи кэша были удалены, а запросы проходили через LB, а не обслуживались CDN?
1 ответ
Кэш CDN применяется на уровне backendService. https://cloud.google.com/compute/docs/reference/rest/v1/backendServices
Кэш зеленого бэкенда был пуст, когда вы переключали на него трафик.
Чтобы сохранить кеш, не изменяйте карту URL, но измените основной backendService на использование зеленого instanceGroup. https://cloud.google.com/compute/docs/reference/rest/v1/backendServices