一、什么是 nginx?
nginx 是一款高性能的 http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师 Igor Sysoev 所开发,官方测试 nginx 能够支支撑 5 万并发链接,并且 cpu、内存等资源消耗却非常低,运行非常稳定,所以现在很多知名的公司都在使用 nginx。
二、nginx 应用场景
1、http 服务器。Nginx 是一个 http 服务可以独立提供 http 服务。可以做网页静态服务器。
2、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用 nginx 做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
三、Windows 环境下安装 Nginx
1、首先下载Nginx:http://nginx.org/
2、解压:nginx-windows
3、双击: nginx.exe
4、访问localhost
四、反向代理服务器
Nginx、lvs、F5(硬件)、haproxy
①lvs
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。
②F5(硬件)
F5负载均衡系统支持N+M Cluster多活的架构,在同一个Group中的负载均衡设备可以自由分配“Active”与“Standby”比例,且可以指定Group中多台负载均衡设备的接管顺序,这种模式完全解决了2+2模式下冷备的两台设备利用率低的问题。
③haproxy
HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。
五、反向代理
反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
六、实现反向代理
1、修改hosts文件
2、修改conf文件下的nginx.conf文件
3、编写jsp页面并Tomcat启动
4、使用监听的域名访问
通过反向代理,用户不用知道服务的ip和端口,也能正常的进行访问,通过代理服务器nginx开放一个对外的地址让用户进行访问,保证的真实服务器的安全性