zoukankan      html  css  js  c++  java
  • redis 应用场景

    一,redis 是什么

         Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

      它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。


    随着数据量的增长,MySQL已经满足不了大型互联网类应用的需求,因此,Redis作为内存数据库,很好的作为其架构上的补充。在某些场景下,可以充分的利用Redis的特性,大大提高效率。

    二。使用场景说明

    计数器

    数据统计的需求非常普遍,通过原子递增保持计数。例如,点赞数、收藏数、分享数等。

    排行榜

    排行榜按照得分进行排序,例如,展示最近、最热、点击率最高、活跃度最高等等条件的top list。

    用于存储时间戳

    类似排行榜,使用redis的zset用于存储时间戳,时间会不断变化。例如,按照用户关注用户的最新动态列表。

    记录用户判定信息

    记录用户判定信息的需求也非常普遍,可以知道一个用户是否进行了某个操作。例如,用户是否点赞、用户是否收藏、用户是否分享等。

    社交列表


    社交属性相关的列表信息,例如,用户点赞列表、用户收藏列表、用户关注列表等。

    缓存

    缓存一些热点数据,例如,PC版本文件更新内容、资讯标签和分类信息、生日祝福寿星列表。

    队列

    Redis能作为一个很好的消息队列来使用,通过list的lpop及lpush接口进行队列的写入和消费,本身性能较好能解决大部分问题。但是,不提倡使用,更加建议使用rabbitmq等服务,作为消息中间件。

    会话缓存

    使用Redis进行会话缓存。例如,将web session存放在Redis中。

    三。业务使用方式

        String(字符串): 应用数, 资讯数等, (避免了select count(*) from …)

        Hash(哈希表): 用户粉丝列表, 用户点赞列表, 用户收藏列表, 用户关注列表等。

        List(列表):消息队列, push/sub提醒。

        SortedSet(有序集合):热门列表, 最新动态列表, TopN, 自动排序。

  • 相关阅读:
    DateTime与DateTime?赋值问题以及null类型的如何赋值问题
    ajax请求aspx.cs后台方法
    Windows 下安装 Memcached
    windows下mysql表名区分大小写
    csredis
    路由名称
    发布后的项目打开swagger
    IActionResult的返回类型
    ASP.NET Core开发之HttpContext
    Web SQL数据库
  • 原文地址:https://www.cnblogs.com/lele925/p/7403112.html
Copyright © 2011-2022 走看看