.1 静态网站部署
Nginx 是一个 HTTP 的 web 服务器,可以将服务器上的静态文件(如 HTML、图片等)
通过 HTTP 协议返回给浏览器客户端
4.5.2 负载均衡
在网站创立初期,我们一般都使用单台机器对外提供集中式服务。随着业务量的增大,
我们一台服务器不够用,此时就会把多台机器组成一个集群对外提供服务,但是,我们网站
对外提供的访问入口通常只有一个,比如 www.web.com。那么当用户在浏览器输入
www.web.com 进行访问的时候,如何将用户的请求分发到集群中不同的机器上呢,这就
是负载均衡要做的事情。
负载均衡通常是指将请求"均匀"分摊到集群中多个服务器节点上执行,这里的均匀是指
在一个比较大的统计范围内是基本均匀的,并不是完全均匀
常用的负载均衡策略:轮询、权重、备机…
3 静态代理
把所有静态资源的访问改为访问 nginx,而不是访问 tomcat,这种方式叫静态代理。
因为 nginx 更擅长于静态资源的处理,性能更好,效率更高。
所以在实际应用中,我们将静态资源比如图片、css、html、js 等交给 nginx 处理,而
不是由 tomcat 处理。
4 动静分离
Nginx 的负载均衡和静态代理结合在一起,我们可以实现动静分离,这是实际应用中
常见的一种场景。
动态资源,如 jsp 由 tomcat 或其他 web 服务器完成
静态资源,如图片、css、js 等由 nginx 服务器完成
它们各司其职,专注于做自己擅长的事情
动静分离充分利用了它们各自的优势,从而达到更高效合理的架构
5 虚拟主机
虚拟主机,就是把一台物理服务器划分成多个“虚拟”的服务器,这样我们的一台物理
服务器就可以当做多个服务器来使用,从而可以配置多个网站。
Nginx 提供虚拟主机的功能,就是为了让我们不需要安装多个 Nginx,就可以运行多
个域名不同的网站。
Nginx 下,一个 server 标签就是一个虚拟主机。nginx 的虚拟主机就是通过 nginx.conf
中 server 节点指定的,想要设置多个虚拟主机,配置多个 server 节点即可。
比如一个公司有多个二级域名,没有必要为每个二级域名都提供一台 Nginx 服务器,
就可以使用虚拟主机技术,在一台 nginx 服务器上,模拟多个虚拟服务器。