01 “妄言”10分钟内调优CPU利用率
绝大部分开发在面试时都会被面试官问到一个问题:
“请举一个在以前工作过程中你觉得自己做的非常不错的事例”
换言之:“请吹一个牛”
一般人呢,这个牛他会悠着点吹,大多数符合“28定律”,8分实话2分润色
但是有一位不愿透露姓名的初级开发同学曾大言不惭的说:
“我只要10分钟就能快速调优生产环境机器的CPU利用率”
02 同学,请你展开说说
我的前东家是做社交电商的,前两年正是社交电商的风口,碰上风口猪都能飞,但是我们系统架构性能都太弱了,撑不起这头猪。比如用户经常会遇到:
-
查个商品,页面转啊转......
-
下个单,页面转啊转......
-
看个买家秀,页面转啊转......
老板就下了死命令,两周内所有主流程接口的RT(接口响应时间)必须优化到200ms以内!超出多少ms扣多少KPI。
同学,你不要展得太开了,说重点,回到CPU利用率调优上来!!!
哦哦哦,我需要先把这个问题背景交代清楚:
-
我们负责的应用有个接口,逻辑很简单,主要是数据计算
-
正常耗时一般都在130ms左右
-
但它总时不时的飚到200ms以上
-
应用所在机器的内存、网络、磁盘等资源都正常,CPU在50%左右
-
并发量不高
同事查了一天,代码的计算逻辑已经优化到极致,问题依然没有解决。