|
Ocelot - это API-шлюз с открытым исходным кодом, реализованный на .NET Core, с мощными функциями, включая: маршрутизацию, агрегацию запросов, обнаружение сервисов, аутентификацию, проверку подлинности, ограничение потоков, встроенный балансировщик нагрузки с интеграцией Service Fabric и Butterfly Tracing. Эти функции нуждаются только в простой настройке, мы расскажем о настройке этих функций по очереди.
Конечно, в Java-проекте также есть шлюз, Spring Cloud Gateway - это новый шлюзовой фреймворк Spring Cloud, ранее Netflix Zuul.
[Практическое занятие] Развертывание Kong API Gateway для CentOS 7 h ttps:// www.itsvse.com/thread-5682-1-1.html Прежде всего, создайте новый пустой проект ASP.NET Core 3.1, имя: dotnet-gateway-demo
nuget install ocelot с помощью следующей команды:
Создайте два новых api-проекта asp.net core 3.1 с именами "web-api-demo1" и "web-api-demo2". Структура решения показана ниже:
Измените метод Get контроллера WeatherForecastController проектов "web-api-demo1" и "web-api-demo2" следующим кодом:
ссылка на демо1: http://localhost:7853/weatherforecast ссылка на демо2: http://localhost:7863/weatherforecast
В корневом каталоге проекта dotnet-gateway-demo создайте новый конфигурационный файл "ocelot.json" следующим образом:
Адрес BaseUrl должен быть стартовым URL текущего проекта, в соответствии с вашей реальной ситуацией.
- DownstreamPathTemplate: относительный путь к нижележащему сервису DownstreamScheme: http-схема нижележащего сервиса DownstreamHostAndPorts: адрес нижележащего сервиса, вы можете заполнить более одного, если используете LoadBalancer.
UpstreamPathTemplate: шаблон url запроса восходящего потока, введенный пользователем UpstreamHttpMethod: http-метод запроса восходящего потока, может быть массивом
В CreateHostBuilder в Program.cs добавьте
Отредактируйте файл Startup.cs, добавив в него следующий код:
Его основной код таков:
Настройте стартовый проект на одновременный запуск 3 веб-проектов, как показано ниже:
После завершения настройки запустите и попробуйте получить доступ к сайтам: http: //localhost:7639/demo1 и http://localhost:7639/demo2 в соответствии с нашими правилами настройки, как показано ниже:
Мы добавляем следующую конфигурацию в файл ocelot.json для попытки обратного проксирования этого сайта, конфигурация выглядит следующим образом:
Попробуйте посетить: http: //localhost:7639/itsvse
Скачать исходный код:
Гость, если вы хотите просмотреть скрытое содержимое этого сообщения, пожалуйста, ответьте
Ссылка на документ: https: //ocelot.readthedocs.io/en/latest/
(Окончание)
|
Предыдущая статья: Очистка кода в VS 2019 (Visual Studio)Следующая: [Front-end essential] панель отладки разработчика
|