Apache ShenYu 2.5.1 发布
春节刚过,Apache ShenYu 便迎来了 2.5.1 版本。此次发布内容,共有 250+ 个 Pull Request ,60+ 位贡献者的参与。新增了若干功能,修复了 bug,优化了若干内容。
新功能
- 添加
bRPC插件
- 在网关中引入
bRPC插件 引入网关对bRPC的代理插件,在网关的pom.xml文件中增加如下依赖:
<!-- apache shenyu brpc plugin -->
<dependency>
<groupId>org.apache.shenyu</groupId>
<artifactId>shenyu-spring-boot-starter-plugin-brpc</artifactId>
<version>${project.version}</version>
</dependency>
bRPC服务接入网关在由
bRPC构建的微服务中,引入如下依赖:
<dependency>
<groupId>org.apache.shenyu</groupId>
<artifactId>shenyu-spring-boot-starter-client-brpc</artifactId>
<version>${shenyu.version}</version>
</dependency>
- 在
application.yaml配置文件增加如下配置:
server:
port: 8011
address: 0.0.0.0
servlet:
context-path: /
spring:
main:
allow-bean-definition-overriding: true
application:
name: brpc-exmaples
shenyu:
register:
registerType: http #zookeeper #etcd #nacos #consul
serverLists: http://localhost:9095 #localhost:2181 #http://localhost:2379 #localhost:8848
props:
username: admin
password: 123456
client:
brpc:
props:
contextPath: /brpc
ipAndPort: brpc
appName: brpc
port: 8005
host: 127.0.0.1
# starlight
starlight:
server:
enable: true
port: 8005
关于 bRPC 插件的更多使用请参考
https://shenyu.apache.org/zh/docs/plugin-center/proxy/brpc-plugin
- 支持
Nacos不同命名空间
- 优化
mock插件
- 注册中心实例支持
eureka
- 支持
API文档
- 添加
Sentinel插件的规则处理参数
- 添加
e2e测试引擎 支持Apache ShenYu的End to End测试。
- 添加
casdoor插件支持SSO
具体使用请参考:https://shenyu.apache.org/zh/docs/plugin-center/security/casdoor
- 添加
logging-tencent-cls插件 该插件用于支持收集日志到Tencent cls日志平台,并通过Tencent cls日志平台进行数据分析。
具体使用请参考:https://shenyu.apache.org/zh/docs/plugin-center/observability/logging-tencent-cls
- 添加
logging-clickhouse插件
添加
logging-pulsar插件通过
Pulsar收集网关http请求日志,通过其他应用消费Pulsar消息,并且对日志进行分析。架构图:
插件使用流程图
具体使用请参考: https://shenyu.apache.org/zh/docs/plugin-center/observability/logging-pulsar
- 添加
key-auth插件
增强
- 优化
motan客户端注解
- 优化
motan插件配置
- 优化
websocket客户端注解
- 优化
springcloud客户端注解
- 优化
springmvc客户端注解
重构
- 重构
API文档的mock请求
- 重构
logging-clickhouse插件
- 优化
dubbo相关maven依赖
- 重构
sign插件
- 更新
ShenyuExtConfiguration
- 移除不必要的单例
- 修复并发场景
mock数据
- 重构
sdk测试
- 重构
DefaultSignService
- 重构
shenyu-admin规则
- 优化
ShaUtil
- 优化缓存
- 修复
ConcurrentModificationException
- 修复
etcd数据同步
- 重构
sdk客户端
- 优化请求超时
- 重构日志模块
- 重构
springcloud客户端
- 重构
Motan插件
- 重构
admin数据同步
- 重构
tars客户端
- 重构
alibaba-dubbo客户端
- 重构
springmvc客户端
- 重构
admin配置
- 优化随机算法
- 重构负载均衡算法
- 重构
logging-kafka插件
错误修复
- 移除多余的
cookie设置
- 修复
appAuth删除逻辑
- 修复
Cryptor-Request插件
- 修复
ext插件
- 修复升级脚本
- 修复
Nacos注册空指针问题
- 修复
sandbox json解析
- 修复插件更新时的异常
- 修复
postgresql脚本
- 修复
sentinel插件的异常
- 修复
TencentClsLog异常
- 修复更新密码异常
- 修复选择器分页异常
- 修复
request插件异常
- 修复
RateLimiter插件并发处理异常
- 修复
sign插件异常
- 修复
context-path插件异常
贡献者
特别感谢以下贡献者对 2.5.1版本的支持和参与(排名不分先后)。
dragon-zhang, zhengpeng, mahaitao, 愿凌飞, hdgaadd, dayu, SongTao Zhuan g, Misaya295 , Shawn Jim , yunlongn , Will , moremind , RayayChung , Kevin Clair , huanccwang , 柯杨 , Kunshuai Zhu , fantiq , youzipi , class , kyeongsun , 杨阳洋 , Liming Deng , 杨文杰 , xcsnx , hnxiaoyuan , dependabot , xiaoyu , wzhangNJ , Zihao Huang , ywj1352 , pandaapo , WuLang , Nineteen , kyeongsun , ableYang , Runqi Zhao , WeiS , Luke.Z , lahmxu , Sinsy , Daming , BoyuLi4 , jakiuncle , Bowen Li , huanccwang , gitchenjh , DamonXue , Wu Daifu , Jiageng , nuo-promise , Guocheng Tang , likeguo , Sixh-PrFor , throwable , renzhuyan , wangteng , qinghai777 , zly123987123 , 奕仁 , 尔等同学 , qifanyyy , Jairo , ousinka
关于Apache ShenYu
Apache ShenYu 一款使用 Java Reactor 开发的响应式API 网关。以其高性能,动态灵活的流量管控,热插拔,易部署等特性,开箱即用为用户提供整套全生命周期的 API网关,包含 API注册、服务代理、协议转换与 API治理等功能。于2022年7月毕业成为Apache顶级项目。
官网: https://shenyu.apache.org GitHub: https://github.com/apache/shenyu
成为贡献者
我们欢迎每一位贡献者的加入!
贡献者指南请参考:

