zoukankan      html  css  js  c++  java
  • ridts_02

    • Redis 5.0新增
    • 等待消费
    • 消费组(组内竞争)
    • 消费历史数据
    • FIFO

    以上就是Redis的基本概念,下面我们将介绍在开发过程中可能会踩到的“坑”。

    Redis常见问题解析:击穿

    概念:在Redis获取某一key时, 由于key不存在, 而必须向DB发起一次请求的行为, 称为“Redis击穿”。

    引发击穿的原因:

    • 第一次访问
    • 恶意访问不存在的key
    • Key过期

    合理的规避方案:

    • 服务器启动时, 提前写入
    • 规范key的命名, 通过中间件拦截
    • 对某些高频访问的Key,设置合理的TTL或永不过期

    Redis常见问题解析:雪崩

    概念:Redis缓存层由于某种原因宕机后,所有的请求会涌向存储层,短时间内的高并发请求可能会导致存储层挂机,称之为“Redis雪崩”。

    合理的规避方案:

    • 使用Redis集群
    • 限流

    Redis在产品开发中的应用实践

    为此,我很高兴的为大家介绍,葡萄城架构师Jim将在2019-11-27 14:00 为大家带来一场公开课,其中 Jim除了为大家讲解Redis的基础,同时也会实际演示他所在的项目组使用Redis时碰到的问题以及解决方案,对于刚接触Redis的同学来说,更具参考意义和学习价值,欢迎大家届时参加,公开课地址:https://live.vhall.com/661463644

    • 后端采用nodeJS
    • 使用Azure的Redis服务
    • Redis的使用场景

        -  token缓存, 用于令牌验证

        -  IP白名单

    碰到的问题

    • “网络抖动”或者Redis服务异常导致Redis访问超时
    • Redis客户端驱动稳定性问题

        -  连接池 “Broken connection” 问题

        -  JS的Promise引出的Redis重置问题

    下面我们来简单了解一下Redis的进阶知识。

    进阶之Redis协议简介

    Redis客户端通讯协议:RESP(Redis Serialization Protocol),其特点是:

    • 简单
    • 解析速度快
    • 可读性好

    Redis集群内部通讯协议:RECP(Redis Cluster Protocol ) ,其特点是:

    • 每一个node两个tcp 连接
    • 一个负责client-server通讯(P: 6379)
    • 一个负责node之间通讯(P: 10000 + 6379)

     

    Redis协议支持的数据类型:

    • 简单字符(首字节: “+”)

            “+OK ”

    • 错误(首字节: “-”)

            “-error msg ”

    • 数字(首字节: “:”)

            “:123 ”

    • 批量字符(首字节: “$”)

            “&hello Whoa re you ”

    • 数组(首字节: “*”)

            “*0 ”

            “*-1 ”

    除了Redis,还有什么NoSQL型数据库

    市面上类似于Redis,同样是NoSQL型的数据库有很多,如下图所示,除了Redis,还有MemCache、Cassadra和Mongo。下面,我们就分别对这几个数据库做一下简要的介绍:

  • 相关阅读:
    (原)试问那些不劳而获的人?
    (原)资源互换原则
    (原)关于与人沟通时的几个中文语法
    osgviewer读取dxf文件,拣选高亮功能小结
    qt的OSG视图中拣选对象事件消息
    1)OSG与QT单文档视图的结合
    三维渲染引擎设计与实践(八)
    三维渲染引擎设计与实践(七)
    三维渲染引擎设计与实践(六)
    三维渲染引擎设计与实践(五)
  • 原文地址:https://www.cnblogs.com/huaobin/p/14942182.html
Copyright © 2011-2022 走看看