民歌湖附近有一家做餐饮连锁的老板去年国庆黄金周那天网站和小程序同时崩溃顾客反映点不了单支付也失败一天损失估计有好几万。事后找到我让我帮他看看问题出在哪。
为什么会卡死
我帮他查了一下日志发现问题很明显。他们用的是一台入门级的云服务器 1 核 2G 配置带宽只有 1M 平时日常使用没问题但一到节假日流量激增的时候就扛不住了。国庆当天网站的并发请求数达到了平时的十倍小程序的下单接口调用量也暴涨服务器 CPU 直接飙到百分之百内存也满了新的请求进不来已经在处理的请求也超时了。老板跟我说当初为了省钱选了最低配想着小店应该够用谁知道节假日这么多人。
服务器选型的基本原则
根据这个案例我总结了几条选型原则。第一是按峰值选而不是按日常选——你要考虑的不是平时有多少人访问而是最大可能的并发量是多少比如促销日、节假日、新品发布这些特殊时点;第二是要留余量——不要刚好卡在临界点上至少预留百分之三十的性能余量应对突发情况;第三是要考虑可扩展性——选的服务器要能随时升级配置或者做负载均衡不要把自己困死在一个固定配置上。在南宁这个市场一般来说小型门店的网站 2 核 4G 起步中型企业要 4 核 8G 以上如果涉及电商交易或者大量并发请求配置还要更高。
解决方案和后续优化
针对他的情况我给了几个建议。短期方案是立即升级服务器配置从 1 核 2G 升到 4 核 8G 带宽从 1M 升到 5M 这样能解决燃眉之急;中期方案是做动静分离——把图片、CSS、JS 这些静态资源放到 CDN 上减轻源服务器的压力;长期方案是上负载均衡——用两台或多台服务器分担流量一台挂了其他的还能顶上。我们还加了一个监控告警当 CPU 或内存使用率超过百分之八十的时候自动发短信通知运维人员及时处理。老板说升级之后过了元旦和春节两个高峰期再也没出现过卡顿心里踏实多了。
总结
服务器选型这件事宁可前期多花一点也不要等到出问题再补救那时候的损失可能远超节省的成本。你在南宁开店如果也在为服务器的事头疼可以把你的具体情况告诉我我帮你评估一下合适的配置免费的。