Repolode
apache

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:KongAWS 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. 1

    Crear la red de Docker

    docker network create shenyu
  2. 2

    Generar los secretos e iniciar los contenedores Admin, demo y gateway como se indica en el README

  3. 3

    Configurar la ruta de ejemplo en gateway como se indica en el README

  4. 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