Для того, щоб мати справу з архітектурою мікросервісу, її часто використовують поряд із зворотним проксі (наприклад, nginx або apache httpd) і для наскрізних проблем, що стосуються схеми реалізації шлюзу API API . Іноді Reverse proxy виконує роботу шлюзу API.
Добре буде побачити чіткі відмінності між цими двома підходами. Схоже, що потенційною перевагою використання шлюзу API є використання декількох мікросервісів та агрегування результатів. Усі інші обов'язки шлюзу API можна реалізувати за допомогою Reverse Proxy.Such як:
- Аутентифікація (Це можна зробити за допомогою скриптів nginx LUA);
- Безпека транспорту. Сама задача зворотного проксі;
- Балансування навантаження
- ….
Отже, виходячи з цього, виникає кілька питань:
- Чи має сенс одночасно використовувати шлюз API та Reverse proxy (як приклад запит-> Api шлюз-> зворотний проксі (nginx) -> бетонний мікстосервіс)? У яких випадках?
- Які ще відмінності, які можна реалізувати за допомогою шлюзу API, і які неможливо реалізувати через Reverse proxy, і навпаки?