Redis学习笔记(三)
创始人
2024-03-13 18:26:00
  • Jedis

    • java语言连接redis工具
    • 准备工作
      • 下载地址:https://mvnrepository.com/artifact/redis.clients/jedis
      • 基于maven
          • redis.clients
          • jedis
          • 2.9.0
    • 客户端连接redis
      • 连接redis
        • Jedis jedis = new Jedis("localhost", 6379);
      • 操作redis
        • jedis.set("name", "fan2312");
        • jedis.get("name");
      • 关闭redis连接
        • jedis.close()
    • Jedis工具类
      • redis.properties
      redis.host = 127.0.0.1
      redis.port = 6379
      redis.maxTotal = 30
      redis.maxIdle = 10
      
      • 代码
      public class JedisUtils{private JedisPool jp;static{ResourceBundle rb = ResourceBundle.getBundle("jedis");String host = rb.getString("jedis.host");int port = Integer.parseInt(rb.getString("jedis.port"));int maxTotal = Integer.parseInt(rb.getString("jedis.maxTotal"));int maxIdle = Integer.parseInt(rb.getString("jedis.maxIdle"));JedisPoolConfig jpc = new JedisPoolConfig();jpc.setMaxTotal(maxTotal );jpc.setMaxIdle(maxIdle );jp = new JedisPool(jpc, host, port);}public static Jedis getJedis(){return jp.getResource();}public static void main(){JedisUtils.getJedis();}
      }
      
  • 可视化客户端

    • Redis Desktop Manager
  • 基于Linux安装Redis

    • 下载安装包:wget https://download.redis.io/releases/redis-?.?.?.tar.gz
    • 解压:tar -xvf 文件名.tar.gz
    • 编译:make
    • 安装:make install
  • 指定端口启动服务:

    • redis-server --port 6380
    • redis-cli -p 6380
  • 指定配置文件启动

    • 配置文件
    port 6379
    daemonize yes
    logfile "6379.log"
    dir /redis-4.0.0/data
    
    • 启动:redis-server redis-6379.conf
  • 持久化

    • 利用永久性存储介质保存数据
    • 为什么要进行持久化?
      • 防止数据的意外丢失,确保数据安全性
    • 持久化过程保存什么
      • RDB:将当前数据状态进行保存,快照形式,存储数据结果,存储格式简单,关注点在数据
      • AOF:将数据的操作过程进行保存,日志形式,存储操作过程,存储格式复杂,关注点在数据的操作过程
    • RDB启动方式
      • 方式一
        • 命令:save

        • 作用:手动执行一次保存操作

        • 配置文件中相关配置

          • 在这里插入图片描述
        • save指令的执行会阻塞当前redis服务器,直到当前RDB过程完成为止,有可能会造成长时间阻塞,线上环境不建议使用

      • 方式二
        • 命令:bgsave
        • 作用:手动启动后台保存操作,但不是立即执行
        • bgsave是针对save阻塞问题做的优化。redis内部所有涉及到RDB操作都采用bgsave,而不使用save
      • 方式三
        • 配置:save second changes
        • 作用:满足限定时间范围内key的变化数量达到指定数量即进行持久化
        • 参数
          • second:监控时间范围
          • changes:监控key的变化量
        • save配置要根据实际业务情况进行设置,频度过高或过低都会出现性能问题,结果可能是灾难性的
        • save配置中对于second与change设置通常具有互补对应关系,尽量不要设置成包含性关系
        • 启动后执行的是bgsave操作
    • 在这里插入图片描述
    • 在这里插入图片描述
  • AOF

    • 在这里插入图片描述

    • 以独立日志的方式记录每次写命令

    • 是Redis持久化的主流方式

    • AOF写数据的三种策略

      • always(每次)
        • 每次写入操作都同步到AOF文件中,数据零误差,性能较低
      • everysec(每秒)
        • 每秒将缓冲区中的指令同步到AOF文件中,数据准确性较高,性能较高
        • 系统突然宕机会丢失1秒数据
      • no(系统控制)
        • 由操作系统控制每次同步到AOF的周期,整体过程不可控
    • AOF功能开启

      • 配置:appendonly yes|no
        • 是否开启AOF持久化,默认不开启
      • 配置:appendfsync always|everysec|no
        • AOF写数据策略
      • 配置:appendfilename filename
        • AOF持久化文件名,默认为appendonly.aof,建议配置为appendonly-端口号.aof
      • 配置:dir
        • AOF持久化文件保存路径,与RDB持久化文件保持一致即可
    • AOF重写:对同一个数据的若干条命令执行结果转化为最终结果数据对应的指令进行记录

    • AOF重写作用:

      • 降低磁盘占用量,提高磁盘利用率
      • 提高持久化效率,降低持久化写时间,提高IO性能
      • 降低数据恢复用时,提高数据恢复效率
    • AOF重写规则

      • 已超时数据不再写入文件
      • 忽略无效指令,重写时使用进程内数据直接生成,只保留最终数据的写入命令
      • 对同一数据的多条写命令合并成一条命令
    • AOF重写方式

      • 手动重写
        • bgrewriteaof
      • 自动重写(配置)
        • auto-aof-rewrite-min-size size
        • auto-aof-rewrite-percentage percentage
        • 在这里插入图片描述
    • 在这里插入图片描述

    • RDB与AOF选择

      • 对数据敏感,使用AOF
      • 数据呈现阶段有效性,使用RDB

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...