sentinel
Sentinel 会在客户端首次调用的时候进行初始化,开始向控制台发送心跳包
定义规则主要有流控规则、 熔断降级规则、系统规则、权限规则、热点参数规则
熔断降级对调用链路中不稳定的资源进行熔断降级是保障高可用的重要措施之一。
熔断降级
由于调用关系的复杂性,如果调用链路中的某个资源不稳定,最终会导致请求发生堆积。Sentinel 熔断降级会在调用链路中某个资源出现不稳定状态时(例如调用超时或异常比例升高),对这个资源的调用进行限制,让请求快速失败,避免影响到其它的资源而导致级联错误。当资源被降级后,在接下来的降级时间窗口之内,对该资源的调用都自动熔断(默认行为是抛出 DegradeException)
流量控制
流量控制(Flow Control),原理是监控应用流量的QPS或并发线程数等指标,当达到指定阈值时对流量进行控制,避免系统被瞬时的流量高峰冲垮,保障应用高可用性。
通过流控规则来指定允许该资源通过的请求次数
RabbitMQ
“消息队列”是在消息的传输过程中保存消息的容器。它是典型的:生产者、消费者模型。生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,这样就实现了生产者和消费者的解耦。
Gateway
就是对服务提供一层保护
实现统一入口,接收全部的请求,并根据定义的规则转发到相应的服务上。 在此过程当中还能够完成系统中一些通用统一的工做
,如权限校验,限流等