什么是动静分离?
为什么要动静分离?
如何实现动静分离?
实现动静分离的方式很多,比如静态资源可以部署到CDN、Nginx等服务器上,动态资源可以部署到Tomcat,weblogic或者websphere上。本次课程只要使用Nginx+Tomcat来实现动静分离。
Nginx与Tomcat部署
Nginx在高并发场景和处理静态资源是非常高性能的,但是在实际项目中除了静态资源还有就是后台业务代码模块,一般后台业务都会被部署在Tomcat,weblogic或者是websphere等web服务器上。那么如何使用Nginx接收用户的请求并把请求转发到后台web服务器?
步骤分析:
1.准备Tomcat环境,并在Tomcat上部署一个web项目
2.准备Nginx环境,使用Nginx接收请求,并把请求分发到Tomat上
在Centos上准备一个Tomcat
1.Tomcat官网地址:https://tomcat.apache.org/ 2.下载tomcat,本次课程使用的是apache-tomcat-8.5.59.tar.gz 3.将tomcat进行解压缩 mkdir web_tomcat tar -zxf apache-tomcat-8.5.59.tar.gz -C /web_tomcat
(1)准备3台tomcat
(2)启动tomcat并访问测试
http://192.168.200.146:8080/demo/getAddress
(3)在Nginx对应的配置文件中添加如下内容:
upstream static { server 192.168.64.133:80; server 192.168.64.134:80; } upstream java { server 192.168.64.136:8080; server 192.168.64.135:8080 } server { listen 80; server_name nginx.proxy.com; location / { root html; index index.html; } location ~* \.(jpg|png|gif)$ { proxy_pass http://static; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; health_check; } location ~ \.jsp { proxy_pass http://java; proxy_set_header Host $http_host; } }