这么设计,Redis 10亿数据量只需要100MB内存
码农突围
共 2806字,需浏览 6分钟
· 2020-09-14
操作系统:Mac OS 64位 版本:Redis 5.0.7 64 bit 运行模式:standalone mode
redis位操作
SETBIT
GETBIT
BITCOUNT
BITOP
底层数据结构分析
struct sdshdr {
#记录buff数组中已使用字节的数量
#也是SDS所保存字符串的长度
int len;
#记录buff数组中未使用字节的数量
int free;
#字节数组,字符串就存储在这个数组里
char buff\[\];
}
时间复杂度为O(1) 杜绝缓冲区溢出 减少修改字符串长度时候所需的内存重分配次数 二进制安全的API操作 兼容部分C字符串函数
1Byte=8bit 1KB=1024Byte 1MB=1024KB 1GB=1024MB
0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0
#对应redis操作即:
setbit key 3 1
setbit key 13 1
#对应redis中的存储为:
0 0 1 0 | 0 0 0 0 | 0 0 0 0 | 1 0 0 0
时间复杂度
存储空间计算
应用场景
用户签到场景
活跃用户数统计
用户是否在线以及总在线人数统计
APP内用户的全局消息提示小红点
最近热文
• 字节跳动发半个月工资奖金,员工:以后我住公司了 • 思科前员工删库跑路,损失达 1600 多万 • 如何破解“仅三天可见”的朋友圈? • Java反射到底慢在哪? 最近整理了一份大厂算法刷题指南,包括一些刷题技巧,在知乎上已经有上万赞。同时还整理了一份6000页面试笔记。关注下面公众号,在公众号内回复「刷题」,即可免费获取!回复「加群」,可以邀请你加入读者群!
明天见(。・ω・。)ノ♡
评论
CXL:破解AI时代“内存墙”新途径
AI大模型的快速发展推动“算力”和“存力”需求快速增长,“内存墙”问题由来已久,在 AI 时代表现的愈发明显,“算力”和“运力”之间的差距越来越大。Transformer 类的模型参数的数量呈现指数增长,每两年增加 410 倍,而 GPU 内存仅以每两年 2 倍的速度扩展。1、AI时代“内存墙”问题
架构师技术联盟
0
从原理到实践:掌握DPDK内存池技术
前言:本文整理下之前的学习笔记,基于DPDK17.11版本源码分析。主要分析一下内存管理部分代码。一、概述内存管理是数据面开发套件(DPDK)的一个核心部分,以此为基础,DPDK的其他部分和用户应用得以发挥其最佳性能。本系列文章将详细介绍DPDK提供的各种内存管理的功能。但在此之前,有必要先谈一谈为
开源Linux
0
微服务与领域驱动设计,架构实践总结
来源:知了一笑👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目 2.0 版本完结啦, 演示链接:http://116.62.199.48/ ,新
小哈学Java
0
面试官:电商库存扣减如何设计?如何防止超卖?
来源:my.oschina.net/xiaolyuh/blog/1615639👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目 2.0 版本完结啦, 演示
小哈学Java
0
Redis 是怎么从单体架构发展到分布式缓存的?
图解学习网站:https://xiaolincoding.comRedis 架构是如何一步一步发展到今天的样子的?2010 年 - 单体 RedisRedis 1.0 于 2010 年发布,当时的架构非常简单。它通常用作业务应用程序的缓存。不过,Redis 将数据存储在内存中。当我们重启 Redis
小林coding
10
笑死!哈哈哈,小米汽车都这么牛逼了,为啥还要加装个手机支架?是不是车载导航不行?
大家好周六本来没啥值得写的,晚上刷到周鸿祎的一个视频,引发我的一点表达欲小米汽车发布会上,雷军介绍他们的特色功能时,提到他们专门给汽车做了个手机支架扩展,因为市面上的汽车都没有这个功能,所以他拿出来炫耀了一把。我当时第一感觉就是,都这么先进的电车了,为啥还要搞个手机支架,直接用汽车的大屏导航不就行了
python之禅
0
得物面试:Redis 内存碎片是什么?如何清理?
JavaGuide官方网站:javaguide.cn这是一道不是特别高频但很重要的 Redis 面试题,属于 Redis 性能优化的范畴。Redis 内存碎片相关的问题在得物、美团、阿里、字节、携程等公司的后端面试中都曾出现过,还是建议认真准备一下。即使不是准备面试,日常开发也是能够用到的!什么是内
JavaGuide
0
公司新来一个同事,把风控系统设计得炉火纯青,万能通用,稳的一批!
点击关注公众号,Java 干货及时推送↓推荐阅读:铜三铁四,怒拿 35K * 14 薪!作者:wingli链接:https://juejin.cn/post/7182774381448282172一、背景1.为什么要做风控? 这不得拜产品大佬所赐目前我们业务有使用到非常多的AI能力,如oc
Java技术栈
0