redis大量increment导致接口瓶颈
redis大量increment操作,导致TPS在2W/s达到瓶颈
问题现象:6台tomcat服务器 + 3台redis-cache + 2台redis-MQ的TPS仅有2W/s,和理论值6k(单台tomcat的最大值)有差距。
问题分析:tomcat、redis-cache、redis-MQ都有可能出现问题,通过增减机器的差异对比,缩小问题的范围。tomcat的应用服务器的资源指标正常,可能性不大。
问题定位:(1)增加一台redis-cache,TPS没有改观,初步断定redis-cache存在瓶颈。(2)查看redis的监控,发现4台redis-cache中有1台的CPU达到100%,其他3台都在80~90%,形成木桶效应。(3)代码分析:发现gain接口里面有大量的increment操作;热点key避免产生瓶颈落在不同的redis上,但increment操作时所有的机器都来竞争操作这个key,造成瓶颈。
解决办法:increment主要是为了实时统计领券量,并显示在看板上方便监控数据。非核心业务,可以去掉increment操作,改成通过elk日志统计。
redis大量increment导致接口瓶颈相关推荐
- java redis使用卡死_记一次找因 redis 使用不当导致应用卡死 bug 的过程
原标题:记一次找因 redis 使用不当导致应用卡死 bug 的过程 作者:小木 my.oschina.net/xiaomu0082/blog/2990388 首先说下问题现象:内网sandbox环境 ...
- redis mysql 原子计数器_使用redis的increment()方法实现计数器功能案例
一直知道redis可以用来实现计数器功能,但是之前没有实际使用过,昨天碰到一个需求:用户扫码当天达到20次即提示:当日扫码次数达到上限! 当时就想到使用redis的递增方法increment()来实现 ...
- redis 判断存在性_实战 | springboot+redis+拦截器 实现接口幂等性校验
来源:https://www.jianshu.com/p/6189275403ed 一.概念 幂等性, 通俗的说就是一个接口, 多次发起同一个请求, 必须保证操作只能执行一次 比如: 订单接口, 不能 ...
- 一个致命的 Redis 命令,导致公司损失 400 万
转载自 一个致命的 Redis 命令,导致公司损失 400 万 最近安全事故濒发啊,前几天发生了<顺丰高级运维工程师的删库事件>,今天又看到了 PHP 工程师在线执行了 Redis 危险 ...
- prometheus监控redis(无metric接口)
1,部署一个测试环境 [root@\ k8s-m-01~]# mkdir redis [root@\ k8s-m-01~]# cd redis/[root@\ k8s-m-01~/redis]# vi ...
- redis数据库c语言接口
redis数据库拥有方便快捷的c语言接口,下面我将用程序操作redis数据库. 首先redis的c语言接口API是hiredis,下载地址为https://github.com/redis/hired ...
- 由于Redis后门漏洞导致服务器被注入挖矿脚本解决过程
由于Redis后门漏洞导致服务器被注入挖矿脚本解决过程 事件描述 某一天的早晨,我还是像往常一样搭着公交车开启打工仔的一天,一早8.30就到办公室了,坐着玩手机等上班,就这这时突然我组长飞快的回来办公 ...
- 腾讯天衍实验室夺世界机器人大赛双冠军,新算法突破脑机接口瓶颈
日前,"2020世界机器人大赛-BCI脑控机器人大赛"公布成绩,腾讯天衍实验室和天津大学高忠科教授团队组成的C2Mind战队,经过多轮赛程的激烈比拼,实力入围BCI脑控机器人大赛& ...
- java redis自增操作_【转载】关于spring boot使用redis的increment()方法自增问题
需求是限制IP频繁访问某接口,用的方案是使用redis记录访问IP的值,先设定好初始值,每次访问自增,达到某限定值后,进行阻止. 用的是自定义工具类,使用spring封装的spring-data-re ...
最新文章
- ApplicationContext||ApplicationContext与BeanFactory的区别||SpringContextUtil类的作用
- 网管日志-06.07.12
- Web.py Cookbook 简体中文版 - 用cherrypy提供SSL支持
- SpringBoot2.1.9 Mybatis由于@Mapper注解多数据源配置不生效问题
- 中国石油大计算机在线考试中心,中国石油大在线考试.doc
- [转载] scala
- golang中http协议实现
- 二叉查找树的类模板实现
- java测试字符串的编码_Java字符串测验
- 高恪新路由三硬盘_新路由3 newifi D2路由器刷机breed高恪固件详细教程
- Mac键盘突然失灵怎么办?别急,教你打开辅助键盘
- HTML打开eml文件,eml文件怎么打开?.eml是什么格式文件?
- golang 数组组合成最小的整数_整数数组拼成一个最小或最大的数
- JAVA计算平方,幂运算,三角函数等
- ​建行数据从Teradata迁移到Greenplum大揭秘
- QT+PCL+VS制作点云显示界面(彩色显示xyz点云)
- 天梯赛(c++) 古风排版
- Linux系统- Redhat7.6配置网卡team和网桥详解
- 2021年安全员-B证-项目负责人(广东省)复审模拟考试及安全员-B证-项目负责人(广东省)模拟考试系统
- java区分手机号归属地_JAVA手机号码归属地查询
热门文章
- 下载安装MicroStrategy 完整版
- 朋友圈小霸王游戏机源码
- 金融IC卡降级交易常见问题解答
- [ue5]关卡设计与地编_素材处理
- 王者服务器维护8月四日,8月4日体验服停机更新公告
- Vue-透传Attributes使用解析
- 电商系统设计MySQL_电商系统中的下单功能的mysql架构设计
- 三级联动:js实现淘宝地址更改
- 【毕设学习之转录组技术一:基因组成+转录流程】
- python ubuntu word txt 转pdf_ubuntu 下 python 将ppt,word 转换为pdf.