Sentinel 1.7.2 发布,完善开源生态及扩展性

Stella981
• 阅读 674

多样化的适配模块

到目前为止,Sentinel 已覆盖微服务、API Gateway 和 Service Mesh 三大板块的核心生态,同时多语言已推出 Java、C++、Go 三种语言的原生实现。

Sentinel 1.7.2 发布,完善开源生态及扩展性

得益于社区的贡献,Sentinel 1.7.2 带来了更多的适配模块:

  • Zuul 2.x 适配模块:可以针对 Zuul 2.x 网关配置定制化的流控策略,流控粒度可以是路由维度以及自定义 API 分组维度。
  • SOFARPC 适配模块:可以针对 SOFARPC provider/consumer 接口和方法配置规则,支持来源限流,支持配置 fallback 处理逻辑。

日志扩展机制

1.7.2 版本引入了全新的日志扩展机制,新增 Logger SPI 扩展点(目前仅针对 RecordLog 和 CommandCenterLog 生效)。用户可以自定义 Logger 实现来适配项目中的日志模块(如 slf4j、logback、log4j2 等)。Sentinel Core 默认的日志实现仍然基于 JDK logging,同时社区提供了 slf4j 适配模块,用户只需引入 sentinel-logging-slf4j 模块并在相应的日志配置文件中针对 sentinelRecordLogger 和 sentinelCommandCenterLogger 进行配置即可,方便使用。

Slot SPI 扩展机制重构

Sentinel 各个特性都是由不同的 slot 组成的。在之前的版本中,slot 扩展是通过 SlotChainBuilder SPI 机制来实现的,这样设计的初衷是让用户关注各 slot 的顺序,显式地编排 slot chain。但这种方式对于不同模块分别扩展 slot 来说是不灵活的,同时对于大部分用户来说其实不关心各个模块的各个 slot 的顺序。因此 1.7.2 版本我们对 slot 扩展机制进行了重构,将 ProcessorSlot 本身作为 SPI 进行扩展,每个 slot 通过 @SpiOrder 注解指定顺序,从而可以方便地将不同模块的 slot 组合起来。未来版本社区还会进一步强化 slot SPI 的扩展方式,使之具备任意插拔的能力。

其它特性与改进

  • Spring Web 适配模块支持链路维度流控
  • 完善 sentinel-transport-simple-http 模块,支持较大的 POST 请求
  • 完善规则 HTTP 方式推送的错误提示,检测客户端低版本 fastjson
    详情请参考 Release Notes,欢迎大家使用并提出建议,同时欢迎大家一起参与后续版本的演进。
点赞
收藏
评论区
推荐文章
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
捉虫大师 捉虫大师
3年前
Sentinel-Go 源码系列(一)|开篇
大家好呀,打算写一个Go语言组件源码分析系列,一是为了能学习下Go语言,看下别人是怎么写Go的,二是也掌握一个组件。本次选择了SentinelGo,一是对Java版本的Sentinel算是有一些了解,也在生产上落地过,二是感觉他的代码应该不会太复杂(仅仅是感觉),三是在云原生越来越热的趋势下,用Go实现的限流降级容错应该是比较通用的
Stella981 Stella981
3年前
Go 版本入 Dubbo 生态一周年:已和 Spring Cloud、gRPC 互通
本文作者:o\\\\0去年5月,阿里开源的高性能RPC框架Dubbo从ASF毕业并晋升顶级项目,同时,还宣布Go语言版本的Dubbogo正式加入Dubbo官方生态。经过一年的发展,Dubbogo在技术和社区运营方面都已经有了不错的成绩。Dubbogo是Dubbo的完整Go语言实现,在功能实现和技术路
Wesley13 Wesley13
3年前
Java微服务新生代之Nacos
前言从2017年底Java开发领域使用最广的RPC框架Dubbo开启重新更新维护之路开始,阿里巴巴为打造Dubbo微服务生态持续开源了Sentinel(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.com%2Falibaba%2FSenti
Stella981 Stella981
3年前
Sentinel
!9.28头图.png(https://ucc.alicdn.com/pic/developerecology/af7ab6c27c3c4c3aa5dc2cce3c9e8ab9.png)\\导读:\\2020年,Sentinel推出Go原生版本SentinelGolang(https://www.oschina.net/ac
Stella981 Stella981
3年前
Apache Dubbo的爱奇艺之旅
ApacheDubbo 简单介绍ApacheDubbo是一款开源的RPC(RemoteProcedureCall,远程过程调用)框架,其提供了简单易用、高性能的RPC能力、灵活可控的扩展、强大的服务治理、完善的开源生态支持,目前已有Java、Go、JS、Python等多个语言支持。ApacheDubbo更
Stella981 Stella981
3年前
Dubbo for Go,Ready for Now.
!(https://oscimg.oschina.net/oscnet/57dac0d7bce043448cf59f9813dd531b.jpg)多语言支持是Dubbo发展生态的重点之一。目前,Dubbo已经支持PHP/Node.js/Python,同时,基于标准的JavaRESTAPIJAXRS2.0实现了REST
Stella981 Stella981
3年前
Dubbo使用Sentinel来对服务进行降级与限流
一、Sentinel是什么Sentinel是阿里中间件团队开源的,面向分布式服务架构的轻量级流量控制产品,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户保护服务的稳定性。点此地址了解更多Sentinel(https://www.oschina.net/action/GoToLink?ur
Stella981 Stella981
3年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Stella981 Stella981
3年前
Golang注册Eureka的工具包goeureka发布
1.简介提供Go微服务客户端注册到Eureka中心。点击:github地址(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgithub.com%2FSimonWang00%2Fgoeureka),欢迎各位多多star!(已通过测试验证,用于正式生产部署)2.原理