阅读历史 |

第55章 如果企鹅要做(1 / 2)

加入书签

张老师继续画:「加连接池。提前建好一批连接,谁要用就借一个,用完还回去。这样不会每次请求都新建连接。做到这一步,能扛到三千人。」他又标了一个数字。

「给常用查询栏位加索引,能到四千。」往上又标了一个。

【写到这里我希望读者记一下我们域名台湾小説网→??????????.??????】

叶明问:「那文本文件那块呢?还有优化的空间吗?」

张老师看了他一眼:「你那个文本文件,现在多大?」

「八百条事件。上线先用五百条,后面内容团队会继续写,很快能到三千条。」

张老师点头:「三千条事件,纯文本几百KB。就算以后到一万条,也就一两MB。你那台伺服器内存至少1G,这点量完全不是问题。」

叶明追问:「那除了把文件加载进内存,还有别的优化可以做吗?」

张老师想了想:「事件多了以后,你得考虑『热点』的问题。不是所有事件被触发的频率都一样。

有的事件可能一天触发几万次,有的可能几天才触发一次。

那些高频事件,你可以把计算结果缓存起来,不用每次都重新算一遍。」

他在白板上又画了一个框,标上「计算结果缓存」:「这叫『热点事件结果缓存』。跟你那个文本文件加载,一个解决的是IO问题,一个解决的是CPU计算问题。两个层面的东西。」

叶明把这些都记下来:「那怎么判断哪些是热点事件?」

张老师笑了:「上线跑起来就知道了。看日志,哪些事件触发次数最多,哪些事件让伺服器CPU飙得最高。数据会告诉你答案。做技术的人,不能靠猜,得靠数据说话。」

叶明点头,又问:「那排行榜呢?排行榜的压力怎么解决?」

张老师继续画:「把排行榜做成静态页面,五分钟更新一次。用户访问的时候直接读静态文件,不用查资料库。这样排行榜的访问压力就没了。」

叶明追问:「五分钟会不会太慢?用户看到的数据不是实时的。」

张老师看了他一眼:「你这个游戏,需要实时排名吗?

玩家在乎的是自己排在第几名,还是在乎『我比昨天进步了』?

想清楚这个问题,你就知道五分钟够不够用了。

↑返回顶部↑

书页/目录