A Java-native, high-performance API gateway for microservices, offering service proxy, protocol conversion, and comprehensive API governance.
Apache ShenYu is a Java-native API gateway built for microservices environments. It provides service proxying, protocol conversion between various frameworks (like Dubbo, gRPC, Spring Cloud), and comprehensive API governance features including security, rate limiting, and observability. It solves the problem of managing and securing diverse backend services through a single, high-performance entry point.
Backend and platform engineers building or managing microservices architectures who need a scalable, feature-rich API gateway for traffic routing, security, and monitoring.
Developers choose Apache ShenYu for its native Java performance, extensive protocol support, and dynamic plugin-based architecture that allows for hot-swapping and customization. Its built-in dashboard and cluster-ready design make it a robust, self-hosted alternative for enterprise-grade API management.
Apache ShenYu is a Java native API Gateway for service proxy, protocol conversion and API governance.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly proxies Apache Dubbo, Spring Cloud, gRPC, WebSocket, and more, allowing unified traffic management across heterogeneous microservices as highlighted in the features list.
Hot-swappable plugins with a chain-of-responsibility model enable dynamic customization and runtime updates without downtime, as described in the plugin architecture section.
Includes built-in plugins for security (OAuth 2.0, WAF), rate limiting, and circuit breaking, providing robust traffic control out-of-the-box per the key features.
Offers a dynamic dashboard for configuring routes, permissions, and monitoring, reducing operational complexity through a GUI interface.
Requires JDK 17+ and runs on JVM, which adds overhead and limits flexibility for teams not invested in Java ecosystems, as noted in the prerequisites.
The Docker-based quick start involves multiple steps like network creation and manual routing rules, making it less approachable for simple deployments compared to turnkey solutions.
Custom plugins require Java development and deep understanding of the chain-of-responsibility model, which can steepen the learning curve for non-Java developers.