Nginx+Tomcat负载均衡、动静分离群集

Nginx+Tomcat负载均衡、动静分离群集

  • 一、Tomcat简介
  • 二、Tomcat重要目录:
  • 三、Nginx应用:
  • 四、Nginx负载均衡原理
  • 五、Nginx动静分离原理
  • 六、实验步骤

一、Tomcat简介

1、最初是由Sun的软件架构师詹姆斯.邓肯.戴维森开发。
2、安装Tomcat后,安装路径下面的目录和文件,是使用或者配置Tomcat的重要文件。

二、Tomcat重要目录:

bin :存放启动和关闭Tomcat脚本
conf :存放Tomcat不同的配置文件
doc:存放Tomcat文档
lib:存放Tomcat运行需要的库文件
logs:存放Tomcat执行时的LOG文件
src:存放Tomcat的源代码
webapps: Tomcat的主要Web发布目录
work:存放jsp编译后产生的class文件

三、Nginx应用:

1、Nginx是一款非常优秀的的HTTP的服务器软件。
支持高达50000个并发连接数的响应
拥有强大的静态资源处理能力
运行稳定
内存、CPU等系统资源消耗非常低
2、目前很多的大型网站都应用Nginx服务器作为后端网站程序的反向代理及负载均衡器, 提升整个站点的负载并发能力。

四、Nginx负载均衡原理

Nginx实现负载均衡是通过反向代理实现
Nginx配置反向代理的主要参数
upstream 服务池名{} //四层//
配置后端服务器池,以提供响应数据
proxy_pass http://服务池名
配置将访问请求转发给后端服务器池的服务器处理

五、Nginx动静分离原理

动静分离原理
服务端接受来自客户端的请求中,既有静态资源也有动态资源,静态资源由Nginx提供服务,动态资源Nginx转发至后端
Nginx静态处理优势
Nginx处理静态页面的效率远高于Tomcat的处理能力
若Tomcat的请求量为1000次,则Nginx的请求量为6000次
Tomcat每秒的吞吐量为0.6M,Nginx的每秒吞吐量为3.6M
Nginx处理静态资源的能力是Tomcat处理的6倍

六、实验步骤

nginx做反向代理,tomcat做网页,实现负载均衡。
nginx支持高并发,所以实现动静分离,nginx做静态网页,tomcat做动态

1、项目需求
至少三台服务器,两台tomcat相同的配置,一台做nginx反向代理。
【1】nginx服务器:192.168.60.30
【2】tomcat02服务器:192.168.60.40
【3】tomcat01服务器:192.168.60.50
2、项目配置
——————————————动静分离————————————
【1】nginx配置
手工编译安装nginx服务
yum install -y gcc gcc-c++ pcre-devel zlib-devel
useradd -M -s /sbin/nologin nginx
cd /opt
tar zxvf nginx-1.12.2.tar.gz
cd /opt/nginx-1.12.2/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
make && make install

ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
ln -s /usr/local/nginx/conf/nginx.conf /etc/

vim /usr/local/nginx/conf/nginx.conf
#access_log  logs/host.access.log  main;
        location ~.*.jsp$ {
          proxy_pass http://192.168.60.50:8080;
          proxy_set_header Host $host;
        }

nginx -t

vim /usr/local/nginx/html/index.html

this is jingtai web

nginx 【2】tomcat01配置 tar zxvf /opt/jdk-8u91-linux-x64.tar.gz -C /usr/local vim /etc/profile export JAVA_HOME=/usr/local/jdk1.8.0_91 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$JAVA_HOME/bin:$PATH source /etc/profile tar zxvf /opt/apache-tomcat-9.0.16.tar.gz -C /usr/local cd /usr/local mv apache-tomcat-9.0.16/ tomcat cd /usr/local/tomcat/bin/ ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin mkdir /usr/local/tomcat/webapps/test vim /usr/local/tomcat/webapps/test/index.jsp

this is dongtai web

startup.sh 【3】访问192.168.60.30会出现静态网页,访问192.168.60.30/test/index.jsp会出现动态网页 —————————基于上面动静分离更新,tomcat做动态页面,nginx处理静态图片—————————— 【1】nginx服务器配置 mkdir /usr/local/nginx/html/test //注意目标名称需要和Java项目名称相同均为test cd /usr/local/nginx/html/test mv WPS图片-修改尺寸.jpg meinv.jpg vim /usr/local/nginx/conf/nginx.conf location ~.*.\.(gif|jpg|jpeg|png|bmp|swf|css)$ { root html; expires 30d; } 【2】tomcat01服务器的配置 vim /usr/local/tomcat/webapps/test/index.jsp

this is dongtai web

【3】访问192.168.60.30/test/index.jsp,会出现动态页面和图片,但是图片在nginx服务器上,页面在tomcat上面。 ———————————————lvs负载均衡———————— 【1】配置tomcat02服务器 cd /usr/local/tomcat/ mkdir -p /usr/local/tomcat/webapps/web/webapp1 vim webapp1/index.jsp

this is lvs1 web

vim conf/server.xml 150 151 docBase:web站点目录 path:设置默认类 reloadable:设置监视类是否变化 startup.sh 【2】配置tomcat01服务器 cd /usr/local/tomcat/ mkdir -p /usr/local/tomcat/webapps/web/webapp1 vim webapp1/index.jsp

this is lvs2 web

vim conf/server.xml 150 151 startup.sh 【3】nginx反向代理配置 vim /usr/local/nginx/conf/nginx.conf #gzip on; upstream tomcat_server { server 192.168.60.50:8080 weight=1; server 192.168.60.40:8080 weight=1; } location / { root html; index index.html index.htm; proxy_pass http://tomcat_server; } pkill -9 nginx nginx 【4】访问192.168.60.30会出现轮询webapp1上面书写的页面

你可能感兴趣的:(Nginx+Tomcat负载均衡、动静分离群集)