一、nignx概述
nginx是一个高性能的http和反向代理服务器,特点是占用内存少,并发能力强,nginx可以作为静态页面的web服务器,同时还支持CGI协议的动态语言,比如perl、php等,但是不支持java。java程序只能通过与tomcat配合完成,nginx专为性能优化而开发。nginx最大可支持高达50000个并发连接数。nginx支持热部署
二、反向代理
正向代理
nginx不仅可以做反向代理,也可以做正向代理来实现上网等功能。如果把局域网外的internet想象成一个巨大的资源库,则局域网中的客户端要访问internet,则需要代理服务器来访问,这就称之为正向代理。在正向代理中客户端是了解代理服务器和目标的。正向代理服务是由客户端锁设立的。正向代理服务器可以帮助我们实现突破访问权限,提高访问速度,对目标服务器隐藏客户端真实的ip地址
反向代理
反向服务器是配置在服务端的,客户端是不知道真正访问的是那一台服务器的,达到负载均衡并可以隐藏服务器真正的ip地址
下面是关于正向代理与反向代理的拓扑图
三、负载均衡
负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。
四、动静分离
为了加快网站的解析速度,可以把静态页面和动态页面由不同的服务器来解析,加快解析速度,降低原来的单个服务器的压力。
没有动静分离之前
所有的资源都部署在tomcat里,但是在分布式环境下其实静态资源各个服务器结点都是一样的。所以可以将静态资源部署到nginx服务器上,以此来减轻tomcat的负载压力.
使用动静分离后