как добавить кеширование микросервисов за Traefik Ingress Controller?

Некоторое время я использовал настройку на основе Docker с переадресацией обратного прокси-сервера nginx на Dockerized Microservices. Прямо сейчас я оцениваю переход на подход на основе Kubernetes и Traefik Ingress Controller.

Контроллер Ingress предоставляет все необходимые для этого функции, за исключением одного: Он не поддерживает кеширование .

Когда дело доходит до обслуживания статических ресурсов, микросервисы не очень производительны, и я бы предпочел уменьшить нагрузку, чтобы они могли сконцентрироваться на своей реальной цели, обрабатывая динамические запросы REST.

Есть ли способ добавить поддержку кеширования для Ingress на базе Traefik? Поскольку существует множество, но небольших сервисов, я бы предпочел не создавать выделенный Pod для каждой микросервиса, если это возможно. Кроме того, по возможности приветствуется подход на основе конфигурации (возможно, с использованием настраиваемого оператора?).


person muffel    schedule 30.03.2019    source источник


Ответы (3)


Функциональность кэширования все еще находится в списке желаний в проекте Traefik.
В качестве обходного пути проверьте этот сценарий, в котором используется NGINX поставить впереди для кэширования.
Я не вижу никаких противопоказаний для применения той же идеи перед Traefik Ingress Controller.

person Nepomucen    schedule 22.05.2019

Это корпоративная функция. Вы должны купить Traefik Enterprise, чтобы получить функциональность кеширования.

person Sebi2020    schedule 23.01.2021

Мы прошли через это, и, несмотря на то, что мы все еще тестируем это, очевидно, что кеш, наконец, был реализован непосредственно в traeffik, в том числе выборочно по пути, что было нашей основной задачей. Неуверенный в ограничениях / производительности, хотя я читал, что в настоящее время в качестве хранилища доступна только память, выделенная для каждого маршрутизатора:

https://github.com/traefik/traefik/issues/878

person luison    schedule 02.02.2021