最新网址:wap.qiqixs.info
“他说什么?”俞飛鸿问。
“他说让我先把慢查询的索引重建一遍,然后调整数据库的缓存参数。
如果还不行,他认识一个人,专门做服务器架构的,可以远程帮我们看一下。”
俞飛鸿把手机重新贴在耳边,“你在那边能找到人?”
“能。
我在横店认识一个朋友,姓孙,之前在银行做系统架构的,后来自己出来干了。
他对高并发这一块很有经验。
你让赵磊先把日志和配置文件打包发给我,我转给他看。”
“好。”
“飛鸿。”陈浩的声音放低了一些,“你别急。
这种东西在创业公司太正常了,不是你们做错了什么,是这条路本来就不好走。
你先让赵磊把能做的做了,我这边马上联系孙工。”
“我知道了。”
挂了电话,俞飛鸿把陈浩的话转述给赵磊。
赵磊点了点头,立刻坐下来,开始导出系统的日志文件和配置文件。
他把这些文件打包成一个压缩包,用电子邮件发到了陈浩留给他的一个邮箱地址。
接下来是等待。
赵磊没有干等。
他一边等一边重建索引,调整数据库的缓存参数,把之前没来得及做的优化一项一项地补上。
另外两个技术员也没有闲着,一个在检查代码里所有数据库查询语句的效率,一个在重新配置服务器的内核参数。
俞飛鸿给每个人倒了一杯咖啡,然后回到自己的办公桌前,坐下来。
她看着窗外的天空,灰蒙蒙的,有几只鸟从远处飞过去,很快就看不见了。
大约过了四十分钟,赵磊的电话响了。
他接起来,听了一会儿,然后开始在电脑上操作。
对方说一句,他做一步,动作很慢,像是在跟着一个人的指引在走。
俞飛鸿走过去,站在他身后,看着他操作。
她看不懂他在做什么,但她看得到他的表情。
他脸上的那种紧绷在一点一点地消退,取而代之的是一种专注的、有了方向感的笃定。
又过了大约二十分钟,赵磊把电话挂了。
“找到问题了。”他转过身,声音比之前轻松了很多,“孙工说我们的数据库索引没有问题,但MySQL的查询优化器在特定情况下会选择错误的执行计划,不走索引,导致全表扫描。
他给了一个WOrkarOUnd,用强制索引的方式改写查询语句,我已经改了。”
“那服务器崩溃的问题呢?”
“那个是连锁反应。
查询不走索引,数据库的负载暴增,连接数堆积,最后把内存吃光了。
强制索引之后,查询效率提升了将近十倍,同样的并发量应该扛得住了。”
赵磊抬起头,看着俞飛鸿。
“再跑一次?”
俞飛鸿看了他一眼,“你确定这次能行?”
“孙工说能行。”赵磊的语气里带着一种奇怪的信心,不是对自己的,而是对电话那头那个素未谋面的人的,“他在银行干了八年,处理过双十一级别的并发。
这种量级对他来说是小菜一碟。”
“那就再跑一次。”
赵磊重新启动了模拟工具。
这一次他没有喊倒计时,只是安静地按下了回车键。
办公室里又安静下来,只剩下服务器风扇的声音。
三十秒。
一分钟。
两分钟。
三分钟。
CPU使用率稳定在百分之六十左右,数据库连接数稳定在一百五十上下,页面平均响应时间零点七秒。
所有的监控指标都像被驯服的野兽一样,安安静静地待在正常范围内。
赵磊盯着屏幕看了很久,然后靠回椅背上,长长地呼出一口气。
“稳了。”
办公室里的三个人同时发出了声音——不是欢呼,是一种压抑了很久之后终于释放出来的叹息声。
有人笑了一声,有人拍了一下桌子,有人站起来走了两步又坐下了。
俞飛鸿站在赵磊身后,看着他屏幕上那些平稳的监控曲线,忽然觉得鼻子酸了一下。
她转身走回自己的办公桌,拿起手机,拨了陈浩的号码。
“解决了?”陈浩接起电话就问。
“解决了。”俞飛鸿说,声音有点发紧,“赵磊改了几个查询语句,强制走索引,再跑一遍就过了。
孙工帮了大忙,你替我们谢谢他。”
“我会的。”
俞飛鸿张了张嘴,想说点什么,但声音卡在喉咙里出不来。
她清了清嗓子,又试了一次,还是不行。
电话那头,陈浩安静地等着。
过了好几秒,俞飛鸿才挤出一句话来。
“我刚才……真的很怕。”
声音很小,小到几乎被听筒里的底噪盖过去。
但陈浩听到了。
“我知道。”他说,声音很温柔,“你在那种情况下能稳住,已经很不容易了。”
“我没有稳住。
我手都在抖。”
“但你打电话给我的时候,把事情说得很清楚。
什么时间出的问题、什么表现、赵磊查到了什么——你一条一条地说,没有乱。
这就是稳住。”
俞飛鸿握着手机,没说话。
“飛鸿,你听我说。”陈浩的声音不紧不慢,像是一只手稳稳地按在她的肩膀上,“这种问题,携程以后还会遇到。
服务器会崩,代码会有bUg,用户会有投诉——这些都是创业公司绕不过去的坎。
你今天经历了一次,下次就不会这么慌了。”
“我知道。”
“而且你今天做得最好的一个决定,是在出问题之后第一时间打电话给我。
你没有自己扛,没有硬撑,你知道什么时候该找人帮忙。
这个判断力,比你能自己解决所有问题还要重要。”
俞飛
(本章未完,请点击下一页继续阅读)
最新网址:wap.qiqixs.info