稳定性如何打造? 1.监控 经过鹰眼这样相似的工具来作。入口会建立tranceId,全部中间件和rpc的地方都会根绝tranceId打日志,日志经过agent传到鹰眼服务上,鹰眼服务把日志存在实时或者离线的数仓。分析数仓产生实时或者离线的链路数据,在页面上展现出来。nginx
2.全链路压测 压测流量打标,走线上应用和中间件,传递压测标,落库的时候进入影子表。 影子表和线上同库,结构同线上数据库表。为了能模拟线上数据库详情,须要把线上数据同步到影子表中。数据库
3.限流 接入层限流(TMD):在nginx上实现扩展组件,针对访问的url进行限流,访问qps,同一个ip访问qps,黑白名单等策略,被限流的请求重定向到限流页面。 服务层限流:阿里开源的sentinel,支持受权、限流、降级。 受权就是对应用进行认证。 限流是经过一个客户端,全部流量通过客户端,客户端经过diamond获取限流和降级策略。工具
降级是设置降级接口,配置接口rt时间以及超时次数,降级时间自定义。url
4.流量调度,当服务机器负载太高的时候,自动下降服务机器的路由权重,日志
5.业务开关中间件
6.业务一致性平台 经过对事件的监听,规则判断,对结果进行存储,并报警接口