当前位置: 首页 > backend >正文

nginx配置负载均衡

Nginx安装:https://nginx.org/en/download.html

运行命令:start nginx
停止服务:nginx -s stop
重启服务:nginx -s reload
检查配置文件:nginx -t
查看版本:nginx -v

配置服务器组

# 定义后端服务器组upstream backend_servers {# ip_hash;server 172.20.1.4:80;  # 8.4上的后端服务server 172.20.8.6:80;  # 8.6上的后端服务# 默认是轮询策略,添加以下参数可调整为更随机的分配# least_conn;  # 优先分配给连接数最少的服务器}# 定义前端服务器upstream web_servers {server 172.20.8.1:8081;}

服务器组的使用

location / {# root   C:\phpstudy_pro\WWW;# index  index.html index.htm index.php;# try_files $uri $uri/ /index.html;proxy_pass http://web_servers;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;client_max_body_size 100M;  # 允许上传的最大文件大小为100MB}location /api/ {proxy_pass http://backend_servers/;  # 这个/确保路径正确传递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 10s;proxy_read_timeout 60s;}

访问前端页面:http://www.example.cn,
访问后端接口:http://www.example.cn/api/[接口地址]

完整配置

#user  nobody;
worker_processes  auto;#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;#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;# 定义后端服务器组upstream backend_servers {# ip_hash;server 172.20.1.4:80;  # 8.4上的后端服务server 172.20.8.6:80;  # 8.6上的后端服务# 默认是轮询策略,添加以下参数可调整为更随机的分配# least_conn;  # 优先分配给连接数最少的服务器}# 定义前端服务器upstream web_servers {server 172.20.8.1:8081;}server {listen       8080;server_name  www.example.cn;#charset koi8-r;#access_log  logs/host.access.log  main;location / {# root   C:\phpstudy_pro\WWW;# index  index.html index.htm index.php;# try_files $uri $uri/ /index.html;proxy_pass http://web_servers;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;client_max_body_size 100M;  # 允许上传的最大文件大小为100MB}location /api/ {proxy_pass http://backend_servers/;  # 这个/确保路径正确传递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 10s;proxy_read_timeout 60s;}#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 ssl;#    server_name  localhost;#    ssl_certificate      cert.pem;#    ssl_certificate_key  cert.key;#    ssl_session_cache    shared:SSL:1m;#    ssl_session_timeout  5m;#    ssl_ciphers  HIGH:!aNULL:!MD5;#    ssl_prefer_server_ciphers  on;#    location / {#        root   html;#        index  index.html index.htm;#    }#}}
http://www.xdnf.cn/news/5877.html

相关文章:

  • 王炸组合!STL-VMD二次分解 + Informer-LSTM 并行预测模型
  • 黑马Java基础笔记-10
  • 撤回不了一点 v1.0.2,支持微信QQ钉钉飞书等消息防撤回
  • 【图像处理基石】如何入门OCR技术?
  • 2025年PMP 学习十 -第8章 项目质量管理(8.1,8.2)
  • “端 - 边 - 云”三级智能协同平台的理论建构与技术实现
  • 【Linux】操作系统入门:冯诺依曼体系结构
  • python中的单例与实例
  • Python基础学习-Day23
  • SQL server数据库实现远程跨服务器定时同步传输数据
  • containerd 之使用 ctr 和 runc 进行底层容器操作与管理
  • mysql5.7安装
  • 视频监控汇聚平台EasyCVR安防监控系统:在应用中,机房及监控系统施工如何有效实现防雷?
  • huggingface transformers中Dataset是一种什么数据类型
  • spaCy基础入门
  • transforms.Compose()
  • ARFoundation 图片识别,切换图片克隆不同的追踪模型
  • Rodrigues旋转公式-绕任意轴旋转
  • Excel宏和VBA的详细分步指南
  • Linux系统:文件系统前言,详解CHSLBA地址
  • 如何创建maven项目
  • java之网络编程
  • uniapp(vue3)动态计算swiper高度封装自定义hook
  • SD-HOST Controller design-----SD CLK 设计
  • 深度学习之优化器【从梯度下降到自适应学习率算法】(pytorch版)
  • 华为鸿蒙电脑能否作为开发机?开发非鸿蒙应用?
  • 微服务的“导航系统”:使用Spring Cloud Eureka实现服务注册与发现
  • 销售具备的能力有哪些
  • JAVA研发+前后端分离,ZKmall开源商城B2C商城如何保障系统性能?
  • Python中元组(Tuple)使用详解和注意事项