Как стать автором
Обновить

Простой API gateway на базе PHP и Lumen

PHP *Программирование *API *Laravel *
Туториал
Термин «микросервисы» сегодня у всех на слуху – внезапно это стало очень модно, и многие компании объявляют переход на этот архитектурный паттерн даже толком не разобравшись в нём. Впрочем, обсуждение полезности микросервисов оставим за пределами этой статьи.

Традиционно перед коллекцией микросервисов предлагается дополнительный слой – так называемый API gateway, который решает сразу несколько проблем (они будут перечислены позже). На момент написания этой статьи open source реализаций таких gateway почти нет, поэтому я решил написать свой на PHP с использованием микрофреймворка Lumen (часть Laravel).

В этой статье я покажу насколько это простая задача для современного PHP!
Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Просмотры 38K
Комментарии 12

Наш опыт создания API Gateway

Блог компании True Engineering .NET *Nginx *API *
Некоторые компании, в том числе наш заказчик, развивают продукт через партнерскую сеть. Например, крупные интернет-магазины интегрированы со службой доставки — вы заказываете товар и вскоре получаете трекинговый номер посылки. Другой пример — вместе с авиабилетом вы покупаете страховку или билет на аэроэкспресс.

Для этого используется один API, который нужно выдать партнерам через API Gateway. Эту задачу мы и решили. В этой статье расскажем подробности.

Дано: экосистема и API-портал с интерфейсом, где пользователи зарегистрированы, получают информацию и т.п. Нам нужно сделать удобный и надежный API Gateway. В процессе нам нужно было обеспечить

  • регистрацию,
  • контроль подключения к API,
  • мониторинг того, как пользователи используют конечную систему,
  • учёт бизнес-показателей.



В статье мы расскажем о нашем опыте создания API Gateway, в ходе которого мы решали следующие задачи:

  • аутентификация пользователя,
  • авторизация пользователя,
  • модификация исходного запроса,
  • проксирование запроса,
  • постобработка ответа.

Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 19K
Комментарии 3

Бессерверная архитектура и микросервисы: идеальная пара?

Блог компании OTUS DevOps *Микросервисы *
Перевод

image


Перевод статьи подготовлен для студентов курса «DevOps практики и инструменты» в образовательном проекте OTUS.




Когда в 2015 году начали появляться первые туториалы с использованием AWS Lambda и API Gateway, было неудивительно, что они в основном были сосредоточены на копировании микросервисной архитектуры. Но тем, кто использовал AWS Lambda в больших масштабах, с течением времени становилось понятно, что существуют значительные ограничения для применения микросервисного подхода к AWS Lambda…

Читать дальше →
Всего голосов 14: ↑11 и ↓3 +8
Просмотры 9.1K
Комментарии 7

Serverless: на 15% медленнее и в восемь раз дороже

Серверная оптимизация *Серверное администрирование *Amazon Web Services *DevOps *Облачные сервисы *
Перевод
Недавно я решил поэкспериментировать с API на нашем сайте CardGames.io и попробовать фреймворк Serverless. Последние несколько лет он стал горячей темой в мире технологий, а я прокрастинировал хотел поддерживать технические навыки в актуальном состоянии и попробовать что-то новое. Поэтому решил потратить несколько часов на изучение Serverless и посмотреть, есть ли смысл в таком размещении API.

Текущая конфигурация


CardGames.io работает на AWS. Все html-страницы, CSS, JavaScript и изображения хранятся на S3. У нас есть API на C#, размещённый на Elastic Beanstalk, он работает на серверах Linux под управлением .NET Core с Docker. Наконец, мы используем CloudFront CDN перед статикой на S3 и API. Ниже приведён счёт EC2 за август 2019 года. У нас есть несколько других инстансов, но API работают на m1.small (да, вероятно, t2.small лучше подходит) с классической балансировкой нагрузки. Если суммировать выделенное красным, то выходит $164,21 в месяц, неплохо. Я даже включил туда EBS, поскольку не уверен, как разбить эти расходы, у нас ведь несколько проектов на EC2.
Читать дальше →
Всего голосов 47: ↑45 и ↓2 +43
Просмотры 15K
Комментарии 11

Реализуем бессерверный API с AWS Gateway и Lambda

Блог компании Southbridge IT-инфраструктура *Amazon Web Services *DevOps *Serverless *
Перевод


