Nginx + tomcat 搭建

目录

一、反向代理原理

二、Nginx静态处理优势

三、Nginx动静分离原理

 四、实验配置

4.1 准备1台 Nginx服务器 2台 Tomcat服务器

4.2 Tmocat服务配置

4.2.1 tomcat1配置

 4.2.2 tomcat2配置

4.3 Nginx server 配置

4.4 测试实验


一个企业内部最基础的架构组成需要一个处理静态Web服务的页面,一个动态Web服务的页面和数据库
而我们实现了在Linux平台上,实现了Nginx + PHP 实现动静分离,而实际生产中往往一台nginx 需要“对应”多个动态处理的服务(及tomcat),所以如何将前端接收到的动态请求转交给后端多个tomcat处理,是我们此处研究的内容

一、反向代理原理

        反向代理(ReverseProxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

        通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。当一个代理服务器能够代理外部网络上的主机,访问内部网络时,这种代理服务的方式称为反向代理服务。

二、Nginx静态处理优势

  • Nginx处理静态页面的效率远高于Tomcat的处理能力
  • 若Tomcat的请求量为1000次,则Nginx的请求量为6000次
  • Tomcat每秒的吞吐量为0.6M,Nginx的每秒吞吐量为3 .6M
  • Nginx处理静态资源的能力是Tomcat处理的6倍

三、Nginx动静分离原理

服务端接收来自客户端的请求中,既有静态资源也有动态资源,静态资源有Nginx提供服务,动态资源Nginx转发至后端。

Nginx + tomcat 搭建_第1张图片

 四、实验配置

4.1 准备1台 Nginx服务器 2台 Tomcat服务器

Nginx相关部署命令

关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

安装依赖环境包

yum install -y pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

创建运行用户、组

useradd -M -s /sbin/nologin nginx

上传nginx-1.15.9.tar.gz至/opt目录

cd /opt

tar xzvf nginx-1.15.9.tar.gz    解包

cd nginx-1.15.9/    准备编译

./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module

make j3 && make install    安装

路径优化

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

添加 Nginx 系统服务

vim /lib/systemd/system/nginx.service

[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/bin/kill -s HUP $MAINPID
ExecStop=/usr/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

chmod 754 /lib/systemd/system/nginx.service    给权限

systemctl enable nginx.service    开机启动

systemctl start nginx.service   启动nginx

nginx -t  检查nginx配置文件

Tomcat部署相关命令

关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

上传所需要的安装包到  /opt

pache-tomcat-9.0.16.tar.gz    jdk-8u201-linux-x64.rpm

查看java版本     java -version

rpm -ivh jdk-8u201-linux-x64.rpm   解jdk包

设置JDK的环境变量

vim /etc/profile.d/java.sh                                   #/etc/profile.d/  环境变量脚本目录    
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64    #输出指定java所需的类文件
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar        #可执行文件的位置
export PATH=$JAVA_HOME/bin:$PATH

source /etc/profile.d/java.sh  全局变量加载生效
java -version   再次查看版本会有所变化

cd /opt

tar zxvf apache-tomcat-9.0.16.tar.gz  解包
mv apache-tomcat-9.0.16 /usr/local/tomcat    #将解压后的包剪切到/usr/local 目录中,并改名为tomcat

ls /use/local/tomcat  查看

优化管理tomcat

ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/
ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/

启动、关闭tomcat
startup.sh   开启

ps -aux | grep 8080    检查开启

shutdown.sh  关闭

优化Tomcat

vim /usr/java/jdk1.8.0_201-amd64/jre/lib/security/java.security

securerandom.source=file:/dev/urandom    修改117行

备份tomcat配置文件 cp /usr/local/tomcat/conf/server.xml /usr/local/tomcat/conf/server.xml.bak

4.2 Tmocat服务配置

4.2.1 tomcat1配置

mkdir /usr/local/tomcat/webapps/test
vim /usr/local/tomcat/webapps/test/index.jsp     #动态页面的配置
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>


JSP test1 page


<% out.println("动态页面 1,http://www.test1.com");%>


Nginx + tomcat 搭建_第2张图片

 添加虚拟主机配置

vim /usr/local/tomcat/conf/server.xml
   
   		#新增
---》wq

shutdown.sh 
startup.sh

Nginx + tomcat 搭建_第3张图片

 4.2.2 tomcat2配置

Nginx + tomcat 搭建_第4张图片

Nginx + tomcat 搭建_第5张图片

 重启服务
shutdown.sh 
startup.sh

4.3 Nginx server 配置

准备静态页面

echo '

this is static

' > /usr/local/nginx/html/index.html

修改Nginx配置文件

Nginx + tomcat 搭建_第6张图片

Nginx + tomcat 搭建_第7张图片

设置完成之后重启 Nginx服务

4.4 测试实验

Nginx + tomcat 搭建_第8张图片

 Nginx + tomcat 搭建_第9张图片

Nginx + tomcat 搭建_第10张图片

 

你可能感兴趣的:(nginx,tomcat,前端)