nginx+tocmat 负载均衡,一台tomcat宕机返回延时解决

转载 2016年08月30日 17:18:08

用了nginx负载均衡后,在两台tomcat正常运行的情况下,访问http://localhost 速度非常迅速,通过测试程序也可以看出是得到的负载均衡的效果,但是我们试验性的把其中一台tomcat(server localhost:8080)关闭后,再查看http://localhost,发现反应呈现了一半反映时间快,一半反映时间非常非常慢的情况,但是最后都能得到正确结果.

 

解决办法:

问题解决,主要是proxy_connect_timeout   这个参数, 这个参数是连接的超时时间。 我设置成1,表示是1秒后超时会连接到另外一台服务器。
#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

     upstream localhost {
       #ip_hash;
       server 127.0.0.1:8081;
       server 127.0.0.1:8080;
     }

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

    listen 80;
    server_name localhost;
    location /{
    proxy_pass http://localhost;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_connect_timeout       1;
    proxy_read_timeout          1;
    proxy_send_timeout          1;

    }
        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443;
    #    server_name  localhost;

    #    ssl                  on;
    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_timeout  5m;

    #    ssl_protocols  SSLv2 SSLv3 TLSv1;
    #    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    #    ssl_prefer_server_ciphers   on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

Nginx之Keepalived实现高可用(双机热备+自动切换)-yellowcong

Nginx于Keepalived可以实现高可用,实现双机热备+自动切换,这种操作在现在的集群系统中,比较的常见,还有,通过keepalived和redis实现热备份的,还有和mysql实现的,类似的案...
  • yelllowcong
  • yelllowcong
  • 2017-12-10 17:19:03
  • 896

nginx超时设置

nginx常用的超时配置说明 client_header_timeout 语法 client_header_timeout time 默认值 60s 上下文 http server ...
  • liujiyong7
  • liujiyong7
  • 2014-01-13 19:07:56
  • 114296

nginx 负载均衡时,一台tomcat宕机时的问题 自动切换

如果Nginx没有仅仅只能代理一台服务器的话,那它也不可能像今天这么火,Nginx可以配置代理多台服务器,当一台服务器宕机之后,仍能保持系统可用。具体配置过程如下: 1. 在http节点下,添加...
  • LXB15959168136
  • LXB15959168136
  • 2016-11-10 11:19:32
  • 11984

nginx+tomcat做负载时,当一台服务器宕机如何解决?

做负载均衡时,宕机一台服务器如何解决
  • qq_29311303
  • qq_29311303
  • 2016-10-21 22:16:53
  • 1011

nginx+tocmat 负载均衡时,一台tomcat宕机时,如何快速切换到其他tomcat

通过调低以下值 proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300;...
  • ywb201314
  • ywb201314
  • 2016-05-20 15:02:33
  • 1476

nginx和Tomcat集成后发生的重定向问题分析和解决

Tomcat前端配置一个HTTP服务器应该是大部分应用的标配了,基本思路就是所有动态请求都反向代理给后端的Tomcat,HTTP服务器来处理静态请求,包括图片、js、css、html以及xml等。这样...
  • huchunlinnk
  • huchunlinnk
  • 2014-05-04 20:06:17
  • 21069

Nginx+tomcat实现负载均衡

Nginx 反向代理初印象Nginx (“engine x”) 是一个高性能的HTTP和反向代理 服务器,也是一个IMAP/POP3/SMTP服务器。其特点是占有内存少,并发能力强,事实上nginx的...
  • dylanzr
  • dylanzr
  • 2016-08-06 11:20:25
  • 10791

nginx超时转发请求问题

今天在做房产结构导入时,由于做了一个小区只能有一个导入,所以在前一个请求没响应前,再来一个请求就会提示“有正在处理的导入”,但是当数据量较大时,一个请求也会有该提示,经过万能的百度。发现是nginx会...
  • u013785816
  • u013785816
  • 2015-09-05 17:28:37
  • 1706

redis集群实现(六) 容灾与宕机恢复

实现集群,一个重要的保证就是高可用性,要在各种软件和硬件的故障情况下仍然能够提供服务。一般来说有两种解决思路,一种是每一个节点互相之间都会进行数据交互以及监控,出现故障的时候,各个节点都可以做协调任务...
  • lwy313722871
  • lwy313722871
  • 2016-12-04 10:54:08
  • 8090

SolrCloud分布式检索时忽略宕机的Shard

当有shard宕机时候,搜索报告异常为, “ no servers hosting shard: 503 ”解决方法是,在solrconfig中/select下添加true即可: ...
  • qing419925094
  • qing419925094
  • 2015-01-16 15:48:49
  • 2003
收藏助手
不良信息举报
您举报文章:nginx+tocmat 负载均衡,一台tomcat宕机返回延时解决
举报原因:
原因补充:

(最多只允许输入30个字)