引起雪崩的原因:
1、硬件故障;
2、程序Bug;
3、缓存击穿(用户大量访问缓存中没有的键值,导致大量请求查询数据库,使数据库压力过大);
4、用户大量请求;
服务雪崩表现:
服务雪崩的第一阶段: 服务不可用;
第二阶段:调用端重试增大流量(用户重试/代码逻辑重试);
第三阶段:服务调用者不可用(同步等待造成的资源耗尽);
3、解决方案
1) 应用扩容(扩大服务器承受力)
a、加机器
b、升级硬件
2)流量控制(超出限定流量,返回类似重试页面让用户稍后再试)
a、限流
b、关闭重试
3) 缓存
将用户可能访问的数据大量的放入缓存中,减少访问数据库的请求。
4)服务降级
a、服务接口拒绝服务
b、页面拒绝服务
c、延迟持久化
d、随机拒绝服务
5) 服务熔断
如果对服务降级和服务熔断——如使用hystrix
标签:拒绝服务,缓存,服务,用户,重试,雪崩,思考 来源: https://blog.csdn.net/u012654963/article/details/120499514
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。