场景描述
单机缺点
- 当量上来后由于单机请求压力大,存在单点故障等问题
负载优点
- 降低单点故障
- 提高服务器处理能力
- 灵活控制请求流量
- 隐藏真实服务器地址
负载均衡
如下图
Nginx配置
配置如下
#user nobody; worker_processes 8; worker_rlimit_nofile 65535; events { use epoll; worker_connections 8192; } #http核心 http { include mime.types; default_type application/octet-stream; client_max_body_size 10M; client_body_buffer_size 256k; #日志格式 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '"$status" $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for" ' '"$gzip_ratio" $request_time $bytes_sent $request_length'; access_log logs/access.log main; sendfile on; keepalive_timeout 65; upstream backend{ server 192.168.1.1 weight=1; server 192.168.1.1 weight=1; } #虚拟服务器 server { listen 80; server_name www.go008.com; location / { root html; index index.html index.htm; proxy_pass http://backend; proxy_redirect off; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Cookie $http_cookie; chunked_transfer_encoding off; proxy_pass_header Set-Cookie; } #error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
白话描述
- 当用户请求www.go008.com的时候,由于该域名IP地址解析到负载均衡nginx所在服务器
- 由于虚拟服务器server配置了监听www.go008.com:80
- 请求被分发到proxy_pass配置的反向代理模块backend
- upstream根据配置将请求分发到后端真实服务器
来源:https://www.cnblogs.com/xqhppt/p/4943884.html