提供网站建设费用,免费制作一个企业网站,自己做网站 服务器,北京手机网站开发价格流控降级中间件 Sentinel 1.7.0 版本正式发布#xff0c;引入了 Envoy 集群流量控制支持、properties 文件配置、Consul/Etcd/Spring Cloud Config 动态数据源适配等多项新特性与改进。详细特性列表请参考 Release Notes#xff0c;欢迎大家使用并提出建议。
下面我们来一起…流控降级中间件 Sentinel 1.7.0 版本正式发布引入了 Envoy 集群流量控制支持、properties 文件配置、Consul/Etcd/Spring Cloud Config 动态数据源适配等多项新特性与改进。详细特性列表请参考 Release Notes欢迎大家使用并提出建议。
下面我们来一起探索一下 Sentinel 1.7.0 的重要特性。
Envoy 集群流量控制
Envoy 目前广泛用作 Service Mesh 的数据平面作为 sidecar 承担路由和流量转发等任务。在 Service Mesh 中集群流量控制是保障整个集群稳定性必不可少的一环因此 Sentinel 1.7.0 提供了 Envoy Global Rate Limiting gRPC Service 的实现 —— Sentinel RLS token server借助 Sentinel 集群限流 token server 来为 Envoy 服务网格提供集群流量控制的能力。
Envoy RLS Sentinel overview
用户只需要拉起 Sentinel RLS token server 实例并配置集群流控规则然后在 Envoy 中进行相应的配置即可快速接入 Sentinel 的集群限流。集群流控规则项与 Envoy 的 rate limit action 生成的 descriptor 相对应支持 source_cluster、destination_cluster、request_headers、remote_address、generic_key 等几种策略支持组合。示例规则项
domain: foo
descriptors:- resources:- key: destination_clustervalue: service_aliyuncount: 1- resources:- key: remote_addressvalue: 30.40.50.60count: 10
上面的示例配置了两条规则针对的 domain 都是 foo与 Envoy 的配置相对应其中一条规则会对所有目标为 service_aliyun 集群的请求进行控制QPS 最大为 1另一条规则控制所有来源 IP 为 30.40.50.60 的请求每秒不超过 10 次。
我们提供了 Sentinel RLS token server 在 Kubernetes 环境的示例方便大家在 K8s 集群中快速体验 Sentinel 集群限流的能力。
在后续的版本我们还会改进规则动态配置的方式支持 Kubernetes CRD 的形式配置规则同时结合 Sentinel C 版本提供原生的 Envoy Filter。未来我们还会提供 Istio 的支持让 Sentinel 在 Service Mesh 中发挥更为重要的作用。
properties 文件配置支持
Sentinel 1.7.0 优化了加载启动配置项的方式支持将配置项直接配置在 properties 文件中。用户只需要通过 -Dcsp.sentinel.config.file 参数配置 properties 文件的路径即可从而简化了通用配置的方式。
动态数据源适配
Sentinel 1.7.0 新增了以下三种动态数据源的支持用户可以利用这些动态数据源保存、拉取规则
Etcd 数据源Consul 数据源Spring Cloud Config 数据源
至此Sentinel 已经支持了七种常用的配置中心可以覆盖大部分的规则推送场景。
Start hacking
值得注意的是Sentinel 1.7.0 有近一半的特性都是由社区开发者贡献的许多的特性都是社区里面进行充分讨论和 review 后出炉的因此我们可以称 Sentinel 1.7.0 是一个社区一起定义的版本。我们非常欢迎大家持续参与社区贡献一起来参与未来版本的演进。若您有意愿参与社区贡献可以参考 贡献指南 来入门同时也欢迎联系我们加入 Sentinel 核心贡献小组认领任务。积极参与贡献的开发者我们会重点关注有机会被提名为 Committer。Now start hacking!
原文链接 本文为云栖社区原创内容未经允许不得转载。