如何在nginx中测试负载均衡?

时间:2016-11-29 06:45:40

标签: nginx

我在nginx中完成了重定向的配置,它运行成功。 但在那我想要负载平衡: - 因为我已经创建 load-balancer.conf ,并将服务器名称提供给该文件,如: -

upstream backend {
  # ip_hash;

   server 1.2.3.4;
   server 5.6.7.8;
 }

server {
   listen 80;

   location / {
      proxy_pass http://backend;
   }
}

在这两种情况下,我做了相同的配置 并且它默认使用循环算法,因此请求通过一台PC转移到另一台PC ..... 但它无法正常工作

任何人都可以建议我将任何请求发送到另一台服务器5.6.7.8

所以我可以检查负载平衡。

非常感谢你。

1 个答案:

答案 0 :(得分:0)

为上游创建一个日志文件,以检查请求将发送到哪个服务器

http {
   log_format upstreamlog '$server_name to: $upstream_addr {$request} '
   'upstream_response_time $upstream_response_time'
   ' request_time $request_time';

upstream backend {
  # ip_hash;

   server 1.2.3.4;
   server 5.6.7.8;
 }

server {
   listen 80;
   access_log /var/log/nginx/nginx-access.log upstreamlog;
   location / {
      proxy_pass http://backend;
   }
}

,然后检查您的日志文件 sudo cat /var/log/nginx/nginx-access.log;

您将看到类似的日志

to: 5.6.7.8:80 {GET /sites/default/files/abc.png HTTP/1.1} upstream_response_time 0.171 request_time 0.171