【Web 集群实战】19_Nginx 反向代理与负载均衡

本文介绍了Nginx作为反向代理和负载均衡器的原理与实践,包括集群特点、Nginx负载均衡的概念、组件、配置步骤,以及如何根据URL实现代理转发,实现动静分离,提升网站性能。
摘要由CSDN通过智能技术生成

【Web 集群实战】19_Nginx 反向代理与负载均衡

标签(空格分隔): Web集群实战


1. 集群简介

1.1 集群特点

  • 高性能
  • 价格有效性
  • 可伸缩性(Scalability)
  • 高可用性(Availability)
  • 透明性(Transparency)
  • 可管理性(Manageability)
  • 可编程性(Programmability)

1.2 集群的常见分类

  • 负载均衡集群(Load Balancing clusters),简称 LBC 或 LB
  • 高可用性集群(High-availability(HA) clusters),简称 HAC
  • 高性能计算集群(High-performance(HP) clusters),简称 HPC
  • 网格计算(Grid computing)集群

2. Nginx 负载均衡集群

2.1 反向代理与负载均衡概念简介

  • 严格地说,Nginx 仅仅是作为 Nginx Proxy 反向代理使用的,因为这个反向代理功能表现的效果是负载均衡集群的效果,所以称为 Nginx 负载均衡。

  • 普通的负载均衡软件,如 LVS,其实现的功能只是对请求数据包的转发(也可能会改写数据包)、传递,其中 DR 模式从负载均衡下面的节点服务器来看,接收到的请求还是来自访问负载均衡器的客户端的真实用户,而反向代理接收访问用户的请求后,会代理用户重新发起请求代理下的节点服务器,最后把数据返回给客户端用户,在节点服务器看来,访问的节点服务器的客户端用户就是反向代理服务器了,而非真实的网站访问用户。

  • 简单的说,LVS 等的负载均衡是转发用户请求的数据包,而 Nginx 反向代理是接收用户的请求然后重新发起请求去请求其后面的节点。

2.2 实现 Nginx 负载均衡的组件

Nginx http 功能模块 模块说明
ngx_http_proxy_module proxy 代理模块,用于把请求后抛给服务器节点或 upstream 服务器池
ngx_http_upstream_module 负载均衡模块,可实现网站的负载均衡功能及节点的健康检查

2.3 快速实践 Nginx 负载均衡准备

  • 硬件准备
HOSTNAME IP 说明
lb001 192.168.2.147 Nginx 主负载均衡器
lb002 192.168.2.148 Nginx 辅负载均衡器
web001 192.168.2.145 web001 服务器
web002 192.168.2.146 web002 服务器
web003 192.168.2.150 web003 服务器
  • 安装 Nginx 软件

【Web 集群实战】06_Nginx 安装与虚拟主机配置

  • Nginx web001 和 web002 的配置如下:
[root@web002 conf]# cat nginx.conf
worker_processes  1;
error_log logs/error.log;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
include extra/bbs.conf;
include extra/www.conf;
}

[roo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值