在将网站部署到生产环境之前和之后,测试网站的性能是一种好的做法。 除此之外,如果您预计由于任何事件而需求增加,则还应在生产中执行性能测试。 网站负载测试是一种广泛使用的性能测试,用于确定您的网站和底层系统在大量用户中的行为方式。 有一些负载测试的方法,本文将讨论其中两种方法,即浸泡测试和峰值测试。

 

负载测试的浸泡测试方法

浸泡测试,也称为耐久性测试,在大量用户下长时间测量网站和 Web 应用程序 性能。 浸泡测试的主要目的是了解超出系统期望的性能和时间权衡。 众所周知,如果一个网站,可以忍受大量的用户在有限的持续时间,比一个小时,暴露在巨大的负载连续5小时,10小时,甚至更长的时间,该网站可能会崩溃或行为在一个意想不到的方式。 进行浸泡测试,以预测和确定网站在此类条件下的异常行为。

 

浸泡测试示例

浸泡测试的一个简单示例是游戏网站。 当用户在网站上玩任何游戏时,会为会话创建大量服务器文件,其中一些文件在会话后会清理干净。 这样的网站可能在较短的时间内在高负载下运行良好,但如果负载在较长的会话中继续运行,则可能发生内存泄漏,或者内存可能完全耗尽。 这将导致服务器崩溃,所有用户都将受到影响。

 

浸泡测试的优点和优点

  • 内存分配和利用率可见性,以帮助规划其他资源。
  • 可用于确定具有优先级的资源集的自动缩放策略。
  • 确定数据库资源和连接数,以保证不间断的性能。
  • 响应时间和负载暴露时间权衡见解,以规划垃圾回收和内存分配的其他测量。
  • 它发现标准负载测试方法无法检测到的潜在问题。
  • 在进行 IT 预算时验证基础架构需求。

 

浸泡测试的缺点与挑战

  • 浸泡测试非常耗时,并且需要额外的内存资源,持续时间较长。
  • 这是很难估计多久的测试应该运行,你可以运行它10小时,并给它一个’确定’,但您的网站可能会打破后11小时,你永远无法知道。
  • 如果您的网站是实时的,则必须避免在实时环境中运行浸泡测试。 在不同的环境中运行需要额外的资源,这些资源可能与生产环境相同,从而增加成本。

 

负载测试的峰值测试方法

进行峰值测试是为了确定峰值负载,即 在任何给定时间您网站上的最大并发用户数。 高峰测试背后的理念是模拟用户负载,在高峰时段,您期望用户负载。 它用于确定 CPU 使用率、数据库/秒请求、高峰时段预期用户激增下的响应延迟。 与浸泡测试不同,峰值测试不需要长时间运行。 它只需要产生最大的流量,你推测可能会来在高峰时间,如周末,晚上,交易时间等。

 

峰值测试示例方案

假设您有一个交易网站。 在这样的平台上,在正常交易时间会实现高流量。 在这种情况下,您可能有 10,000 个用户可能会在交易时间同时访问您的网站。 通常,您将使用平均负载(例如,1,000 个并发用户)执行负载测试。 但对于峰值测试而不是生成平均负载,您希望生成预期在这些时间期间的峰值负载。

 

浸泡测试的优点和优点

  • 有助于确定系统基准。
  • 识别在高峰时段会阻碍网站的系统瓶颈。
  • 降低高峰时段停机风险。
  • 标识整个基础结构的可伸缩性范围。
  • 将故障成本降至最低。

 

浸泡测试的缺点与挑战

  1. 峰值测试可能无法识别与耐力测试相关的问题。
  2. 产生大量虚拟用户的成本很高。
  3. 一个瓶颈可能阻碍另一个瓶颈,需要多次重新运行才能准确确定最大峰值负载。

 

整体方法:浸泡测试和峰值测试

虽然浸泡测试和峰值测试在不同的方案中都有其优缺点,但如果您使用同时包含两者的策略,那么您可以发现更多有关网站的准确性信息。 例如,峰值测试不会长时间进行,但是如果您在 浸泡测试中包含峰值负载,则可以确定您的网站在最大并发用户数的情况下可以保留多长时间。 对于我们的交易示例场景,建议对具有峰值负载的交易时间进行浸泡测试。

 

基于云的或本地测试

浸泡测试和峰值测试需要专用硬件和大量资源,才能在大量持续时间内生成适当的负载。 并不是每个希望拥有大量用户的稳定网站的组织或网站所有者都能够负担得起这种专用基础架构。 让我们看看什么时候应该选择哪一个。

在以下时间使用基于云的测试:

  • 您不想购买所需的所有硬件和软件。
  • 您希望从多个位置测试您的网站。
  • 如果要创建最现实的条件,如多个位置、多个浏览器、多个具有成本效益的设备。

 

在以下时间使用本地测试:

  • 您有足够的资金用于测试基础结构和维护团队。
  • 您不需要从多个位置测试您的网站。
  • 您每天都需要负载测试。

 

浸泡测试的负载视图

LoadView 提供基于云的负载测试环境,具有灵活的测试设计,几乎涵盖网站和 Web 应用程序性能测试的任何方案。 它使用来自不同位置的实际浏览器和多个设备,为任何测试方案生成最真实的条件。 您可以为 Load 测试设计用户脚本,无需使用其 EveryStep Web 记录器获得编码体验LoadView 平台中的浸泡测试可以使用其负载步长曲线功能执行,该功能允许您在特定时间段内指定一组数量的并发用户。 这可用于单独浸泡测试和峰值测试,以及两种测试的组合。 除此之外,您还可以实时调整负载以调整情况,以更好地了解波动条件下的性能。

 

浸泡测试网站和 Web 应用程序:结论

如果将浸泡测试和峰值测试纳入负载测试策略,它们非常强大。 为了为所有负载测试创建最真实的条件,建议使用基于云的负载测试工具,该工具使用 来自多个位置的真实浏览器和设备来测试您的网站。 LoadView 提供所有这些功能,可帮助您按需创建任何方案的负载测试,并采用高效的方式使用其”EveryStep Web 记录器”创建用户脚本。 了解有关浸泡测试您的网站和 Web 应用程序的更多信息。 立即通过免费负载测试申请免费试用