博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
记一次缓存瓶颈处理
阅读量:6564 次
发布时间:2019-06-24

本文共 452 字,大约阅读时间需要 1 分钟。

背景

业务中有一个组件会产生每秒千级的数据读写,与之交互的是redis。

组件采用负载均衡,多个组件共同作业。

这几个组件都往一个内网的redis上读写。

问题

在业务高峰,用户反馈加载数据信息慢。

排查

网络正常、组件、redis所在服务器性能充足。故认为瓶颈在服务内部。

同时可知,redis支持千级的并发显然是不会成为瓶颈的。

所以判断问题在组件本身。

检索组件日志,发现与redis交互的数据操作,队列积压已到2000,。

解决

横向扩展,增加一个组件,以均摊负载

再次检索日志,发现队列积压迅速回落

进一步思考

由于没有服务内部的监控策略,所以要及时了解队列积压就比较麻烦,所以运维和开发之间就需要进一步沟通,开发在程序内部抛出具体的队列数据,然后运维这边从响应的接口获取数据,然后在平台上进行展示。

这样就可以监控组件的性能状态,可以据此考虑是否可以优化程序内部逻辑,或者需要横向扩展的数量。

 

转载于:https://www.cnblogs.com/jabbok/p/9927733.html

你可能感兴趣的文章
Android2.2 API 中文文档系列(9) —— ZoomButton
查看>>
pcDuino 刷系统-卡刷
查看>>
MySQL结构自动同步工具-schemasync
查看>>
关于在线代码运行网站的一个想法
查看>>
我的友情链接
查看>>
使用subeclipse来管理分支/标记
查看>>
我的友情链接
查看>>
django forms模块使用
查看>>
FreeBSD IPFW 防火墙的安装和设置
查看>>
Linux分区和文件系统 ⑥
查看>>
ClipDrawable--水漫起来的效果
查看>>
python中的import
查看>>
osd内的pg数量
查看>>
shell脚本与mysql交互方法汇总
查看>>
Cron 表达式详解和案例
查看>>
Android - 软件自动更新的实现
查看>>
oracle数据库远程不落地导入本地数据库
查看>>
Unix调试的瑞士军刀:lsof(转)
查看>>
dns相关内容
查看>>
JavaScript骚操作
查看>>