lnmp架构工作的整个过程
在这里插入图片描述

1.什么是tomcat?

Tomcat是一个中间件,真正起作用的,解析java脚本的是jdk jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。

二、配置tomcat并实现功能

2.1下载tomcat和jdk包

在这里插入图片描述

解压包在这里插入图片描述
配置

cd /usr/local/进入指定的解压目录
ls查看
ln -s jdk1.7.0_79  java            #给jdk做个软连接
ln -s apache-tomcat-7.0.37 tomcat  #给tomcat服务做一个软连接

2.2 配置java环境变量

[root@server1 local]# vim /etc/profile  #在环境变量当中加入java命令
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile ##加载环境变量使其生效
java -version查看java的版本

2.3 配置tomcat

cd tomcat/进入tomcat这个服务的配置目录
ls
cd logs/这个日志很重要
ls
cd webapps/发布目录
ls
cd ROOT/发布的东西
ls

在这里插入图片描述

cd /usr/local/tomcat/
cd bin/
ls
./startup.sh 执行脚本开启tomcat服务
netstat -ntlp,默认开启8080端口

在这里插入图片描述
在这里插入图片描述

在浏览器里面输入192.168.0.11:8080可以访问,因为指定了8080端口,可以直接访问tomcat服务器,实现动态请求
在浏览器里面输入192.168.0.11不可以动态访问,因为openresty默认开启80端口

但是用户不会访问8080端口的,一般都是访问nginx,所以要配置nginx。

三、实现动态求情

3.1 配置nginx

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2发布tomcat

切换到tomcat的默认发布目录下
在这里插入图片描述
测试实现了动态请求
在这里插入图片描述

三、负载均衡和反向代理

此实验需要三台虚拟机:

虚拟机名称	ip	                  作用
server1	  172.25.254.1	nginx反向代理服务器
server3	  172.25.254.3	tomcat服务器
server4	  172.25.254.4	tomcat服务器

server3,4都要安装好tomcat并配置好发布页面,能用网页实现

负载均衡配置和反向代理

[root@server1 ~]# cd /usr/local/openresty/nginx/conf/
[root@server1 conf]# vim nginx.conf
 
upstream tomcat {
        #sticky;
        server 172.25.0.3:8080;
        server 172.25.0.4:8080;
        }
 
location ~ \.jsp$ {
            proxy_pass   http://tomcat;
        }

测试:
在这里插入图片描述
在这里插入图片描述
192.168.0.11/test.jsp这是一个动态页面
发现同一个用户注册信息,轮询两个tomcat服务器,这样会造成用户的数据丢失
就像用户填写注册信息没写完遇到轮询那前面写的信息则不存在
因为前面写的肯访问的是tomcat1,后面写的是在tomcat2
nginx负责负载均衡,客户不知道后台是两个服务器在轮询
此时的两个tomcat服务器之间没有任何关系

这样肯定不行,因此要增加粘滞位

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