1. redis介绍
1.1. 什么是redis
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如
下:
字符串类型
散列类型 (对应Java中的Object,它主要用来存储对象)
列表类型 (List)
集合类型 (Set)
有序集合类型。 (TreeSet)
1.2. redis的应用场景
缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用)
分布式集群架构中的session分离。
聊天室的在线好友列表。
任务队列。(秒杀、抢购、12306等等)
应用排行榜。
网站访问统计。
数据过期处理(可以精确到毫秒)
2. Redis的安装
2.1 在Windows上安装
2.2 在Linux上安装
su root : 切换到root
1、cd /etc/sysconfig/network-scripts中找到为为ifcfg-eth0的一个。
2、使用命令vim ifcfg-eth0 命令进入到命令行模式下
3、修改相应的ip和修改启动项为yes,按下Esc退到命令行,再按下:wq保存退出
4、service network restart重启网络服务即可。
ifconfig eth0 192.168.125.100
重启网络service network restart
ifup eth0 : 激活连接
1、vim /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain
2、然后重启网卡:使用命令: service network restart
redis是C语言开发,建议在linux上运行,示例使用CentOS7作为安装环境。
-
安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc
yum install gcc-c++
阿里云的CentOS7默认已经内置了gcc,可以跳过这一步
-
下载redis
从官网下载
http://download.redis.io/releases/redis-5.0.5.tar.gz
将redis-5.0.5.tar.gz拷贝任意路径下,如 /home/john/opt/
-
解压源码
cd /home/john/opt/ tar -zxvf redis-3.0.0.tar.gz
-
进入解压后的目录进行编译安装
cd /home/john/opt/redis-5.0.5/src make # 编译源代码 make install # 安装 # 上面两步也可以直接通过 make && make install两步并一步执行
Redis默认的安装目录是/usr/local/bin, 我们在执行make install命令时添加prefix参数可修改默认安装位置,如: make PREFIX=/usr/local/redis install
3. redis启动
redis.conf是redis的配置文件,默认在redis源码包解压后的根目录有一份redis.conf文件,我们可将其拷贝一份到上一步中redis的安装目录
cd /home/john/opt/redis-5.0.5/src
cp redis.conf /usr/local/bin
我们装完redis以后,默认的安装路径是/usr/local/bin,系统会自动来此目录寻找命令,所以我们不需要在配置环境变量,在任意目录都可以使用redis相关的命令,如redis-server、redis-cli
3.1. 前端模式启动
启动命令:
redis-server /usr/local/bin/redis.conf
通过上面的命令启动,redis将以前端模式启动,前端模式启动的缺点是ssh命令窗口关闭则redis-server程序结束,不推荐使用此方法。
3.2. 后端模式启动
3.2.1 开启远程连接
- 注释掉 bind 127.0.0.1这行
- 关闭保护模式 将protected-mode yes 改成 protected-mode no
3.2.2 添加密码验证
放开 # requirepass foobared 这行注释,将后面的foobared改成你自己需要设置的密码
客户端连接时,需要添加-a 参数指定密码才能连上来。
3.2.3 开启后台守护进程运行模式
将 # daemonize no 这行放开注释, 并且改成 yes, Redis server将以后台方式运行。
3.2.4 指定日志文件
将 logfile “” 改成 logfile “你需要的redis日志文件名称”, 默认的空字符串代表输出到前端控制台(标准输出)
修改redis.conf配置文件, daemonize yes 以后端模式启动。
3.2.5 启动
启动命令和前端启动一样,只不过控制台不会输出任何信息,而且命令结束,如果没有异常会马上退出。
4. 通过jedis连接redis单机
4.1 SringBoot方式
4.1.1 引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
4.1.2 SpringBoot配置
application.yml
spring:
redis:
host: www.taotao.com
# port: 6379
# password:
jedis:
pool:
max-idle: 2
max-wait: 1000ms
4.3. 单实例连接
通过创建单实例jedis对象连接redis服务,如下代码:
@Slf4j
@SpringBootTest
@RunWith(SpringRunner.class)
public