一:redis是什么、应用场景、安装
redis(remote dictionary server)是一个键值对数据库(key-value)。redis是非常快的,
redis速度快的几点因素
- Redis的所有数据都输存放在内存中的,官方给出每秒可达10万次读写操作。(谷歌给出内存的速度100ns,1s=10^9ns,计算可得每秒大概有100万,官方给出数据是实际测量,理论与实际的应该就是硬件的损耗)。
- Redis用c语言编写,c语言是离底层比较近的语言
- Redis是单线程实现的,不会有现成切换,阻塞的时间
在系统环境ubuntu intel core i5-5257u cpu 2.7Ghz, 8GB, 40GB SSD下测试,Redis的qps为5000~300000。mysql的qps为4000左右浮动。
应用场景
- 缓存
- 计数器
- 排行榜系统
- 用户点赞(用户请求流量大)
- 消息队列
常用数据结构
- 字符
- string
- 位图 bitmap
- hyperloglog
- 哈希hash
- 列表list
- 不重复集合set
- 不重复有序集合sortset
- 地理信息定位 GEO
Redis安装
使用软件安装器安装
Linux下的centos可以使用yum,ubuntu可以使用apt安装,macos可以使用brew安装。
ubuntu下的安装
//更新apt下的软件
apt-get update
//安装redis
apt-get install redis-server
//启动
redis-server /path/redis.conf
源码安装
//在指定目录下载源码
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
//解压
tar xzf redis-3.0.7.tar.gz
//建立软连接
ln -s redis-3.0.7 redis
//进入目录
cd redis
//编译
make
//安装
make install
Redis启动、关闭
启动
//启动命令 配置文件的目录(配置密码,守护进程,指定输出日志目录......)
redis-server /path/redis.conf
终端连接
// port默认6379
redis-cil
//指定连接的redis的ip,port,密码
redis-cli -h host -p port -a password
认证
auth password
关闭
redis-cli shutdown
查看redis当前使用的配置文件
查看redis启动加载的配置文件
redis-cli info
127.0.0.1:6379> info
#server
redis_version:3.0.7
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:adfe348a10126c01
redis_mode:standalone
os:Linux 4.4.0-130-generic x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:5.4.0
process_id:8713
run_id:9498e9aece13c5e3338ca15f5fa165fc12a5fa89
tcp_port:6379
uptime_in_seconds:35
uptime_in_days:0
hz:10
lru_clock:4421187
config_file:/home/ubuntu/soft/redis/redis.conf
这里config_file说明了使用的是/home/ubuntu/soft/redis/redis.conf这里的配置文件。
//也可以使用管道符过滤
redis-cli info |grep config
查看Redis版本
redis-cli -v
ubuntu@VM-0-2-ubuntu:~$ redis-cli -v
redis-cli 3.0.7