正向代理:代表客户端(用户、h5、pc、app)访问web服务器.
反向代理:代表web服务器(多台服务器)给客户端提供服务。
image.png

  1. upstream tuling {
  2. ### 失败次数3 失败超时时间30s 权重 5
  3. server 127.0.0.1:8080 max_fails=3 fail_timeout=30s weight=5;
  4. server 127.0.0.1:8081 max_fails=3 fail_timeout=30s weight=5;
  5. server 127.0.0.1:8082 backup;
  6. ### backup 关键字 默认不对外提供服务,当其他服务器不可用时,会启用当前服务。
  7. }
  8. http {
  9. server {
  10. **
  11. location / {
  12. root html;
  13. index index.html;
  14. proxy_pass http://tuling;
  15. }
  16. }
  17. }

用途

  • 分担整体服务器的压力(网站功能相同)
  • 分配到不同的服务(网站功能不同)

负载均衡

  • 轮询
  • 权重
  • iphash
  • 最少连接
  • fair
  1. upstream aaa {
  2. server location:8081;
  3. server location:8082;
  4. }
  5. upstream aaa {
  6. server location:8081 weight=3; //通过计数器,访问该3次后在访问文下面一次
  7. server location:8082 weight=1;
  8. }
  9. upstream aaa {
  10. ip_hash;
  11. server location:8081;
  12. server location:8082;
  13. }
  14. upstream aaa {
  15. least_conn;
  16. server location:8081;
  17. server location:8082;
  18. }
  19. upstream aaa {
  20. server location:8081;
  21. server location:8082;
  22. fair;
  23. }