Как использовать Redis с шлюзом Конг API - PullRequest
0 голосов
/ 03 сентября 2018

Мы используем шлюз kong api в качестве единого шлюза для всех apis. мы сталкиваемся с проблемой задержки с несколькими из наших API (1500-2000 мс). позже, когда мы проверили, задержка создавалась из-за плагина «ограничения скорости». Когда мы отключаем плагин, задержка улучшается, и ответ совпадает с тем, что мы получаем непосредственно от IP (около 300 мс). Я пытаюсь настроить узел redis для кэширования запросов к базе данных, я не уверен, как мы можем настроить kong для чтения из самого redis. как мы можем кэшировать запросы базы данных к узлу redis. Мы используем postgresql для Конга.

1 Ответ

0 голосов
/ 04 сентября 2018

Я думаю, может быть, вы пытаетесь сделать пару разных вещей одновременно.

Во-первых, ограничение скорости: какое значение имеет ваш параметр config.policy? Документация Kong имеет три значения: "local (счетчики будут храниться локально в памяти на узле), cluster (счетчики хранятся в хранилище данных и распределяются между узлами) и redis (счетчики хранятся на сервере Redis и будут распределены между узлами). "

Если вы видите высокую задержку, а для вашего config.policy установлено значение cluster или redis, это может быть связано с задержкой между Kong и postgres / redis (в зависимости от того, какую политику вы используете). Если вы используете ограничение скорости просто для предотвращения злоупотреблений, использование «локальной» политики будет быстрее. (Подробнее об этом можно узнать из документации Kong.)

Другой вопрос касается кеширования: Kong Enterprise имеет встроенный плагин кэширования , но для Kong Community, поскольку он построен на основе Nginx, вы можете выполнять кеширование с помощью Nginx. Эта ссылка может вам помочь.

...