0

对于应用服务器设置为玻璃鱼集群。我已经通过 jmeter 发送了请求,并且所有请求都只命中了一台服务器。预计请求应该被分发到集群中的多个服务器。但是,如果手动发送请求集群正在工作。请帮忙解决这个问题

4

1 回答 1

0

据我从GlassFish Server High Availability Administration Guide中可以看出,可能存在不同的集群负载平衡机制:

  • 饼干方法

    负载均衡器插件使用单独的 cookie 来记录路由信息。HTTP 客户端(通常是 Web 浏览器)必须支持 cookie 才能使用基于 cookie 的方法。如果 HTTP 客户端无法接受 cookie,插件使用以下方法。

  • 显式 URL 重写

    粘性信息附加到 URL。即使 HTTP 客户端不支持 cookie,此方法也有效。要实现显式 URL 重写,应用程序开发人员必须使用 HttpResponse.encodeURL() 和 encodeRedirectURL() 调用来确保应用程序中的任何 URL 都附加了会话信息。

因此,根据您的负载均衡器配置,您需要

  1. 在HTTP Cookie 管理器中定义不同的 cookie
  2. 或者确保不同的线程将请求发送到不同的 URL,即通过HTTP URL Re-writing Modifier
  3. 在任何情况下,建议添加DNS 缓存管理器,以便每个虚拟用户自己解析被测应用程序的底层 IP 地址。
于 2018-01-29T06:12:19.413 回答