Gateway de API dinámico y de alto rendimiento basado en NGINX y etcd, con plugins para enrutamiento, autenticación, limitación de tasa y tráfico de IA/LLM.
apache/shenyu
Gateway de API basado en Java para la proxy de servicios, la conversión de protocolos y la gobernanza de API, con una cadena de plugins y una consola Admin central.
Alternativa open source a:Kong
AWS API Gateway
- Estrellas
- 8,912
- Forks
- 3,111
- Issues abiertos
- 353
- Último commit
- hace 19 horas
¿Qué es?
Apache ShenYu es un gateway de API escrito en Java. Las solicitudes pasan por una cadena ordenada de plugins, y ShenYu Admin almacena plugins, selectores, reglas y metadatos, y envía la configuración a las réplicas del gateway. Su consola Admin permite gestionar la configuración de forma centralizada, mientras que las instancias del gateway aplican las actualizaciones a sus cachés locales.
El gateway hace de proxy para servicios HTTP y Spring Cloud, conexiones WebSocket y backends de Apache Dubbo y gRPC. Incluye controles de tráfico como balanceo de carga, limitación de tasa y tolerancia a fallos mediante Resilience4j y Sentinel, además de WAF, firma, autenticación, caché y reescritura de URL. Entre las incorporaciones recientes se encuentran la proxy de IA, los límites de tokens y un plugin de servidor MCP.
Los clientes de servicios registran direcciones y metadatos de API en Admin, y un controlador opcional de Kubernetes reconcilia recursos Ingress y Endpoints. La sincronización de configuración usa WebSocket de forma predeterminada, y también permite HTTP long polling, ZooKeeper, Nacos y etcd. Se ofrecen imágenes de Docker para ponerlo en marcha rápidamente.
Funciones clave
- 01Cadena ordenada de plugins con plugins Java personalizados y APIs de plugins WASM
- 02Hace de proxy para upstreams HTTP, Spring Cloud, Dubbo, gRPC y WebSocket
- 03Balanceo de carga, limitación de tasa y tolerancia a fallos mediante Resilience4j y Sentinel
- 04Consola Admin central que sincroniza la configuración con las réplicas del gateway
- 05Plugins de métricas y registros con destinos Kafka y Elasticsearch
Casos de uso
- Crear un único punto de entrada para microservicios que combinan HTTP, Dubbo y gRPC
- Aplicar autenticación, reglas WAF y límites de tasa a APIs públicas
- Hacer de proxy para llamadas a proveedores de LLM y aplicarles políticas con límites de tokens y filtrado de contenido
- Ejecutar un gateway alojado en Kubernetes que reconcilia recursos Ingress
Inicio rápido
- 1
Crear la red de Docker
docker network create shenyu - 2
Generar los secretos e iniciar los contenedores Admin, demo y gateway como se indica en el README
- 3
Configurar la ruta de ejemplo en gateway como se indica en el README
- 4
Verificar la ruta a través de gateway
curl -i http://localhost:9195/index.html
Antes de usarlo
- El inicio rápido de Docker usa una base de datos H2 en memoria de forma predeterminada, por lo que se necesita una base de datos persistente para conservar las rutas.
- SOFA y Tars ya no se incluyen y requieren starters de plugin-store por separado.
- Apollo está obsoleto y Hystrix también, por lo que conviene evitar ambos en proyectos nuevos.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es shenyu?
- Gateway de API basado en Java para la proxy de servicios, la conversión de protocolos y la gobernanza de API, con una cadena de plugins y una consola Admin central. Apache ShenYu es un gateway de API escrito en Java. Las solicitudes pasan por una cadena ordenada de plugins, y ShenYu Admin almacena plugins, selectores, reglas y metadatos, y envía la configuración a las réplicas del gateway. Su consola Admin permite gestionar la configuración de forma centralizada, mientras que las instancias del gateway aplican las actualizaciones a sus cachés locales.
- ¿shenyu es gratuito? ¿Qué licencia tiene?
- shenyu es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿shenyu sigue mantenido?
- Mantenimiento activo. El último commit de shenyu fue el 6 nov 2026.
- ¿Para qué puedo usar shenyu?
- Crear un único punto de entrada para microservicios que combinan HTTP, Dubbo y gRPC Aplicar autenticación, reglas WAF y límites de tasa a APIs públicas Hacer de proxy para llamadas a proveedores de LLM y aplicarles políticas con límites de tokens y filtrado de contenido Ejecutar un gateway alojado en Kubernetes que reconcilia recursos Ingress
- ¿Cómo se instala shenyu?
- Crear la red de Docker: docker network create shenyu Generar los secretos e iniciar los contenedores Admin, demo y gateway como se indica en el README Configurar la ruta de ejemplo en gateway como se indica en el README Verificar la ruta a través de gateway: curl -i http://localhost:9195/index.html
- ¿Dónde consigo shenyu?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/apache/shenyu
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Framework RPC para Go orientado a crear microservicios, con descubrimiento de servicios extensible, varios transportes y codecs, y acceso desde otros lenguajes mediante HTTP.
Un API gateway basado en Spring Framework y Spring Boot para enrutar y filtrar solicitudes HTTP en entornos de microservicios.
API Gateway declarativo y sin estado, de alto rendimiento y escrito en Go, para enrutar, agregar y proteger llamadas a microservicios backend.
Kong es un gateway de API, LLM y MCP nativo de la nube e independiente de la plataforma, extensible mediante plugins, para enrutar y proteger el tráfico de servicios.
Plataforma de código abierto para el descubrimiento dinámico de servicios y la gestión dinámica de configuraciones y metadatos de servicios en sistemas nativos de la nube y de microservicios.