码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Redis7.x 高级篇


    Redis7.x 高级篇

    • Redis版本发行时间
    • Redis单线程说的是什么东西
    • 如何批量插入百万数据
    • BigKey 的删除
    • Redis双写一致原则
    • 数据库和缓存一致性的更新策略
    • 面试题提问: 我想mysql有记录改动了(有增删改写操作),立刻同步反应到redis???该如何做?

    Redis版本发行时间

    在这里插入图片描述

    Redis单线程说的是什么东西

    在这里插入图片描述

    如何批量插入百万数据

    首先生成批量命令脚本(注意这里用的是单机版redis),然后用 管道批量执行命令

    [root@localhost myredis]# for((i=1;i<=100*10000;i++)); do echo "set k$i v$i" >> ./redisTest.txt; done
    [root@localhost myredis]# cat redisTest.txt | redis-cli -a 123456 -p 6379 --pipe
    Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
    All data transferred. Waiting for the last reply...
    Last reply received from server.
    errors: 0, replies: 1000000
    [root@localhost myredis]# redis-cli -a 123456 -p 6379
    Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
    127.0.0.1:6379> DBSIZE
    (integer) 1000000
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    BigKey 的删除

    在这里插入图片描述
    在这里插入图片描述
    如何发现大key?
    1、使用 redis-cli -a 123456 -p 6379 --bigkeys 命令

    [root@localhost myredis]# redis-cli -a 123456 -p 6379 --bigkeys
    Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
    
    # Scanning the entire keyspace to find biggest keys as well as
    # average sizes per key type.  You can use -i 0.1 to sleep 0.1 sec
    # per 100 SCAN commands (not usually needed).
    
    [00.00%] Biggest string found so far '"k761048"' with 7 bytes
    [90.35%] Biggest string found so far '"k1000000"' with 8 bytes
    [100.00%] Sampled 1000000 keys so far
    
    -------- summary -------
    
    Sampled 1000000 keys in the keyspace!
    Total key length in bytes is 6888896 (avg len 6.89)
    
    Biggest string found '"k1000000"' has 8 bytes
    
    0 lists with 0 items (00.00% of keys, avg size 0.00)
    0 hashs with 0 fields (00.00% of keys, avg size 0.00)
    1000000 strings with 6888896 bytes (100.00% of keys, avg size 6.89)
    0 streams with 0 entries (00.00% of keys, avg size 0.00)
    0 sets with 0 members (00.00% of keys, avg size 0.00)
    0 zsets with 0 members (00.00% of keys, avg size 0.00)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    2、memory usage <具体key名字>

    127.0.0.1:6379> memory usage k232323
    (integer) 72
    
    • 1
    • 2

    Redis双写一致原则

    以前我们代码逻辑可能是这么写的
    在这里插入图片描述
    上面这段代码,业务逻辑并没有问题,对于小厂中厂(QPS ≤ 1000)可以使用,但是大厂不行,来看看下面优化有的方法(只截方法体了…),加强补充,避免突然key失效了,打爆mysql,做一下预防,尽量不出现缓存击穿的情况。 即所谓的双检加锁策略
    在这里插入图片描述

    数据库和缓存一致性的更新策略

    在这里插入图片描述
    在这里插入图片描述
    1、先看第一种,两个截图,两种异常情况
    在这里插入图片描述
    其中第一种和第二种在多线程场景下都可能会出现数据不一致问题
    在这里插入图片描述
    最后一种,最稳妥
    在这里插入图片描述
    在这里插入图片描述

    面试题提问: 我想mysql有记录改动了(有增删改写操作),立刻同步反应到redis???该如何做?

  • 相关阅读:
    深度学习笔记-------KNN算法
    vue跨域问题解决:Access to XMLHttpRequest at‘httplocalhost
    Linux操作系统&&Linux20+常用入门操作
    VAPS XT开发入门教程03:程序目录说明
    Spring注解开发_Spring容器创建概述
    深度学习环境搭建
    java计算机毕业设计计算机组成原理教学网站源码+mysql数据库+系统+lw文档+部署
    java项目接口重复提交解决方案
    Nginx中配置GZIP压缩详解
    把Android手机变成电脑摄像头
  • 原文地址:https://blog.csdn.net/lhg_55/article/details/134220496
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号