redis安装到linux服务器及使用
1、下载Redis
在官网下载压缩包:Redis官网
2、解压并安装
将压缩包拖拽到服务器上
#解压压缩包
tar -zvxf redis-6.2.6.tar.gz
#进入到目录并编译
cd redis-6.2.6
make
#安装(PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径)
make PREFIX=/home/vrp/redis-6.2.6 install
#启动
./bin/redis-server& ./redis.conf
redis是用c++写的,确认服务器是否有c++环境
c++ -v
gcc -v
#安装环境
sudo yum install gcc-c++
3、配置redis.conf
vi redis.conf
注释bind [ip],修改端口port,修改protected-mode为no,daemonize为yes,设置密码requirepass 123456
- bind:绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问 。
- daemonize:yes表示启用守护进程,默认是no即不以守护进程方式运行。其中Windows系统下不支持启用守护进程方式运行
- protected-mode:保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将此属性改为no。
4、查看redis进程
ps -aux | grep redis
5、性能测试
redis-benchmark 官方自带的性能测试工具
#连接
redis-cli -h 192.168.3.100 -p 16379
#输入密码
auth 123456
ping
#测试
redis-benchmark -h 192.168.3.100 -p 16379 -c 100 -n 100000
6、基础知识
redis 默认有16个数据库,默认使用第0个
select x
进行切换
keys *
查看所有的key
flushdb
清除当前数据库
flushall
清除全部数据库
192.168.3.100:16379> select 0
OK
192.168.3.100:16379> DBSIZE
(integer) 12
Redis 是单线程的!基于内存操作
,CPU不是Redis性能瓶颈,Redis的瓶颈是根据机器的内存和网络的带宽。与CPU线程调度性能无关
核心
: Redis 是将所有数据全部放在内存中的,所以说使用单线程去操作效率就是最高的,多线程(会产生CPU上下文会切换)是耗时的操作。对于内存系统来说,如果没有上下文切换,效率就是最高的!多次读写都是在一个CPU上的,在内存情况下,这个就是最佳的方案!
Redis为什么单线程还这么快?
误区
- 高性能的服务器一定是多线程的
- 多线程(CPU上下文会切换)一定比单线程效率高
速度:CPU>内存>硬盘