Redis总结(从安装到使用)

  1.Redis安装(Linux):

    1.在官网上下载Linux版本的Redis(链接https://redis.io/download)

    

    2.在Linux的/usr/local中创建redis文件夹mkdir redis(一般第三方软件放在/usr/local中),上传文件到该文件夹中(securityCRT中输入rz命令即可)

    3.解压文件,并进入解压后的文件夹中,执行make命令,完毕后可以查看该文件夹中的目录如下

      

    4.可以进入src文件夹中,执行./redis-server即可启动redis,例如(注意这种方式启动redis 使用的是默认配置)

      

    5.可以通过启动参数告诉redis使用指定配置文件来启动

./redis-server ../redis.conf

    6.修改redis.conf配置(先退出redis)

      找到redis.conf文件:

        1.注释以下绑定的主机地址 # bind 127.0.0.1

        2. daemonize设置为yes

        3.设置密码requirepass 123456

    7.再次启动redis(在src目录中可以通过后台启动方式 redis-cli -h host -p port -a password,如果不后台启动,会显示如步骤4的界面,就无法进行其他与redis无关的操作),例如:

./redis-cli -h 127.0.0.1 -p 6379 -a "123456"

     如果能ping通,则说明启动成功(这里可能是密码太简单了)

      

    8.远程连接redis (这里使用的是RedisClient),如下所示

     

  2.Redis基本数据类型:

    Redis支持五种数据类型:String(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

  3.Jedis操作Redis(Java操作Redis):(案例)

  <!--导入相应的依赖-->
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.9.0</version>
    </dependency>
Jedis  jedis = new Jedis ("192.168.2.129",6379); //连接redis
jedis.auth("123456"); //redis的密码(如果没有,可以不填)
jedis.set("name","zs");//添加String类型数据,其他方法可以参考相关的api文档

  4.SpringBoot整合Redis:

    项目导入相关的依赖后,首先在配置文件中配置redis如下

spring.redis.host=192.168.2.129
spring.redis.port=6379
#使用第0个库 spring.redis.database=0 spring.redis.password=123456
#最大连接时间 spring.redis.timeout=5000 spring.redis.pool.max-idle=8 spring.redis.pool.min-idle=0

    编写测试类:(使用模板)

    

    注意:当需要保存对象的时候,创建一个People类,并直接把这个对象放在redis中会报错

      

      

      如下图所示:

      

    解决办法:让这个对象实现序列化接口

     (Redis存放对象:使用String类型,采用Json格式,将对象序列化后转成Json格式放在Redis中,如果需要获取对象,把Json的值取出,并反序列化成对象)

  5.Redis高可用机制:

    方法:Redis主从复制、Redis持久化机制、哨兵机制、keepalived等的支持。

    (1)Redis主从复制:(Redis支持一主多从)

      主从复制作用有:数据备份,读写分离,集群,容错机制,提高可用性等。(这些点与MySQL主从复制的目的类似)

      主服务器权限:读和写

      从服务器权限:读

      如何实现Redis主从复制:

        只需要修改配置文件redis.conf文件,添加

        slaveof 192.168.2.129 6379  

    (2)Redis持久机制:

      由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF(append only file)持久化(原理是将Reids的操作日志以追加的方式写入文件)。

    (3)哨兵机制:

      监听各台服务器

    (4)keepalived:

      使用keepalived监听,如果服务器全部宕机或其他问题,可以设置自动重启服务器,如果还未解决问题,可以设置发送邮件提示开发人员。

猜你喜欢

转载自www.cnblogs.com/ywb-articles/p/10660071.html
今日推荐