最新要闻
- 改款特斯拉Model 3即将登场:预计今年三季度投产
- 苹果版“望远镜”!曝iPhone 16 Pro/16 Ultra都会配备潜望长焦
- 科学家警告:2024或成全球史上最热年份
- 育碧CEO让员工少花钱多做事 巴黎工作室将罢工抗议
- 苹果上海被强制执行1.44亿:这么多年还是第一次
- 世界通讯!微软否认“万人大裁员”:纯属谣言
- 天天讯息:7岁男孩爱撕倒刺致手指感染 医生提醒:处理不当会引发骨髓炎
- 全球今亮点!春节正常发货:仁和N95灭菌级口罩25片15.9元大促
- 世界要闻:网友3美元淘了一颗废品锐龙9 5900X:掰正针脚 点亮!
- 王晶武侠电影 《天龙八部之乔峰传》明日首映:年三十三大视频平台上线
- 全球时讯:平民也能玩8GHz超频 技嘉B760主板奉上两大绝技:内存延迟大降7ns
- 被偷家了!德国人不买大众 把美系车特斯拉买成销冠
- 12nm后 DRAM怎么办?EUV光刻也不是万能药
- 每日时讯!安徽一劳斯莱斯婚车撞上石墩受损严重 博主:可向设置限宽人员索赔
- 《蚁人3:量子狂潮》角色海报发布 蚁人女儿貌美如花
- 象是哪个少数民族的生肖?十二生肖儿歌顺口溜
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
当前热讯:峰值21WQps、亿级DAU,小游戏《羊了个羊》是怎么架构的?
文章很长,而且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版为您奉上珍贵的学习资源 :
免费赠送 :《尼恩Java面试宝典》持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备免费赠送 经典图书:《Java高并发核心编程(卷1)加强版》面试必备 + 大厂必备 +涨薪必备 加尼恩免费领免费赠送 经典图书:《Java高并发核心编程(卷2)加强版》面试必备 + 大厂必备 +涨薪必备 加尼恩免费领免费赠送 经典图书:《Java高并发核心编程(卷3)加强版》面试必备 + 大厂必备 +涨薪必备 加尼恩免费领免费赠送 经典图书:《尼恩Java面试宝典》 面试必备 + 大厂必备 +涨薪必备 加尼恩免费领免费赠送 资源宝库: Java 必备 百度网盘资源大合集 价值>10000元 加尼恩领取
小游戏《羊了个羊》 短短的7天内,DAU突破了1亿、吞吐量峰值21WQps。
(相关资料图)
《羊了个羊》运营后台数据显示,在短短的7天内,这款小游戏的DAU就突破了1亿。
要知道,除了王者荣耀、原神等屈指可数的现象级手游之外,1亿DAU是这个行业的天花板,
可是,它却被一个看上去设计粗糙的小程序游戏轻松实现了。
然而,其最初技术架构仅支撑 5000QPS并发,7天内突破了1亿、吞吐量峰值21WQps
如何通过架构优化,让一款小程序游戏可以在短时间内实现对上亿DAU的支持?
技术架构、运维体系、以及安全防范等技术体系都存在巨大的挑战。
那么:峰值21WQps、亿级DAU,超高吞吐小游戏,是怎么架构的?
注:本文以 PDF 持续更新,最新尼恩 架构笔记、面试题 的PDF文件,请从下面的链接获取:码云 或者 语雀
1 低吞吐、低可用的最初技术架构
《羊了个羊》最开始的技术架构,
因为技术以及时间等因素,在设计上有些简单,
如下图1所示,
玩家流量通过一个接入层 LB进入,
传输给服务层几个 POD 进行游戏逻辑处理,
再将数据进行存储,
其中,热数据存储在Redis中, 持久化数据存在MongoDB。
最初的服务层几个 POD ,都是单点服务
单点服务的性能瓶颈,再加上代码未进行充分优化,造成当时的系统最高只能承受5000的QPS,
但实际流量增长很快, 并且持续升高并到达性能瓶颈,游戏服务开始瘫痪,全部玩家无法再进行游戏。
2 技术架构全面升级
大部分项目,都存在低吞吐、低可用的最初技术架构
但是,如果吞吐量一上来,就面临着优化
so,
面对服务中断, 《羊了个羊》团队在详细分析原来架构的不足之后,
《羊了个羊》 做了 技术架构全面升级
具体如下图:
接入层的架构优化:
启用CDN做游戏动静态资源分离,让玩家使用的游戏资源实现就近下载,减轻网络端压力;
设计多LB入口实现入口高可用和限流,避免系统被超额流量过载;
服务层的架构优化:
- 优化服务层的自动扩容,应对巨量的 突发流量
- 具体措施上,首先通过引入腾讯云TKE Serverless 的弹性机制,实现游戏服自动纵向和横向扩展,
- 实现服务解藕,增加容错和熔断机制;
Cache层的架构优化:
- Redis缓存热数据,分担数据库查询压力等。
存储层的架构优化:
- 把MongoDB转换为读写分离模式,配合代码逻辑优化实现性能提升,
- 引入分库实现业务分层与隔离,
优化之后,《羊了个羊》最新技术架构
经过上述一系列技术升级, 新架构经受住了一波又一波的流量峰值考验,
在高峰期DAU过亿后,游戏技术系统依旧表现稳定,
这对于一个发布才几个月的小游戏来说,在国内也很难再找到这样的例子。
注:本文以 PDF 持续更新,最新尼恩 架构笔记、面试题 的PDF文件,请从下面的链接获取:码云 或者 语雀
3 运维体系的升级
通过技术架构的迭代以及不断激增的用户,《羊了个羊》技术团队也认识到,因为爆火太快,更需要快速补齐运维能力,才能更好的持续调整和提升游戏体验。
在运维体系这块,包括 业务日志、性能监测等。
为快速补齐运维能力,通过业务日志诊断程序性能,配合业务调优以减少服务器压力;
《羊了个羊》选择了开箱即用的日志服务 云服务度 CLS,
当然,有条件的团队,使用自建的 elk平台,或者基于clickhouse的高并发分布式日志监测平台,也是可以的。
CLS 对游戏接口稳定性、异常调用趋势的监控可帮助他们快速观测产品质量 ,并第一时间获取到异常panic统计分析和告警 ;
在游戏运营方面,玩家登录链路耗时/对局时间等数据亦可通过 CLS 分析、校验及处理,进而调整和提升游戏体验;同时还能满足游戏用户行为及审计对账等需求。
CLS的云原生特性,辅助进行稳定性和程序性能调优。另外,CLS用作简单运维工具查日志、做接口调用告警
借助CLS的SQL分析、仪表盘、监控告警能力,
可以分析出程序可优化点,解决游戏开发商在初期和爆发期对游戏稳定性和运营数据分析的难题。
除了运维数据外,
CLS还提供了数据观测功能
在游戏调整玩法、分析活动数据时,运营人员可借助CLS快速观测数据变化,并作出应对策略。
另外,还将游戏的通关数据、用户行为分析、审计对账等运营数据在CLS中存储分析。
4 安全防范领域的升级
哪里有流量,哪里就有黑产。
许多恶意BOT流量大量涌入到游戏中,导致游戏服务器 QPS、带宽快速升高,影响服务可用性等情况
由于设计之初没有充分考虑安全问题,因此引来大量不法分子通过恶意BOT抢刷游戏排行,
几乎每分每秒,都有恶意流量访问游戏接口,
并且这一部分恶意群体通过互联网、QQ群和微信群中传播恶意刷排行的脚本,
极大的破坏了游戏公平性,让本该属于游戏对抗的乐趣被恶意BOT抹杀。
而且更重要的是随着羊了个羊热度的不但攀升,许多恶意BOT流量的大量涌入,导致游戏服务器 QPS、带宽快速升高,一度影响服务可用性。
《羊了个羊》接入腾讯云WAF进行防护,
一开始接入WAF的时候,相关 QPS 峰值已达 21W,
接入WAF之前CPU一直处于临界值水位 、网络链接打满的导致服务不可用的情况。
通过选择负载均衡型WAF, 即可在不改动网络架构的情况下3秒完成业务接入WAF,实现在用户无感的情况下对恶意流量进行清洗及防护。
为了有效打击攻击者的恶意流量,
WAF 中 BOT 行为管理也提供了全链路、全生命周期的的恶意行为流量体系,实现快速高效的恶意流量治理。
最后在安全防范领域,通过安全方案抵抗异常流量攻击。
5 互联网应用设计的“三高”原则
通过《羊了个羊》团队在小游戏架构扩容、系统运维以及安全防范领域的实战经验,可以给大家一些参考。
面对突发流量,互联网应用在设计的过程中需要考虑以下能力:
第一是高并发,能够承载瞬时爆发流量,保证响应时长在可接受的范围;
其次是高可用,系统持续提供服务,小概率发生宕机时,过载保护将故障控制在可承受范围内,不影响核心业务;
最后是高扩展,服务系统应该具备水平和垂直扩展能力,在成本和可用性中实现最佳平衡点。
注:本文以 PDF 持续更新,最新尼恩 架构笔记、面试题 的PDF文件,请从下面的链接获取:码云 或者 语雀
推荐阅读:
《Docker面试题(史上最全 + 持续更新)》
《场景题:假设10W人突访,你的系统如何做到不 雪崩?》
《Springcloud gateway 底层原理、核心实战 (史上最全)》
《Flux、Mono、Reactor 实战(史上最全)》
《sentinel (史上最全)》
《Nacos (史上最全)》
《分库分表 Sharding-JDBC 底层原理、核心实战(史上最全)》
《TCP协议详解 (史上最全)》
《clickhouse 超底层原理 + 高可用实操 (史上最全)》
《nacos高可用(图解+秒懂+史上最全)》
《队列之王: Disruptor 原理、架构、源码 一文穿透》
《环形队列、 条带环形队列 Striped-RingBuffer (史上最全)》
《一文搞定:SpringBoot、SLF4j、Log4j、Logback、Netty之间混乱关系(史上最全)》
《单例模式(史上最全)》
《红黑树( 图解 + 秒懂 + 史上最全)》
《分布式事务 (秒懂)》
《缓存之王:Caffeine 源码、架构、原理(史上最全,10W字 超级长文)》
《缓存之王:Caffeine 的使用(史上最全)》
《Java Agent 探针、字节码增强 ByteBuddy(史上最全)》
《Docker原理(图解+秒懂+史上最全)》
《Redis分布式锁(图解 - 秒懂 - 史上最全)》
《Zookeeper 分布式锁 - 图解 - 秒懂》
《Zookeeper Curator 事件监听 - 10分钟看懂》
《Netty 粘包 拆包 | 史上最全解读》
《Netty 100万级高并发服务器配置》
《Springcloud 高并发 配置 (一文全懂)》
当前热讯:峰值21WQps、亿级DAU,小游戏《羊了个羊》是怎么架构的?
改款特斯拉Model 3即将登场:预计今年三季度投产
苹果版“望远镜”!曝iPhone 16 Pro/16 Ultra都会配备潜望长焦
科学家警告:2024或成全球史上最热年份
天天短讯!读编程与类型系统笔记10_泛型算法和迭代器
精选!【K哥爬虫普法】辛苦钱被中间商抽走八成,还因此锒铛入狱
育碧CEO让员工少花钱多做事 巴黎工作室将罢工抗议
苹果上海被强制执行1.44亿:这么多年还是第一次
世界通讯!微软否认“万人大裁员”:纯属谣言
天天讯息:7岁男孩爱撕倒刺致手指感染 医生提醒:处理不当会引发骨髓炎
全球今亮点!春节正常发货:仁和N95灭菌级口罩25片15.9元大促
世界要闻:网友3美元淘了一颗废品锐龙9 5900X:掰正针脚 点亮!
王晶武侠电影 《天龙八部之乔峰传》明日首映:年三十三大视频平台上线
Appuploader内测版本详解
热点评!使用Python的一维卷积
全球时讯:平民也能玩8GHz超频 技嘉B760主板奉上两大绝技:内存延迟大降7ns
被偷家了!德国人不买大众 把美系车特斯拉买成销冠
12nm后 DRAM怎么办?EUV光刻也不是万能药
每日时讯!安徽一劳斯莱斯婚车撞上石墩受损严重 博主:可向设置限宽人员索赔
《蚁人3:量子狂潮》角色海报发布 蚁人女儿貌美如花
象是哪个少数民族的生肖?十二生肖儿歌顺口溜
释迦牟尼佛成道日是哪一天?释迦牟尼佛的故事
国税地税税种有哪些?国税地税税种比例怎么分?
家有恶邻后面一句是什么?家有恶邻居怎么办?
最资讯丨学习笔记——AOP-代理模式
Python使用pyppeteer搭建网页截图api
三星移动硬盘质量怎么样?三星移动硬盘打不开怎么解决?
帅康燃气灶怎么样?帅康燃气灶打火后松手就熄灭怎么解决?
qq服务器拒绝发送离线文件是什么意思?qq服务器拒绝发送离线文件怎么办?
什么八字的人长得好看?什么八字的人长得丑?
光波炉的危害有哪些?光波炉与微波炉的区别
移动硬盘目录损坏如何恢复?移动硬盘目录损坏解决方法
今日快讯:官宣:F1中国站无缘2023赛季 已连续4年缺席
世界热文:开发预算突破7亿!网易400人团队“超级项目”《逆水寒》手游获批版号
天天快报!2023全球品牌价值500强出炉:苹果跌至第2 抖音杀入前10
全球观察:买一赠一:腾讯视频京东Plus会员联名年卡148元大促
《魔兽世界》电子骨灰盒出现bug:下载存档错误 账号被锁定
全球快消息!APM vs NPM
排面!小米登上《人民日报》头版
情侣拍照时戒指不慎掉入洱海 男生立即跳湖寻找:官方回应太危险不可取
天天热文:吃播账号“浪胃仙”被判属原公司:创始人涉职务侵占被捕
全球今日讯!学习笔记——Spring中组件扫描(包含扫描、排除扫描)、Spring中完全注解开发;Spring整合Junit4步骤
10辆特斯拉新车高速上集体燃烧 只剩一堆废铁架子
美国科技巨头依然寒气逼人 微软即将裁员:1万多人丢了工作
每日消息!《最后生还者》热播 收视率仅次于《龙之家族》
全球百事通!别人“借钱不还”怎么办?网友公布微信妙招 赶紧学起来
全球快资讯丨1月23日国服停!双方谈崩 网友吐槽暴雪绿茶:网易后到底谁来接盘?
世界热资讯!冬天加油枪都被冻住了 网友吐槽:国六B汽油里水加多了
当前关注:彻底闹掰!网易:暴雪提议蛮横 不符合商业逻辑
天天速看:价值10万土壤被快递弄丢 或致无法毕业 中通:找不到愿赔1000元 后续来了
央视点赞比亚迪:不惧冰雪 用技术发力高端
【天天时快讯】网友抱怨小米13前摄开孔太大!雷军回应:升级了3200万像素 无短板
数据类型的内置方法 可变类型与不可变类型
每日视讯:P1352 没有上司的舞会+P1122 最大子树和(树形DP入门)
丰收1年 挥霍掉400年的积累!东北黑土地不“黑”了
世界视讯!小米13打破安卓手机亮度纪录!雷军:显示效果特别好
环球微资讯!《魔兽世界》电子骨灰盒今日上线 网易提醒:小心安全隐患
三星旗下SEMES前员工窃密:卖给中国企业 获利6.5亿元
世界视讯!强制使用自家支付系统!苹果摊上事:俄罗斯开出12亿卢布罚单
设计模式之模板方法模式和策略模式
语音助手-智能家居
今日要闻!4K分辨率能否吼得住 RTX 3070Ti版戴尔游匣G16游戏挑战
世界最新:索尼独大的CMOS市场:;两匹中企黑马杀出来了
当前快看:年轻人第一辆车来了!传雷军亲自试驾小米汽车 标准三厢
当前关注:学习笔记——Servlet底层源码分析;Servlet接口;ServletConfig接口;
当前观点:宋浩老师专升本
全球速看:MySQL笔记01: MySQL入门_1.1 MySQL概述
速递!笔记本也不行了 将交出10年最差成绩单
天天快资讯:官方揭秘中国空间站:13年前秘密启动!至少用10年
【新要闻】专利暴露苹果野心!未来苹果全家桶将支持卫星通信
世界播报:漫威宇宙归来!两部大片《黑豹2》《蚁人3》国内定档:预告看个爽
全球最新:学习笔记——Spring中的注解;Spring中装配对象的注解;使用注解配置对象中属性
当前头条:node-sass安装问题
焦点热讯:2023首批版号出炉!米哈游双端大作《崩坏:星穹铁道》获批
讯息:特斯拉股价大跌!马斯克甩锅:未来可能跌得更狠
新动态:靠“车震”充电?宝马最新专利整活
世界观点:官方回应2000元帐篷房像45元招待所属实:游客称被气晕过去 双方已谅解
全球热讯:宏碁推出Nitro XV5 4K显示器:可超频至200Hz高刷
今日最新!LeetCode刷题:343. 整数拆分的完全背包写法解析
焦点报道:AcWing. 1073 树的中心
环球热点!湖北襄阳五分钟内连发两次地震:无破坏性 官方科普地震如何逃生
每日资讯:VScode和cmake的组合拳
手机硬件光追 为啥一直是PPT?
世界快资讯丨骁龙888站起来了!小米11系列MIUI 14稳定版就绪:流畅度暴增
简讯:《三体》电视剧第五集惊现《GTA》地图 网友:梦幻联动、双厨狂喜
滴滴回来了!但没有掌声
车主注意!今日起 全国严查酒驾醉驾
【天天报资讯】计算机基础 数据类型 流程控制 字符编码 文件操作
【新视野】ARP欺骗攻击:利用driftnet截获图片数据流
环球新消息丨剧毒蓝环章鱼再现 网友:山姆超市买的、没吃直接给扔了
今晚油价下调!春节出行加满一箱油将少花八元
全球今热点:日系车后期果然省钱!丰田10年维保花费4万元 美国车最低
环球短讯!25年经验资深机长驾驶 3D还原尼泊尔客机坠机过程:让人后怕
当前报道:三星Galaxy Book 3 Pro 360笔记本来了:12核i7 还有3K触摸屏
环球焦点!portswigger 靶场之 XSS 篇(上)
每日快播:JavaWeb开发中在服务器常用命令集锦
今日热文:学习笔记——Spring管理第三方bean;Spring中Bean的作用域;Spring中Bean的生命周期;Spring中bean的后置处理器;Sp
程序员同事每天准点下班,原来是用了这6个开发工具
【NAS使用心得】使用Synology Photos管理照片
【环球新要闻】70多岁大爷开40万极氪001买菜 直言此前开的奔驰真是垃圾