nginx配置实例及多服务器负载

JAVA学习网 2021-04-17 06:45:01

nginx配置实例

nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

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

    sendfile        on;
    keepalive_timeout  65;

    upstream minio-server {
        # weight:默认为1。weight越大,负载的权重就越大。
        # backup:其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。
        # max_fails:允许请求失败的次数默认为1,当超过最大次数时,返回 proxy_next_upstream 模块定义的错误。
        # fail_timeout:Nginx基于连接探测,如果发现后端异常,在单位周期为fail_timeout设置的时间中达到max_fails次数,这个周期次数内,如果后端同一个节点不可用,那么把节点标记为不可用,并等待下一个周期(同样时常为fail_timeout)再一次去请求,判断是否连接是否成功。
        server 192.168.199.140:9000 weight=2 max_fails=3 fail_timeout=10s;
        server 192.168.199.141:9000 max_fails=3 fail_timeout=30s;
    }
    server {
        listen       80;
        server_name  localhost;

        charset utf-8;

        location / {
            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-For $remote_addr;
            # 传输文件缓存大小及单次请求大小
            client_body_buffer_size 10M;
            client_max_body_size 1G;
            # 宕机检测,如果设置时间内无响应,则直接切换到其它服务
            proxy_connect_timeout 4;
            proxy_send_timeout 4;
            proxy_read_timeout 4;

            proxy_pass http://minio-server;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

多服务器负载

此配置下 nginx + keepalived 在多台服务器上搭建,可以实现高可用负载均衡。
keepalived安装及组合nginx配置负载实现高可用

阅读(975) 评论(0)