简体   繁体   English

如何使用 uwsgi-socket 与 nginx 进行负载平衡

[英]How to load balancing with nginx using uwsgi-socket

I am using socket file for accessing my application with nginx.我正在使用套接字文件通过 nginx 访问我的应用程序。 my application consist of three server listening on 8080, 8081, 8082. server configuration under /etc/nginx/sites-available/config-file is below我的应用程序由三台服务器组成,分别监听 8080、8081、8082。/etc/nginx/sites-available/config-file 下的服务器配置如下

server {
    listen 8080 default_server;
    listen [::]:80 default_server;
    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;
    server_name my-server-one;
    location / {
            include uwsgi_params;
            uwsgi_pass unix:/tmp/server_one.sock;
    }


server {
    listen 8081 default_server;
    listen [::]:80 default_server;
    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;
    server_name my-server-two;
    location / {
            include uwsgi_params;
            uwsgi_pass unix:/tmp/server_two.sock;
    }

server {
    listen 8082 default_server;
    listen [::]:80 default_server;
    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;
    server_name my-server-two;
    location / {
            include uwsgi_params;
            uwsgi_pass unix:/tmp/server_three.sock;
    }

my question is how can i apply load balance with upstream?我的问题是如何在上游应用负载平衡? like below upstream container像下面的上游容器

upstream myserver {
    server localhost:8080;
    server localhost:8081;
    server localhost:8082;
}

Thanks i found the solution finally and want to share谢谢我终于找到了解决方案并想分享

for setting up nginx load balancer i added the.sock file in upstream and pass the upstream to uwsgi_pass为了设置 nginx 负载均衡器,我在上游添加了 .sock 文件并将上游传递给 uwsgi_pass

nginx load balancer with socket nginx 负载均衡器带插座

upstream myserver {
   server unix:///tmp/server_one.sock;
   server unix:///tmp/server_two.sock;
   server unix:///tmp/server_three.sock;
}

the /etc.nginx/sites-available/nginx-config files are below /etc.nginx/sites-available/nginx-config 文件如下

server {
   listen 8080 default_server;
   listen [::]:80 default_server;
   root /var/www/html;
   index index.html index.htm index.nginx-debian.html;
   server_name my-server-one;
   location / {
        include uwsgi_params;
        uwsgi_pass myserver;
}

server {
   listen 8081 default_server;
   listen [::]:80 default_server;
   root /var/www/html;
   index index.html index.htm index.nginx-debian.html;
   server_name my-server-two;
   location / {
        include uwsgi_params;
        uwsgi_pass myserver;
}

server {
   listen 8082 default_server;
   listen [::]:80 default_server;
   root /var/www/html;
   index index.html index.htm index.nginx-debian.html;
   server_name my-server-two;
   location / {
        include uwsgi_params;
        uwsgi_pass myserver;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM