JMeter 如何确定要在网站中优化的内容?

How can JMeter identify what to optimize in a website?

我是网站性能测试领域的新手,将使用 JMeter。玩过之后,我仍然无法确定要在网站加载时间内优化什么?

我目前仍在了解负载测试 - 我应该将性能报告提供给谁? Developers/Programmers?还是网络部?我通常遇到的错误示例是 502 错误或超时。

提前致谢。

网站加载时间是多种因素的综合,包括浏览器渲染时间、脚本执行时间、资源下载时间等。您不能使用JMeter 来验证前端时间。您可以使用 chrome 开发人员工具和适用于每个浏览器的其他类似工具来实现它。参考 https://developers.google.com/web/fundamentals/performance/

JMeter 主要用于测量协议级别的性能,以确保您的服务器在承受来自多个客户的实时压力条件时能够处理繁重的工作负载。它不会计算 java 脚本执行时间或 HTML 解析时间。您的 JMeter 脚本应该以这样一种方式编写,即它模拟您的 java 脚本执行逻辑和其他表示逻辑以形成请求输入和后续请求。

你的问题太开放了,你可能不得不从一个可以在整个过程中帮助你并培训你的导师开始。

另外,功能测试和性能测试的思路是完全不同的。性能领域的许多主要参与者建议将加载时间作为功能测试工作的一部分进行测量,而大多数服务器端性能由性能团队验证。

JMeter 无法识别任何东西,它所做的只是执行 HTTP 请求和测量响应时间。理想情况下,应该由您获取 JMeter 原始结果、执行分析并创建突出显示当前问题和瓶颈(理想情况下需要采取哪些措施来解决它们)的最终报告

考虑以下清单:

  1. 您的负载测试需要切合实际,不代表 real-life 应用程序使用情况的测试没有意义。因此,请确保您的 JMeter 测试在 cookies, headers, cache、下载图像、样式和脚本、虚拟用户组分布等方面仔细代表真实用户。
  2. 逐渐增加和减少负载,这样您就可以将每秒事务数和响应时间等指标与 increasing/decreasing 用户数量相关联,因此请确保应用合理 ramp-up and ramp-down settings
  3. 监控被测应用程序的运行状况。错误的原因可能很简单,就是缺少硬件资源(CPU、RAM、磁盘等)。可以使用 PerfMon JMeter Plugin 来完成。
  4. 对 JMeter 实例执行相同的操作。 JMeter 测量从 "just before sending the request" 到 "last response byte arrives" 的响应时间,所以如果 JMeter 不能足够快地发送请求 - 你将有很长的响应时间而没有其他可见的原因。