性能远超Spring Cloud Gateway!Apache ShenYu如何重新定义API网关!
Apache ShenYu
Apache ShenYu是一个异步的,高性能的,跨语言的,响应式的 API 网关。
特点
-
• 代理:支持Apache Dubbo,Spring Cloud,gRPC,Motan,SOFA,TARS,WebSocket,MQTT
-
• 安全性:签名,OAuth 2.0,JSON Web令牌,WAF插件
-
• API治理:请求、响应、参数映射、Hystrix、RateLimiter插件
-
• 可观测性:跟踪、指标、日志记录插件
-
• 仪表板:动态流量控制,用户菜单权限的可视化后端
-
• 扩展:插件热插拔,动态加载
-
• 集群:NGINX、Docker、Kubernetes
-
• 语言:提供.NET,Python,Go,Java客户端用于API注册
安装部署
支持本地部署、单机快速部署、二进制包部署、Docker-Compose部署、Docker部署、K8s部署、Helm部署、自定义部署、宝塔面板部署,下面以Docker部署为例进行实战:
拉取镜像
docker pull apache/shenyu-admin
创建网络
docker network create shenyu
启动容器
docker run -d -p 9095:9095 --name shenyu-admin --net shenyu apache/shenyu-admin
启动日志,默认用h2数据库。
浏览器访问localhost:9095
默认账号: admin
默认密码: 123456
登录成功后进入系统页面
页面功能
插件列表
-
• Mock
-
• Cache
-
• Authentication
-
• FaultTolerance
-
• Ai
-
• HttpProcess
-
• Cryptor
-
• Common
-
• Proxy
-
• Logging
-
• MCP
-
基础配置
-
• 命名空间管理
-
• 插件元数据管理
-
• 插件管理
-
• 插件处理管理
-
• 认证管理
-
• 元数据管理
-
• 字典管理
-
系统管理
-
• 角色管理
-
• 用户管理
-
• 资源管理
-
• 告警管理
-
• 扩缩容管理
-
文档说明
-
• API文档
通过详细使用请参考官方文档:
官方文档
https://shenyu.apache.org/zh/docs/index
开源地址
https://github.com/apache/shenyu
系列文章索引
MyBatis的插件能在哪些地方进行拦截?
了解MyBatis的缓存机制吗
面试官:谈谈对volatile的理解
Spring中用到了哪些设计模式
面试官:说一下SQL的执行过程
线程池的工作原理