一、Redis是什么?
内存数据库,纯内存操作
Key-Value数据库,NoSQL数据库
C语言编写,性能极高
Redis支持数据持久化
需要大量内存(网络带宽),CPU不是瓶颈
单线程-----避免 切换与锁 --使用多路复用
二、Redis和Mysql区别
1、redis缓存服务器,数据存储在内存 mysql磁盘操作
2、高频数据,热点数据,高并发
二、压测报错分析
1、测试端问题
一般在jmeter的jmeter.log中体现:
OOM(内存溢出/内存不足):修改Jmeter堆内存大小,在Jmeter的bin/jmeter.bat,配置服务器内存的70%左右
端口数问题(如too many open files/adress alreadyin use):修改 win+R ,regedit打开注册表编辑器 查找计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters,下面右键新建DWDRD(32位)/值,重新命名为MaxUserPort 选择十进制,填写65535确定 然后重启Jmeter
2、 服务端报错
500 docker部署的:docker logs -f miaosha(服务名称) | grep error
3、Redis的redis-benchmark工具(抛开业务,可以测试redis可以接受/处理多少请求)
Redis性能基准测试可以通过使用自带的redis-benchmark工具,执行命令进行。使用起来简单,可以模拟N个机器(-c)从发送M个请求(-n)