Как использовать API-шлюз AWS в качестве интерфейса для лямбда-функций – CloudSavvy IT

API-интерфейс Gateway Hero

API Gateway – это полностью управляемый сервис для создания, тестирования и размещения производственных API. Вместо того, чтобы арендовать сервер EC2 и самостоятельно управлять своим сервером API, API Gateway может помочь вам в этом и оптимизировать весь процесс.

Что такое API-шлюз?

API Gateway – это, по сути, обратный прокси-сервер, который извлекает данные из других служб и возвращает их структурированным образом. Однако вместо того, чтобы запускать его самостоятельно, бремя обработки трафика и инфраструктуры переходит на AWS, который может сделать это гораздо дешевле.

Это в основном позволяет API Gateway выступать в роли «входной двери» для многих других сервисов AWS. Например, подключив его к AWS Lambda, вы можете создать серверную часть микросервисов без использования серверов EC2. Лямбда-функция может быть настроена для подключения.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

API-шлюз находится напротив других сервисов

API Gateway отлично работает в качестве основного интерфейса для API-интерфейсов общего назначения HTTP, но он также очень полезен для управления общей структурой и схемой API-интерфейсов REST. При создании API-интерфейсов REST вы можете точно определить все маршруты и методы и подключить их к любой службе AWS, которую вы пожелаете.

Структура REST API

API GateWay также можно использовать для управления API-интерфейсами WebSocket, которые используются для быстрой связи в режиме реального времени путем открытия прямого соединения с сервера на клиент.

Сколько стоит API Gateway?

Для универсальных HTTP API API Gateway просто стоит $ 1,00 за миллион запросов после того, как вы превысите первый миллион, приходящийся на уровень бесплатного пользования.

Для API REST цена выше, $ 3,50 за миллион запросов. При желании вы также можете включить кэширование для своего REST API, что повысит производительность за счет почасовая оплата в зависимости от размера вашего кеша,

Для API WebSocket цены немного отличаются. Поскольку они предназначены для коротких сообщений от сервера к клиенту, вы платите только 1 доллар за миллиард запросов, 1000 дешево за запрос, как два других. Тем не менее, вы ограничены 128 КБ полезных нагрузок, и вы также платите $ 0,25 за миллион минут соединения. Если у вас постоянно есть много клиентов, подключенных к API WebSocket, вы будете платить за каждого из них.

Однако следует отметить, что, хотя за передачу данных не взимается определенная плата, API-интерфейсы HTTP измеряются с шагом 512 КБ. Например, один запрос API, который возвратил ответ 1,5 МБ, будет выставлен как три запроса API. API-интерфейсы WebSocket тарифицируются с шагом 32 КБ. Это может легко удвоить ваши затраты на API-шлюз, если ваши полезные нагрузки особенно велики.

Конечно, если вы подключаетесь к другой службе AWS, вам придется оплатить все расходы, связанные с этими услугами (например, сборы за вызовы функций Lambda), а также сборы за передачу данных за перенос данных из AWS.

Настройка HTTP API для подключения к Lambda

Хотя API-интерфейсы REST предлагают больше организационных инструментов для управления самим API, они намного сложнее и стоят гораздо дороже при загрузке. Вместо этого мы будем использовать базовые HTTP API, которые проще создавать и подключать к Lambda.

Выберите «HTTP API» для создания из меню создания. Первое, что вам нужно настроить, это ваши интеграции; HTTP API поддерживают конечные точки HTTP и функции Lambda. Вы можете добавить несколько интеграций, которые могут быть полезны, если вы хотите, чтобы отдельная лямбда-функция обрабатывала каждый маршрут вашего API.

добавить интеграции

Далее вы настроите маршруты для API. Они могут быть размещены на суб-URL, как /usersи будет вызывать различные цели интеграции в зависимости от метода, с которым соединяется клиент. Например, GET /messages может вернуть список сообщений, но POST /messages может загрузить новое сообщение.

добавить маршруты

Вы, вероятно, захотите отличить API-интерфейсы разработки и производства. Вы можете создать несколько сред в виде «этапов», которые будут служить этой цели. По умолчанию $default Среда автоматически обновляется при любых изменениях и служит этапом разработки. Возможно, вы захотите создать этап «Производство», который вы сможете использовать для $default к.

добавить этапы

После этого ваш API должен быть настроен и готов к использованию. В разделе «Этапы» вы найдете URL-адрес вызова для вашего API. Это связано с самой стадией развертывания API и будет оставаться статичным. Это должно выглядеть примерно так:

https://api_id.execute-api.us-east-1.amazonaws.com

Если вы хотите использовать это с настраиваемым доменным именем, вам нужно будет сгенерировать сертификат ACM, чтобы безопасно связать API-шлюз с вашим доменом, и отредактировать конфигурацию DNS так, чтобы она указывала на сам шлюз. Если вы используете Route 53, этот процесс довольно упрощен.

На вкладке «Авторизация» вы найдете настройки для настройки вашего API с аутентификацией JWT. В настоящее время это единственный метод, поддерживаемый HTTP API.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *