Nginx是一个高性能的http和反向代理服务器,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
1.应用场景
1.http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2.虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机
3.反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况
今天主要介绍nginx的负载均衡
2.什么是负载均衡
负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至 tomcat服务器
nginx负载均衡服务器:192.168.100.1
tomcat1服务器:192.168.100.10
tomcat2服务器:192.168.100.20
3.具体配置如下
upstream wlvtest{
server 192.168.100.10:8080 weight=10;
server 192.168.100.20:8081 weight=10;
}
server {
listen 80;
server_name wlv.test.com;
location / {
proxy_pass http://wlvtest;
index index.jsp index.html index.htm;
}
}
server_name:即请求地址为wlv.test.com的请求都会经过proxy_pass指定到http://wlvtest,同时upstream 必须与wlvtest保持一致。
当用户请求wlv.test.com时,会经过nginx负载均衡,分别转发到8080和8081服务上。
不足之处还请指正