Apache ShenYu 2.7.0.1版本发布:网关性能优化与AI插件增强
Apache ShenYu作为一款高性能、可扩展的API网关,在微服务架构中扮演着重要角色。它提供了丰富的功能集,包括流量控制、熔断降级、动态路由等,帮助开发者构建稳定可靠的分布式系统。本次2.7.0.1版本的发布,不仅修复了多个关键问题,还引入了令人期待的AI相关插件,为网关智能化提供了新的可能性。
核心优化与问题修复
在性能优化方面,本次更新对日志收集模块进行了重点改进。通过优化日志收集性能,特别是在使用Gzip压缩时解决了乱码问题,显著提升了网关处理日志的效率。同时,BodyParamUtils工具类引入了Caffeine缓存机制,减少重复计算,进一步提升了参数处理的响应速度。
针对缓存一致性问题,开发团队做出了多项改进。MetaDataCache中增加了对空值的防护处理,避免了潜在的NPE问题。AlertDispatchServiceImpl中修正了缓存删除顺序导致的数据脏读问题,确保了告警信息的一致性。此外,还修复了当使用Nacos作为同步中心时,规则缓存无法正确删除的问题。
在注册发现机制方面,修复了2.6.1版本中客户端注册失败的问题,增强了注册过程的稳定性。同时,对Kubernetes控制器代码进行了优化,提升了在K8s环境下的运行效率。
新增AI相关插件功能
2.7.0.1版本最引人注目的变化是新增了多个AI相关插件,为网关赋予了智能化能力:
-
AI代理插件:提供了与AI服务交互的能力,可以作为AI服务的统一入口,实现请求转发、结果处理等功能。
-
AI令牌限流插件:专门为AI服务设计的限流组件,能够基于令牌桶算法对AI服务的访问进行精细控制。
-
AI提示插件:支持在请求处理过程中插入AI生成的提示信息,为开发者提供更多上下文和指导。
这些AI插件的加入,使得Apache ShenYu不仅能够处理传统的API流量,还能作为AI服务的智能网关,满足日益增长的AI应用集成需求。
数据库与配置改进
在数据存储方面,本次更新修复了H2数据库中JSON格式错误的问题,并优化了从2.6.1升级到2.7.0的SQL脚本。新增了对Elasticsearch索引的每日自动生成功能,并为这些索引创建了别名,大大简化了日志检索和分析的复杂度。
配置管理方面,修正了Logging-Elasticsearch、Logging-Tencent和Logging-Aliyun等日志组件在配置修改后无法正确刷新的问题。同时,移除了过时的SpringCloud插件,重构了Discovery插件,使服务发现机制更加清晰和高效。
开发者体验提升
为了改善开发者体验,本次更新在多个方面进行了优化:
-
增加了RestTemplateConfiguration和ShenyuControllerEndpoint的测试用例,提高了代码质量。
-
使用Checkstyle工具规范化代码,避免使用==null检查,推荐使用Objects.isNull()方法。
-
优化了插件加载机制,通过ShenyuPluginClassLoaderHolder更好地管理插件类加载器。
-
修复了CollapseSlashesFilter中的路径处理问题,提升了URL规范化处理的可靠性。
-
在Dubbo支持方面,增加了protobuf序列化的支持,并优化了方法配置方式,使Dubbo集成更加灵活。
安全增强
安全方面,JWT插件进行了SPI扩展,确保能够兼容旧版JWT工具的payload解析方式,同时提供了更强的安全保证。Admin模块中增加了@Transactional注解来确保数据一致性,防止部分更新导致的数据不一致问题。
Apache ShenYu 2.7.0.1版本的发布,不仅解决了一系列稳定性问题,更重要的是通过引入AI相关插件,为网关的智能化发展开辟了新方向。这些改进使得ShenYu在性能、可靠性和功能性上都达到了新的高度,为构建下一代云原生应用提供了强有力的支持。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00