spring cloud alibaba

181 阅读2分钟

nacos与springboot 搭建 blog.csdn.net/wgc0802402/… blog.csdn.net/jlxuejian/a…

provide可以跑起来,但是summer跑不起来,和dubbo差不多(dubbo是提供接口),先根据服务名注入进来,再通过ip,port+服务名调用

左对齐右对齐居中对齐
单元格单元格单元格
单元格单元格单元格

springcloudalibab学习 参考内容: developer.aliyun.com/article/740…

developer.aliyun.com/article/716…

缺一部分内容 链路追踪,zipkin或者skywarking

其中的rpc框架有dubbo/feign/restTemplate

阿里中间件组件架构,快速搭建分布式应用系统

或者

springboot nacos dubbo 整合

blog.csdn.net/lzxomg/arti…

1. dubbo-spring-boot-api作用是向外暴露接口
2. 那provider和consumer是怎么知道上边那个api的存在的呢? 工程之间之间添加api的pom.xml 
3. 这么做的好处,使接口完全对外隔离

feign

例子:blog.csdn.net/qq_28410283…

可能涉及到的坑解决办法:blog.csdn.net/pointer_v/a…

sentinel

参考:

blog.csdn.net/lzb34811017…

流控规则:

  1. 阈值类型QPS,就是每秒最大访问次数,超过了,可以选择下边的直接快速失败

  2. 阈值类型 线程数,如果单机阈值是2,就是一个函数在没有执行返回之前(sleep 30秒),调用次数超过2次就直接快速失败,这个很有用,可以解决,一个函数一直不返回,然后又多次发起重复调用,导致系统崩溃的问题

  3. 关联,的意思:下单服务A关联支付服务B,当疯狂调用支付服务时,超出自己的阈值后,下单服务就会被限流,B惹事,A承担,也就是B已经被限流了,A就不要再操作了,当然再sentinel配置的时候,先配置A QPS 阈值1,关联服务B

  4. 链路:对链路中的某个函数超过阈值就对整个链路进行限流

  5. warm up,允许系统慢慢呼呼的进行预热,经预热市场逐渐升至设定的QPS阈值,适用于秒杀系统,慢慢的将流量放进来,最终达到指定的阈值

  6. 排队等待,适用于某一秒有大量的请求到来,接下来的几秒处于空闲状态,希望在接下来的空闲时间内处理这些请求,而不是一秒内直接拒绝多余的请求。

降级规则

  1. RT(平均响应时间ms,就是1s内有N个请求过来,对应的平均响应时间是m毫秒,如果超过阈值,name在接下来的时间窗口内,断路器处于打开状态,时间窗口结束后,断路器关闭,服务可以正常访问。)

  2. 异常比例,每秒异常数占比超过异常,然后时间间隔内熔断

  3. 异常数,1分钟内异常数超过某个阈值,然后在时间间隔内熔断

系统规则

保护系统的正常运行,同级层面有Load自适应、CPU使用率、平均RT、入口QPS、并发线程数