00:05
大家好,欢迎来到腾讯服务治理北极星重磅发布现场,我是微服务架构师严松柏,今天会由我给大家介绍一下我们北极星的产品啊,北极星是腾讯开源的服务发现和治理中心啊,截止2021年9月,在线节点数已经超过500万个啊,他每天的服务调用量也超过三十万亿啊,调用成功率是五个九,然后覆盖了腾讯内部90%以上的业务部门啊,右图可以看到这是啊,我们腾讯内部正在使用北极星这个产品的一些产品,像啊QQ音乐、微信支付,王者荣耀都是北极星的用户。啊,那么北极星啊是以注册配置中心为基础,扩展了服务治理功能以及相应的控制面,各个部分的功能可以单独使用。那么从下图可以看到,我们基础的功能主要包含了服务发现、服务注册、健康检查以及配置管理,然后我们扩展的一些功能就是服务治理相关的功能,主要包含了像流量调度、熔断降级、访问控制,还有可观测性上的一些功能的扩展。那么在数据面上我们也支持多语言的SDK,甚至支持S还有的方式,然后开发框架也非常丰富,可以看到主流的像GPC呀,Spring cloud呀等等都是我们支持的。
01:36
啊,那么啊,北极星采用了计算存储分离的架构,然后性能可以做到无限的扩展。左边是传统的注册中心,比如说我们以呃为例,呃,它的这个呃数据同步的方式维护集群的数据一致性,所以说呃呃单集群管理2000以上的节点就会出现高负载,那么8000节点以上可用性就无法保证了。呃原因就是计算呃存储计算合一,不支持数据分辨,无法平行扩展带来的这种呃性能瓶颈。那么北极星的这个注册中心是怎么做的呢?就看右图可以看到啊,北极星是支持存储计算分离控制面无状态的,可以随时接入节点的增加平行扩展,能够轻松支持百万节点啊,这就是北极星在性能上面的优势。
02:30
那么我们看一下北极星的能力啊,北极星首先它提供服务熔断降级的能力啊,故障熔断能力是服务框架的一个必备功能,它可以保证服务在线网运行的过程中,当故障发生时,对故障的资源进行隔离,从而最大限度的保证服务的高可用。那么北极星主要是通过两个手段来实现熔断降级的功能,第一个就是啊,我们会基于服务调用的失败率或者错误数等信息来对故障的这个资源进行剔除,如左下角的图所示,当这个请求客户端去选择我们节点A的时候,如果节点A呃出了故障,那么我们的熔断器就会去熔断,然后我们会让他去调用节点C啊那么第二个就是服务降解能力,当啊支持当资源不可用时,我们去进行操作,防止出现超时或者崩的这个现象,可以看右图。
03:30
啊,当我们的请求通过北极星去调用服务A的时候,服务A不可用,那我们就可以去做服务的降级,执行本地的方法来去保证我们能够有一个呃正常的响应。好,那我们看一下第二个能力就是啊访问限流的能力啊,北极星会为业务提供多种维度的和高精度的,这个流量限流的策略,包括说服务接口或者标签方式的,那我们在限流的过程中主要会分为两类,一类是单机限流,另一类是分布式限流。那我们看左图单机限流,单机限流就是针对单个被调用的实例级别的限流,限流的限额只只针对当前被调用实例生效,它不会共享。那么分布式限流就是指我们针对服务下所有的实例级别的限流,多个服务实地共享同一个全局。呃,流量限额可以看业务图,就是分布式限流的,呃,这个架构图,我们在分布式限流的时候,会有一个限流服务来提供统一的流量额度分配,来保证所有的服务实力都会被响应。
04:42
那么另外一个就是北极星提供流量治理的能力啊,北极星首先是基于服务实力、标签以及调用关系的流量治理的能力,基于这样的流量的治理能力的话,那么用户就可以实现下列的几个场景,第一个就是优雅上下线,那么它是指服务在启动到正式上线或者服务下线到停机的这个过程中,切走访问流量,提高服务访问的成功率。第二个就是我们实现灰度发布啊,如下图所示,当我们的请求、外部请求进入到网关之后,那么呃,我们的这个北极星可以去息一定的规则,通过不同的路由规则路由到不同的后端服务中去,那么就实现了一个灰度发布的能力。第三个就是单元化,单元化是指我们可以把服务按照不同的逻辑set进行单元化部署,Set之间会进行逻辑隔离,在容灾情况下允许跨set调度。
05:43
那么就可以实现一种单元化的效果,这就是我们北极星提供流量治理的呃,三大场景,那么北极星的使用方式也非常的丰富多元,我们支持代码入侵的方式和代码补入侵的方式,那我们首先来看代码入侵的方式,第一个就是比如说我们支持多语言的SDK接入啊,像主流的购物Java啊等等语言都是我们所支持的,那么用户只需要通过代码接入北极星的SDK就可以了。第二种就是一些弱入侵的方式,比如说我们支持一些依赖于框架,像SP cloud呀,GPC呀等等,像我们北极星也发布了SP cloud Tencent的SDK,来来方便用户快速的去接入北极星。
06:32
那么下面介绍一下代码无入侵的方式,嗯,代码入无入侵的方式有三种,第一种就是通过set卡的模式来去呃接入我们支持的接入方式,第二个就是啊,我们也通可以通过注册中心API兼容的方式来接入,比如说我们支持的注册中心有瑞卡,瑞卡接入到北极星是可以无缝。支持的,嗯,最后一个就是我们可以通过DNS的方式接入应用,只需要进行DNS接入的相关配置就可以实现接入北极星了,所以说可以看到我们北极星的接入方式支持非常丰富的。
07:10
好,下面就是北极星的产品的一个,呃,概略介绍,那感谢大家的观看,谢谢。
我来说两句