Автообнаружение API Mule против API GatewayProxy Mule
Когда мы должны использовать API Proxy против API AutoDiscovery. После реализации обоих вариантов я обнаружил, что AutoDiscovery также может применять политики, аналитику, которую выполняет API-шлюз, единственное, что я не могу использовать другой URL при использовании AutoDiscovery. Основным преимуществом API Proxy было бы, если бы мое приложение Gateway и проект реализации Mule находились в другой подсети, поэтому, если мы являемся моим сервером Gateway, взломали, никто не может попасть в мою сеть реализации.
Но если и интерфейс, и реализация находятся в одной сети, и цель состоит в том, чтобы просто вызвать конечную точку REST, не следует ли нам использовать API AutoDiscovery.
Проблемы с Mule API Gateway Proxy
- Нет определенного способа обработки исключений, если мы не можем связаться с сервером реализации.
- Нет определенного способа перемещения прокси-приложения в средах (CI/CD)
- Дополнительные HTTP-прыжки могут быть приемлемы, если вышеуказанные 2 проблемы имеют определенный путь
Автообнаружение API Mule
- Поскольку это в приложении Mule, стандартная обработка исключений.
- CI / CD определяется как проект внедрения Mule.
- Нет дополнительного HTTP-прыжка.
- Единственное, что здесь есть, это то, что мы не можем изменить URL реализации, это только тесно связанная вещь.
Может кто-нибудь дать представление о том, когда мы должны перейти на API Gateway против AutoDiscovery. Также в настоящее время есть способ обработки исключений в API Gateway Project, а также CI / CD?
1 ответ
Автоматическое обнаружение API требуется, если вы планируете применять / отменять политику к определенной конечной точке и / или использовать статистику использования в контексте API Platform. Api Autodiscovery - это разновидность метаданных, которая связывает прослушиватель HTTP(s) с его аналогичной версией API в API Manager.
Например:
<api-platform-gw:api id="api.basic.path" apiName="My API" version="1.0.0" flowRef="basic.path">
</api-platform-gw:api>
<flow name="basic.path">
<http:listener config-ref="a.http.config" />
<set-payload value="Endpoint successfully called." />
</flow>
У автоматически сгенерированных прокси-серверов Mule определено автообнаружение. Вы также можете разработать свой собственный проект и определить соответствующее автообнаружение либо с помощью пользовательского интерфейса Studio, либо напрямую обрабатывая конфигурацию XML.
Прокси-серверы предназначены для использования в том случае, если серверная часть вашей реализации не является приложением Mule (например, существующим API на основе REST, размещенным на сервере Tomcat). Вы можете обогатить логику с помощью пользовательской обработки исключений среди прочего на стороне Mule. Если вы хотите улучшить обработку исключений в бэкэнде реализации, вам придется реализовать его там.
Если ваша реализация является приложением, основанным на Mule, использование прокси не требуется. В большинстве случаев добавление соответствующего элемента автообнаружения в файл конфигурации поможет.