Gateway — это веб-шлюз на основе HTTP, который может использоваться как унифицированный слой доступа к API.
Очень подробный учебник для начинающих. Ссылка
Ниже представлены видео-уроки.
Основы:
Урок конфигурации маршрутизации:
Метод:
Пожалуйста, убедитесь, что ваша версия Go составляет 1.10 или выше. В противном случае при компиляции произойдет ошибка неопределенного "math/rand".Shuffle. Ссылка StackOverflow## Возможности
Дальнейший контент требует от читателя некоторых знаний о Docker. Вы можете обратиться к [этой книге][2] или проверьте [официальную документацию][1].
Используйте команду docker pull fagongzi/gateway
, чтобы скачать образ Gateway Docker.
Команда docker run -d -p 9093:9093 -p 80:80 -p 9092:9092 fagongzi/gateway
запускает контейнер. Определяются три порта:
80
Прокси-порт HTTP, этот порт используется для клиентского доступа.
9092
Внешний порт GRPC сервера APIServer.
9093
Внешний порт HTTP REST сервера APIServer. Для доступа к веб-интерфейсу используйте адрес http://127.0.0.1:9093/ui/index.html
.
Параметры запуска могут быть установлены с помощью следующих переменных окружения. Настройки переопределяют значения по умолчанию.
GW_PROXY_OPTS
Поддерживаются все опции команды proxy --help
.
API_SERVER_OPTS
Поддерживаются все опции команды apiserver --help
.
ETCD_OPTS
Поддерживаются все опции команды etcd --help
.
fagongzi/gateway
Быстрый стартовый образ, содержащий три компонента: etcd, proxy, apiserver, только для быстрого старта, не использовать в продакшне
.
fagongzi/proxy
Компонент proxy, готов к использованию в продакшне
.
fagongzi/apiserver
Компонент apiserver, готов к использованию в продакшне
.
Доступные проекты веб-интерфейса для шлюза:
proxy
и api-server
.Proxy — это компонент, предоставляющий услуги клиентам. Proxy является бессостоятельным узлом. Множество экземпляров proxy можно развернуть для обслуживания большого объёма трафика. Подробнее.
ApiServer предоставляет GRPC и REST для управления метаданными пользователями. ApiServer интегрирован с официальным веб-интерфейсом. Подробнее.
Сервер — это реальное сервисное приложение. Подробнее.
Кластер состоит из серверов, предоставляющих одни и те же услуги. Один из серверов выбирается для обработки конкретного запроса на основе стратегии балансировки нагрузки. Подробнее.
API — ключевая концепция шлюза. Мы можем управлять внешними API через шлюз и их правилами распределения, агрегации и соответствия URL. Подробнее.
Роутинг — это стратегия маршрутизации. Cookies, query-string, headers и path в HTTP-запросах определяют распределение трафика и его дублирование на конкретный кластер. Эта функциональность позволяет проводить A/B тестирование и перенаправление трафика онлайн. Подробнее.
Открытый исходный код — это трудная работа. Если этот проект помогает вам, вы можете купить мне кофе, спасибо!
[1]: https://docs.docker.com/ "Документация Docker"
[2]: https://github.com/yeasy/docker_practice "docker практика"
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )