登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
场景题:10亿QQ用户,如何统计在线人数? ...
场景题:10亿QQ用户,如何统计在线人数?
[ 复制链接 ]
宗和玉
2025-6-1 21:24:17
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
现在卷的环境下,面试除了八股文+算法+项目外,场景题也是问的越来越多了。一方面是就业市场竞争者较多所带来的必然结果;另一方面是公司对于应聘者的技术要求也越来越高了。
今天继续介绍Java面试常见的场景题:
在线人数统计
现在用户数量是亿级,如何统计在线人数有多少?
场景分析
QQ用户就是亿级的场景,我们如果使用常规的数据库解决方案是不能满足要求的。例如:在数据库中给每个QQ用户添加一个状态,上线为1,下线为0,然后统计状态为1的数据总量,就能获取在线人数了。
但是,大规模用户频繁上、下线操作,频繁读写数据库,带来巨大 IO 压力,数据库并不能满足性能要求。
解决方案
使用Bitmap(位数组)来存储QQ用户的在线状态,这里还是简单介绍下Bitmap的数据结构
维护一个位数组,每一位只能是1或0
每个下标表示具体的数字,该下标位置的数字为1时,表示用户在线。如数组索引下标2333的值为1,表示QQ号2333的用户在线。反之,值为0表示下线
统计在线人数,只需要统计1的个数即可
内存占用分析
10亿QQ号,位数组的空间位是10亿,占用内存大小为:10亿 * 1bit / 8 / 1024 / 1024 =
119.2MB
,分析得出占用的内存非常小
具体实现
上一篇写了java的BitMap结构,这一篇换换口味,我们用Redis提供的Bitmap命令来实现
命令功能示例SETBIT key offset 1用户上线(设置对应位为1)SETBIT online_users 10086 1GETBIT key offset判断用户是否在线GETBIT online_users 10086 → 返回1BITCOUNT key统计在线总人数BITCOUNT online_users → 返回当前在线数
小结
类似的面试场景题还有很多,最近准备收集一波做成专栏,敬请期待吧~
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
场景
10亿
QQ
用户
如何
相关帖子
如何使用 vxe-gantt table 甘特图来实现多个维度视图展示
关于renpy游戏小范围QQ群内部测试的一个思路
昆明黄金店推荐:如何甄选“价值平权”的黄金消费专家?
假如有10亿QQ号如何去重?
2026年成都品牌主,如何选择AI优化搜索(AI GEO)合作伙伴,附压箱底选购技巧
企业数字化转型如何破局?看这三大招
如何使用DashVector的多向量检索
VonaJS是如何做到文件级别精确HMR(热更新)的?
Flink源码阅读:如何生成StreamGraph
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
代码
如何使用 vxe-gantt table 甘特图来实现多个维度视图展示
1
795
晚能
2025-12-13
安全
关于renpy游戏小范围QQ群内部测试的一个思路
1
240
垢峒
2025-12-13
安全
昆明黄金店推荐:如何甄选“价值平权”的黄金消费专家?
0
239
靳夏萱
2025-12-14
业界
假如有10亿QQ号如何去重?
0
823
颛孙中
2025-12-15
科技
2026年成都品牌主,如何选择AI优化搜索(AI GEO)合作伙伴,附压箱底选购技巧
0
962
百谖夷
2025-12-15
安全
企业数字化转型如何破局?看这三大招
0
77
滑清怡
2025-12-16
业界
如何使用DashVector的多向量检索
0
253
别萧玉
2025-12-16
业界
VonaJS是如何做到文件级别精确HMR(热更新)的?
0
406
济曝喊
2025-12-17
业界
Flink源码阅读:如何生成StreamGraph
0
336
梁丘艷蕙
2025-12-18
回复
(7)
兑谓
2025-10-12 00:42:01
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
热心回复!
赘暨逢
2025-11-4 21:32:18
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
喜欢鼓捣这些软件,现在用得少,谢谢分享!
荏牌
2025-11-5 16:58:12
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
垢峒
2025-11-8 05:50:50
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢,下载保存了
忙贬
2025-11-13 09:00:35
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
嫁蝇
2025-12-4 19:22:32
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢,下载保存了
厌外
3 天前
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
代码
签约作者
程序园优秀签约作者
发帖
宗和玉
3 天前
关注
0
粉丝关注
18
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991124
anyue1937
9994893
kk14977
6845358
4
xiangqian
638210
5
韶又彤
9997
6
宋子
9982
7
闰咄阅
9993
8
刎唇
9993
9
俞瑛瑶
9998
10
蓬森莉
9951
查看更多
今日好文热榜
548
Python环境管理利器Conda:从入门到避坑实
66
MAF快速入门(7)工作流的状态共享
796
Python包管理告别龟速下载:uv工具国内镜像
750
深入理解Linux IPIP隧道:原理、配置与实战
194
HoughLinesP 霍夫变换 C++ opencv 内存报
734
RabbitMQ发布订阅模式同一消费者多个实例如
801
AICube数据集不合法清洗解决方法
603
Iceberg 在hadoop大数据数据湖领域这么火
980
背包DP
438
echarts中appendData的详细讲解
607
C++ 原子操作解析
802
Python - UV 为每个项目创建独立、干净的Py
336
Flink源码阅读:如何生成StreamGraph
704
别再迷信“准确率”了!一文读懂 AI 图像分
108
ROS2概念之DDS
130
具身智能:零基础入门睿尔曼机械臂(四)—
397
Streamlit + LangChain 1.0 简单实现智能问
485
Oracle性能诊断与SQL优化:从9i到19c的技术
923
具身智能:零基础入门睿尔曼机械臂(五)—
224
NGD-SLAM(二)