Web前端SSR服务器压测方案

717 阅读2分钟

简述

前端压测主要针对服务端渲染 (SSR) 的前端项目进行压测,通常客户端渲染(CSR)的前端项目主要采用Nginx服务器;部分活动页面可能会存在短时间内页面访问量激增,导致TTFB过长,影响用户体验,导致流失用户。

前端服务端渲染框架:Nextjs

框架文档地址:nextjs.org/

工具

  1. 阿里PTS压测工具(目前采用), 产品文档

    1. 优点:简单易用,报告清晰;
    2. 缺点:需要付费;
  2. Jemter 工具进行压测。

    1. 优点:配置灵活,免费;
    2. 缺点:有一定学习成本,本地测试会对本地机器性能产生开销;

方案

  1. 设定目标

业务方给出该压测标准,例如:峰值按照300* *QPS**进行压测,研发和测试按照 目标值 的1.5 倍(300QPS * 1.5 = 450QPS压测)的标准值进行压测。

接口响应时间,最长2s,超出全部默认失败;

  1. 划定范围

确定访问目标服务器的接口地址,例如 balabal.com/index.html , balabal.com/index.json 等。

  1. 准备压测环境

准备好压测环境的服务器,将前端项目部署在压测服务器;手动配置压测服务器的配置信息,如核心数内存;

  1. 实施压测

服务器配置1H1G 进行压测(不自动扩容),压测过程中逐步提升QPS量,同时记录被压 服务器资 rt + 报错率 + CPU + 内存使用率。

先按照压出当前1H1G进行压测出极限之后,逐步增加配置,同时记录上述压测数据,直到达到目标值的1.5倍的服务器配置;

  1. 分析压测瓶颈

如果压测过程中出现瓶颈,对服务器进行分析找出原因,是否需要调优或者是否还有调优的空间,同时给出高可用方案。

  1. 验收

最后交付压测结果,需要业务方和开发人员确认,关于资源和预算。