主程的晋升攻略(8):数据层的演进(上)

本文聚焦主程晋升,探讨数据层从简单设计到数据库调优,再到分库分表和读写分离的演进过程,最后深入缓存技术的应用。
摘要由CSDN通过智能技术生成
我们用一个做手游的故事来聊聊数据层不断优化提升的演进过程。

10:简单设计

有一天,老板突然说做个山寨版的糖果传奇手游,你接到任务后,分析出游戏的交互频率不大,都是点查询,用mysql能简单搞定。对游戏来说,你很少有机会用orcale这种上流货,mysql是物美价廉的选择。建个表,设好主键和索引,你轻松搞定数据库设计,惬意的泡了杯茶边喝边敲代码。

这里说的“点查询”,是指基于指定主键的查询,例如查询指定用户的信息,因为是基于指定主键,查询结果有限且较少,点查询的效率非常高。另一种叫“面查询”,是基于主键或索引的范围查询,例如查询昨天所有的订单,这种查询虽然有主键或索引,但结果数量不确定,有时处理不好时会出现严重性能问题。

游戏删档内测上线了,用户数不多,请求的响应也很及时,老板拍了拍你的肩膀。

100:数据库调优

游戏上线反响不错,精美的画面给了玩家不少惊喜,更多玩家蜂拥而入,你从监控系统上发现mysql的压力有点大,当初只是对数据库表结构做了设计,现在你开始review数据库优化了:创建表时默认的MyISAM存储引擎换成InnoDB存储引擎,修改mysql参数加大InnoDB的cache,不使用事务提交。

做了这些优化后,db性能提升明显,整个系统跑得很欢,你又惬意的去泡茶了。

1000:分库分表

你们游戏山寨得比较牛叉,用户持续增加,作为有风险意识的你,肯定不会等到
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值