美文网首页
部署Tomcat 及其负载均衡

部署Tomcat 及其负载均衡

作者: 编程人生 | 来源:发表于2021-05-19 23:42 被阅读0次

本片将介绍Nginx+Tomcat负载均衡集群的搭建。

        大家一定都用过Tomcat ,因为有了这个开源的服务器,使得我们的开发和测试很方便。所以我首先要感谢Tomcat的作者开发出这么优秀的软件。让我门一起感谢他:sun的软件架构师詹姆斯.邓肯.戴维斯,为我们提供了如此优秀的一款开源服务器。

        在开始正式内容之前,我先介绍下Tomcat的logo,他为什么会一只公猫?原因也是出自它的作者詹姆斯,因为大部分开源项目都会出一本书,并且将其封面设计成某个动物的素描,因此詹姆斯希望以一个动物命名此项目, 他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(公猫),是不很有意思。

    一、Tomcat服务的应用场景:

        Tomcat属于轻量级应用服务器,在中小型系统和并发访问不是很多的场景下被普遍使用, 是开发和调试JSP程序的首选。由于其处理静态HTML的能力远不及Apache 或者Nginx,所以Tomcat 通常作为Servlet 和 JSP容器,单独运行在后端。

案例环境:

主机:Tomcat 服务器

操作系统:CentOS 7

Ip 地址   192.168.78.188

主要软件:jdk-8u131-linux-x64.rpm

apache-tomcat-8.5.11.tar.gz

1)启动后关闭防火墙

systemctl stop firewalld

二、实施准备

    1.安装JDK,配置Java 环境

rpm  -ivh jdk-8u131-linux-x64.rpm

    2.在etc/profile.d/下建立java.sh 脚本,内容如下:

export JAVA_HOME = /usr/java/jdk1.8.0_131

export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

export PATH = $JAVA_HOME/bin:$PATH

    3.将java.sh 脚本导入到环境变量,使其生效

     source/etc/profile.d/java.sh

    4. 运行 Java -version命令或者javac -version 命令查看Java 版本是否和之前安装的一致。

Jdk  安装可参看这篇文章:感谢作者贡献

https://www.cnblogs.com/lhxsoft/p/10571286.html

三.安装Tomcat 

1.下载Tomcat 

wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz

2.解压Tomcat

tar -zxvf apache-tomcat-8.0.23.tar.gz

3.将解压后的文件夹移动到/usr/local/下,并改名tomcat8

mv apache-tomcat-8.0.23 /usr/local/tomcat8

4.j进入bin 目录下启动tomcat

cd bin/startup.sh

5.运行netstat命令可查看8080端口监听的信息

netstat -anpt|grep 8080

6.访问Tomcat 主页

7.tomcat 主配置说明

server.xml 为Tomcat 的主要配置文件,通过配置该文件,可以修改Tomcat 的启动端口,网站目录,虚拟主机,开启https等重要功能。

Tomcat Server 的组成说明

1)Server

Server 元素代表了整个Catalina 的servlet 容器。

2)Service

是一个集合, 它由一个或多个Connector 组成,以一个Engine ,负责处理所有Connector 所获得的所有的客户请求

3)Connector

有一个Connector 在某个指定的端口上侦听客户请求,并将获得请求交给Engine 来处理,从Engine

处获得回应并返回给客户。

Tomcat 有两个典型的Connector , 一个直接侦听来自borwser 的http请求,一个侦听赖在其他WebServer 的请求。

CoyoteHttp/1.1 Connector 在端口8080 处侦听来自browser 的http 请求。
Coyote JK2 Connector 在端口8009 处侦听赖在其他webServer (Apache) 的servlet/jsp 代理请求。

4) Engine

当Engine 下可以配置多个虚拟主机(Virtual Host) ,每个虚拟主机都有一个域名。

当Engine 获得一个请求时,它把该请求匹配到某个host 上, 然后把该请求交给Host 处理。

5)Host

代表一个Virtral Host (虚拟主机),每个虚拟主机和某个网络域名(Domain Name) 相匹配、

每个虚拟主机下都可以部署(deploy)一个或多个Web App . 每个WebApp 对应一个Context 

来处理,匹配方法是“最长匹配”,所以一个path=="" 的 Context 将成为该Host 的默认 Context

6) Context 

一个Context 对应一个Web Application  ,一个 Web Application 由一个或多个Servlet 组成。

四、Nginx+Tomcat 负载均衡集群

Nginx是一款非常优秀的http服务器软件,它能够支持高达50000个并发连接数的响应,拥有强大的静态资源处理能力,运行稳定,并且内存、CPU等资源消耗低。

案例环境:

Nginx  服务器  Centos7   192.168.78.168

Tomcat服务器 1 Centos7   192.168.78.188

Tomcat服务器  2  Centos7   192.168.78.190

实施:

1. 188环境已经装好Tomcat ,同样 在190环境安装Tomcat服务器

2. 168环境安装Nginx服务器。

3.Nginx服务器配置

首先关闭防护墙 filewalld  和 iptables

配置nginx.conf 

vi usr/local/nginx/conf/nginx.conf

在http{...}中 配置一下代码:

upstream tomcat_server{

                server 192.168.78.188:8080 weight =1

                server 192.168.78.190:8080 weight =1

}

在http{.....}-server{....}-location/{......}中加入一行“proxy_pass  http://tomcat_server;”

接下来测试配置文件是否正确:/usr/local/nginx/sbin/nginx -t  

启动nginx服务

nginx -c /usr/nginx/conf/nginx.conf

查看Nginx进程   ps  aux| grep nginx 

最后打开浏览器访问  http://192.168.78.168

相关文章

网友评论

      本文标题:部署Tomcat 及其负载均衡

      本文链接:https://www.haomeiwen.com/subject/fmwmjltx.html