[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-mikroservisy-chto-takoe-api-gateway-i-zachem-on-nuzhen":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":16,"progress":17,"seo":18},825,"chto-takoe-api-gateway-i-zachem-on-nuzhen",23,"mikroservisy","Микросервисы","🔗","Что такое API Gateway и зачем он нужен?","API Gateway — это единая точка входа для всех клиентских запросов к микросервисам. Он выступает обратным прокси, маршрутизирует запросы к соответствующим сервисам и выполняет сквозные функции: аутентификацию, rate limiting, логирование.\n\n### Функции API Gateway\n\n- Маршрутизация запросов — направление запросов к нужному сервису по URL-пути.\n- Аутентификация и авторизация — проверка токенов (JWT, OAuth2) на входе.\n- Rate limiting — ограничение количества запросов.\n- Load balancing — балансировка нагрузки между экземплярами сервиса.\n- Агрегация запросов — объединение ответов от нескольких сервисов.\n- Кеширование — кеширование частых запросов.\n- Трансформация запросов\u002Fответов — изменение формата данных.\n- SSL termination — обработка HTTPS.\n- Логирование и мониторинг — централизованный сбор метрик.\n\n\u003Cdetails>\u003Csummary>Spring Cloud Gateway: YAML-конфигурация\u003C\u002Fsummary>\n\n```yaml\n# application.yml\nspring:\n  cloud:\n    gateway:\n      routes:\n        - id: payment-service\n          uri: lb:\u002F\u002Fpayment-service\n          predicates:\n            - Path=\u002Fapi\u002Fpayments\u002F**\n          filters:\n            - StripPrefix=1\n            - name: CircuitBreaker\n              args:\n                name: paymentCircuitBreaker\n                fallbackUri: forward:\u002Ffallback\u002Fpayments\n            - name: RequestRateLimiter\n              args:\n                redis-rate-limiter.replenishRate: 100\n                redis-rate-limiter.burstCapacity: 200\n\n        - id: customer-service\n          uri: lb:\u002F\u002Fcustomer-service\n          predicates:\n            - Path=\u002Fapi\u002Fcustomers\u002F**\n          filters:\n            - StripPrefix=1\n            - AddRequestHeader=X-Request-Source, api-gateway\n```\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>Spring Cloud Gateway: программная конфигурация\u003C\u002Fsummary>\n\n```java\n@Configuration\npublic class GatewayConfig {\n\n    @Bean\n    public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {\n        return builder.routes()\n            .route(\"payment-service\", r -> r\n                .path(\"\u002Fapi\u002Fpayments\u002F**\")\n                .filters(f -> f\n                    .stripPrefix(1)\n                    .addRequestHeader(\"X-Gateway\", \"true\")\n                    .retry(config -> config\n                        .setRetries(3)\n                        .setStatuses(HttpStatus.SERVICE_UNAVAILABLE)))\n                .uri(\"lb:\u002F\u002Fpayment-service\"))\n            .build();\n    }\n}\n```\n\n\u003C\u002Fdetails>\n\n### Альтернативные решения\n\n- Kong — высокопроизводительный API Gateway на базе Nginx, с плагинами.\n- NGINX — может использоваться как простой API Gateway.\n- AWS API Gateway — управляемый сервис в облаке AWS.\n- Envoy — часто используется в связке с Service Mesh (Istio).\n\n> **На собеседовании:** API Gateway — это не просто «прокси». Покажите, что понимаете его роль в безопасности (JWT-валидация на входе), устойчивости (circuit breaker, rate limiting) и наблюдаемости (централизованное логирование). Частая ошибка — не упомянуть, что Gateway может стать единой точкой отказа.","","middle",[15],"microservices",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":23,"featuredSnippetReady":24},"Что такое API Gateway и зачем он нужен? — Gymterview","API Gateway — это единая точка входа для всех клиентских запросов к микросервисам. Он выступает обратным прокси, маршрутизирует запросы к соответствующим сервис","API Gateway — это единая точка входа для всех клиентских запросов к микросервисам. Он выступает обратным прокси, маршрут",[15,13],"API Gateway — это единая точка входа для всех клиентских запросов к микросервисам. Он выступает обратным прокси, маршрутизирует запросы к соответствующим сервисам и выполняет сквозные функции: аутентификацию, rate limiting, логирование.",true]