nginx配置负载均衡需要有两个关键配置
在upstream中配置具体负载均衡信息
通过proxy_pass 来引用已经配置好的负载均衡信息
在http{}部分引入mylb.conf文件
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    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  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
}
mylb.conf内容如下
server {
    listen       8000;
    server_name  localhost;
    location / {
    proxy_pass http://springboot;
    proxy_next_upstream http_502 http_504 http_404 error timeout invalid_header;
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}
 upstream springboot{
        server 192.168.43.85:8764 max_fails=1  fail_timeout=10s;
        server my.com:8764 max_fails=1  fail_timeout=10s ;
        hash $cookie_jsessionid;
}
主要配置为
server下面的listen,表示监听的端口
location标识匹配的路径
proxy_pass路径匹配以后的upstream名字
upstream里面配置的为负载均衡的具体内容
其中server 后面配置的为负载到的服务的机器ip和端口
max_fails:失败重试次数
fail_timeout:超时时间
hash $cookie_jsessionid;根据jsession做会话保持。会对jsessionid做一个hash,每次路由到同一台后端服务上
本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!
本章给大家带来nginx负载均衡的相关配置讲解,首先大家先看下面的示意图:如上图所示;当客户端发起http请求时,先经过nginx服务器处理并重新分发请求;并下发给不同的服务器,从而实现nginx的负载均衡的简单应用。
负载均衡在服务端开发中算是一个比较重要的特性。因为Nginx除了作为常规的Web服务器外,还会被大规模的用于反向代理前端,因为Nginx的异步框架可以处理很大的并发请求,把这些并发请求hold住之后就可以分发给后台服务端(backend servers
为了保证Web应用程序的高可用性和性能,通常会使用多个应用服务器,然后使用负载均衡器接收用户的请求,将请求导向后端的应用服务器。目前有许多流行的软件可以起到负载均衡器的作用
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!