这次咱们从根源聊:16招搞定高并发架构设计( 五 )
为了一致性考虑需要做悲观锁处理,这个时候我们就可以考虑开辟一块所谓的缓冲区,专门用于数据处理,处理好之后把指针指向新的缓冲区,再回收使用老的区域做持续处理,就像JVM中的From和To区域来回倒腾,这也算一种缓冲使用。
面向数据读取优化
比如微博的实现在发微博的时候找出大V下一定数量的活跃的在线粉丝,比如5000个,直接把微博写入他们的关注微博列表中去(推数据过去),这样在那些粉丝刷新自己微博首页的时候就能更快(不用去关联拉数据了)。
又比如许多时候我们会做所谓的固化视图的工作,在写入数据的时候就直接写为我们之后要读取的复杂数据结构(比如数据需要Join N个表才能获得的,在写入的时候就直接组成这样的数据写到数据表)。
或者可以说我们做哈希结构,做B树索引,做倒排索引都是这样的思路,使用一些有利于我们之后读取、查询和搜索的数据结构来加速数据的读取(虽然写入的时候耗时多一点,并且需要占用额外的空间)。
数据预读取
推荐阅读
- lpl|海外热议:尽管LPL获胜了,但这次的S赛是韩国选手最多的一次
- 手机游戏|梦幻西游手游:听说你想要豪宅?这次满足了!新版本上线前庭后院
- 电子竞技|LOL、王者、吃鸡在列!杭州亚运会电竞项目公布:这次计入奖牌
- 张大仙|XYG晋级S组卡位赛,命运逆袭堪比电竞爽文,张大仙这次放心了
- 穿越火线|CF:传说大炮即将上线,这次的“传说BUFF”不可小觑
- 赛博朋克2077|《赛博朋克2077》又又又一次延期 这次是免费DLC
- pc端卡牌类|哈利波特:官方再出隐藏成就,这次不是靠运气,而是靠“计谋”
- 旭旭宝宝|DNF:2+2=0?旭旭宝宝再次对“玉玺”发出挑战,这次又亏了10w
- 魔兽世界|魔兽世界:赛季服开放时间已经确定,不知道这次人气到底如何?
- 小游戏|三国杀:新小游戏“抽签乐”登场,这次线下也能玩!