Без API не обходится ни одно веб-приложение. Для их разработки используются разные методы. Сейчас, например, набирает популярность бессерверный подход — он экономичный, масштабируемый и относительно простой. Как ведущий провайдер бессерверных вычислений Amazon Web Services (AWS) вносит огромный вклад в бессерверную разработку. Здесь мы обсудим общие концепции реализации API с помощью AWS Lambda и других сервисов AWS.

Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 6.1K
Комментарии 2

API security design best practices for enterprise and public cloud

Информационная безопасность *API *
Из песочницы

Application Programming Interfaces or API’s are responsible for majority of system integration and functional components of modern computing landscape in both consumer and enterprise environments.

Properly constructed secure API’s provide significant benefits during initial build, integration with other systems and during entire application lifecycle while protecting sensitive information stored in business systems.

Based on author's experience designing and implementing API’s for variety of clients in financial, insurance, telecom and public sectors, security is often overlooked in favor of simplistic, vendor/product specific solutions.

This article addresses best practices for API security design in product neutral manner to help architects to plan and build easy to work with and secure API's.

Recommended approach is to separate API security from its business functionality and allow back-end developers to concentrate only on business functions. Once business logic for an API is ready, it can be published using common security components described in this article.

This article does not provide any product specific recommendations, but any modern API security/governance platform will be able to satisfy majority of suggested requirements using out-of-the-box functionality.

Read more
Рейтинг 0
Просмотры 3.3K
Комментарии 2

Разработчик в стране Serverless: создаем REST API (Часть 4)

Блог компании Lineate JavaScript *Программирование *Node.JS *Serverless *

В предыдущих частях я сделал кубики, из которых состоит serverless приложение:

Часть 1. Первые шаги. Первая лямбда

Часть 2. Разворачиваем БД

Часть 3. Как подружиться с БД

Реализовано 4 функции, развернута БД. Функции интегрированы с БД, запускаются локально в режиме отладки. Вся инфраструктура поднимается буквально с помощью нескольких SAM команд.

Но пока это мало похоже на какое-то целостное приложение, т.к. у приложения нет API. Мои лямбда функции не умеют обрабатывать http запросы. Так что  в этой части займусь вопросами, связанными с построениями настоящего API. Также сделаю интеграцию с github api.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.8K
Комментарии 0

GraphQL-gRPC API Gateway на Java

Java *API *Микросервисы *
Из песочницы
✏️ Технотекст 2022

В данной статье я хочу рассказать про процесс создания концепта API Gateway для обеспечения взаимодействия фронтенда, использующего GraphQL, и бэкенда, использующего gRPC, на Java с использованием фреймворка Quarkus.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 6.6K
Комментарии 2

Зачем компаниям API Management

Блог компании МТС Информационная безопасность *Серверная оптимизация *Микросервисы *
Из песочницы

Привет, Хабр! Мы – Ярослав Насонов и Надежда Колезнева – развиваем витрину для внешних API в МТС. Сегодня обсудим тему управления API в корпорации. Поделимся опытом внедрения API-менеджмента в МТС, расскажем, что уже сделали, сколько потратили времени, с какими ошибками столкнулись, и зачем все это вообще нужно.

Эта статья будет интересна всем, кто задумывается о централизации IT-сервисов в своей компании, не знает с чего начать внедрение API-менеджмента в компанию, и поможет ответить на вопрос – а нужно ли вообще это внедрение у себя?

Чтобы сделать статью полезной, мы побеседовали с главным по API-менеджменту в МТС – руководителем платформы ЦФК Алексеем Неботовым.

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 5.2K
Комментарии 1

Прокладываем тропинки до микросервисов

Блог компании OTUS Python *DevOps *Микросервисы *

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

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 5.6K
Комментарии 1

Опыт использования Tyk в качестве шлюза GraphQL API

Open source *IT-инфраструктура *API *Софт Микросервисы *

Вообще-то мы хотели назвать статью «Неудачный опыт…», потому что, как будет рассказано ниже, с использованием Tyk всё оказалось не так просто. Но, во-первых, даже неудачный опыт это тоже опыт. Во-вторых, нам не хотелось бы превращать заголовок в спойлер, чтобы заинтересованные специалисты всё же имели стимул прочитать статью, а не делать споропалительных выводов из одного лишь названия. Тем более с развитием Tyk многие выявленные проблемы могут стать неактуальными.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 824
Комментарии 0