验证功能访问Redis的次数和命令
背景
公司内部在进行性能调优, 调优有多个方法.
应用Redis方面主要的调优有:
1. 进行redis键值对大小的处理.
2. 进行redis键值对过期时间的处理.
3. 减少连接数,减少网络带宽.
4. 优化方法.尽量使用O(1)命令代替复杂命令.
5. 严格禁止使用复杂指令,比如flushall,keys 等命令.
感觉还有一个比较大的方向是:
验证具体功能 使用的redis 次数,命令类型. 涉及的键值对等.
研发层次的方法
最简单的办法,还是在Redis被调用时由研发进行日志记录.
只需要记录.上下文里面的功能 然后记录 redis的命令 和参数就可以了
可以单独记录到其他地方. 可以保存为一个 文本文件便于后续分析
缺点: 影响功能. 担心有遗漏.
有点: 业务使用者几乎无损无感觉
基于Redis命令的处理
还有一种简单办法.可以使用redis-cli的命令进行监控.
比如我写一个命令:
redis-cli -h 10.110.80.116 -a Testxxxxxxxx -p 6379 monitor
可以保存为 一个命令 比如 monitor.bat
需要注意, 还需要将 redis-cli.exe 放到 c:\windows\system32\ 的路径下
然后最简单的方法
在monitor 所在的目录执行 monitor.sh > 凭证制单.txt
在打开功能之前执行这个命令.
然后 在打开完成使用完成之后control C 关闭这个monitor
这样的话 就可以完整监控到.
需要注意每次可能需要根据不通的功能进行处理.
效果为
1673012799.481448 [0 127.0.0.1:12361] "SETEX"
"\xac\xed\x00\x05t\x005caf:bzctx:s:size:5ad2ed7e-8dcd-4238-a5c7-bf399baeed8a" "172800"
"\xac\xed\x00\x05sr\x00\x11java.lang.Integer\x12\xe2\xa0\xa4\xf7\x81\x878\x02\x00\x01I\x00\x05valuexr\x00\x10java.lang.
Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x00\x01"
1673012799.483396 [0 127.0.0.1:12355] "HMSET" "caf-session:sessions:5ad2ed7e-8dcd-4238-a5c7-bf399baeed8a" "lastAccessedTime"
"\xac\xed\x00\x05sr\x00\x0ejava.lang.Long;
\x8b\xe4\x90\xcc\x8f#\xdf\x02\x00\x01J\x00\x05valuexr\x00\x10java.lang.
Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x01\x85\x87Ug\xa5"
1673012799.483735 [0 127.0.0.1:12357] "SADD"
"caf-session:expirations:1673014620000" "\xac\xed\x00\x05t\x00,
expires:5ad2ed7e-8dcd-4238-a5c7-bf399baeed8a"
1673012799.484058 [0 127.0.0.1:12323] "PEXPIRE"
"caf-session:expirations:1673014620000" "2100000"
1673012799.485237 [0 127.0.0.1:12319] "HGETALL"
"caf-session:sessions:5ad2ed7e-8dcd-4238-a5c7-bf399baeed8a"
1673012799.486898 [0 127.0.0.1:12345] "HGETALL"
"caf-session:sessions:5ad2ed7e-8dcd-4238-a5c7-bf399baeed8a"
验证功能访问Redis的次数和命令的更多相关文章
- 验证docker的Redis镜像也存在未授权访问漏洞
看到了这篇老外的博客:Over 30% of Official Images in Docker Hub Contain High Priority Security Vulnerabilities于 ...
- Redis附加功能之Redis流水线pipeline
流水线功能的目的:通过减少客户端与服务器之间的通信次数来提高程序的执行效率. 一.通信 在一般情况下, 用户每执行一个 Redis 命令,客户端与服务器都需要进行一次通信:客户端会将命令请求发送给服务 ...
- 数据库之redis篇(2)—— redis配置文件,常用命令,性能测试工具
redis配置 如果你是找网上的其他教程来完成以上操作的话,相信你见过有的启动命令是这样的: 启动命令带了这个参数:redis.windows.conf,由于我测试环境是windows平台,所以是这个 ...
- Redis五种数据类型命令介绍(4)
1.string类型命令 设置值:set id 001 获取值:get id 删除键值:del id 验证键是否存在:exists id 显示所有的key:keys * incr .incrby指 ...
- 使用RedisTemplate的操作类访问Redis(转)
深入理解Spring Redis的使用 (三).使用RedisTemplate的操作类访问Redis 事务需要开启enableTransactionSupport,然后使用@transactional ...
- redis 介绍和常用命令
redis 介绍和常用命令 redis简介 Redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存储 (store) 系统.由于 Redis 的键 ...
- centos7中安装、配置、验证、卸载redis
本文介绍在centos7中安装.配置.验证.卸载redis等操作,以及在使用redis中的一些注意事项. 一 安装redis 1 创建redis的安装目录 利用以下命令,切换到/usr/local路径 ...
- redis相关运维命令
1. 查询redis里面的大key? 在redis实例上执行bgsave,然后我们对dump出来的rdb文件进行分析,找到其中的大KEY 有个不太推荐的命令,debug object xxx 可以看到 ...
- Java语言访问Redis数据库之Set篇
如果想通过Java语言对Redis数据库进行访问. 首先,需要安装Redis数据库,可以是Windows系统,或者Linux系统.(本文以Windows系统的本地Redis数据库为例,代码说明如何操作 ...
- 基于TrueLicense实现产品License验证功能
受朋友所托,需要给产品加上License验证功能,进行试用期授权,在试用期过后,产品不再可用. 通过研究调查,可以利用Truelicense开源框架实现,下面分享一下如何利用Truelicense实现 ...
随机推荐
- 还在手动发早安吗?教你用java实现每日给女友微信发送早安
摘要:教你如何用java实现每日给女友微信发送早安等微信信息. 本文分享自华为云社区<java实现每日给女友微信发送早安等微信信息>,作者:穆雄雄 . 前言 据说这个功能最近在抖音上很火, ...
- IaaS首席架构师的架构设计思考与实践
摘要:本文分享了华为云Stack IaaS的设计思考与实践,基于公有云先进的架构技术和创新能力,采用重构改造+积木式搭配+抽屉式替换等方式,健康的.可持续的为客户不断的提供产品和服务. 本文分享自华为 ...
- 非root安装Anaconda
1.下载对应版本的Anaconda (wget+路径) 下载地址:https://repo.anaconda.com/archive/ 或者清华镜像:https://mirrors.tuna.tsin ...
- 听说火山引擎推出的 DataLeap,已经可以支持万级表的数据血缘图谱了!
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 数据来源广.量级大.场景多,导致数据之间关系变得异常复杂. 经过读取.清洗.存储.计算等一系列流程之后,数据最终汇 ...
- Intellij IDEA 关闭阿里编码规约“请不要使用行尾注释”提醒
Settings -> Inspections -> 注释 取消 "方法内部单行注释 xxxx " 里面的勾,[设完后重启]如下图
- 震惊!二狗子的火锅店被隔壁老王 DDoS 攻击了
近两年,游戏出海已经成为了出海热潮中的一员.在"后宅经济时代"的影响下,也得益于海外市场的互联网人口,游戏出海涨势非常迅猛.部分游戏在短时间内走红后,就会遭到了一些"有心 ...
- RabbitMQ--工作模式
单一模式 即单机不做集群 普通模式 即默认模式,对于消息队列载体,消息实体只存在某个节点中,每个节点仅有 相同的元数据,即队列的结构 当消息进入A节点的消息队列载体后,消费 者从B节点消费时,rabb ...
- 自用 | Rust 基础学习资料
Rust语言圣经:Github,GitBook Rustt,RusttT 翻译小组的官方仓库,这里有国外优秀的技术文章.学习教程.新闻资讯的高质量翻译. Rust语言周刊,每周五发布,精选过去一周的技 ...
- Codeforces Round #650 (Div. 3) F1经典离散化DP
比赛链接:Here 1367A. Short Substrings Description 一个字符串 abac,然后把所有长度为2的子串加起来变成新串,abbaac,由 ab ba ac组成.现在给 ...
- 关于 VS Code 用户自定义代码片段的官方 $ 命令记录
关于 VS Code 的定义用户代码片段的部分 $ 命令 TM_SELECTED_TEXT:当前选定的文本或空字符串: 注:选定后通过在命令窗口点选「插入代码片段」插入. TM_CURRENT_LIN ...