Nginx+Tomcat负载均衡群集全过程

 更新时间:2025年06月21日 11:29:54   作者:行止6  
这篇文章主要介绍了Nginx+Tomcat负载均衡群集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

一、部署Tomcat

tomat服务器为102和103

关闭防火墙和安全机制

查看JDK是否安装

运行 java -version 命令査看 Java 是否安装。如果没有安装需要自行下载安装

安装tomcat

(1)Tomcat 的安装和配置步骤如下:解压 apache-tomcat-9.0.8.tar.gz 包

(2)解压后生成 apache-tomcat-9.0.8 文件夹,将该文件夹移动到/usr/local/下,并 改名为 tomcat。

(3)启动 tomcat

Tomcat 默认运行在 8080 端口,运行 netstat 命令査看 8080 端口监听的信息

(4)打开浏览器访问测试:http://192.168.10.102:8080/,或者http://192.168.10.103:8080/,如果出现如图所示的界面,则表示 Tomcat 已经启动成功。

tomcat配置说明

Tomcat 的主目录为/usr/local/tomcat/。

(1)主要目录说明

  • bin/:存放 Windows 或 Linux 平台上启动和关闭 Tomcat 的脚本文件。
  • conf/:存放 Tomcat 服务器的各种全局配置文件,其中最重要的是 server.xml 和web. xml.
  • lib/:存放 Tomcat 运行需要的库文件(JARS)
  • logs:存放 Tomcat 执行时的 LOG 文件。
  • webapps:Tomcat 的主要 Web 发布目录(包括应用程序示例)
  • work:存放 JSP 编译后产生的 class文件。

(2)配置文件说明

  • catalina.policy:权限控制配置文件。
  • catalina.properties:Tomcat 属性配置文件。
  • context.xml:上下文配置文件。
  • logging.properties:日志log 相关配置文件

server.xml:主配置文件。

  • tomcat-users.xml:manager-gui管理用户配置文件(Tomcat 安装后提供一个manager-gui 的管理界面,通过配置该文件可以开启访问)
  • web.xml:Tomcat的 servlet、servlet-mapping、filter、MIME 等相关配置

Tomcat主配置文件说明

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

创建java的web站点

在102和103tomcat上

(1)在根目录下建立一个web目录,并在里面建立一个webapp1 目录,用于存放网站文 件。在webapp1 目录下建立一个 index.jsp 的测试页面。

(2)修改Tomcat的server.xml 文件。

(3)关闭 Tomcat,再重新启动。

(5)确认 web 站点

通过浏览器访问 http://192.168.10.102:8080/,出现如图所示的页面,说明该Tomcat 站点已经配置成功,并且已经能够运行JSP了。

图中,显示“静态页面图片 1”文字,并没有出现 linux.png 图片,原因是由于静态图片暂时没配,所以加载不出来。

Tomcat2 server 配置

Tomcat2 server 配置方法基本同 Tomcat1,其中包括:

(1)关闭防火墙。

(2)确认是否安装 JDK,JAVA 版本与 Tomcatl server 保持一致。

(3)安装配置 Tomcat,版本与 Tomcatl server 保持一致。

(4)创建/web/webapp1 目录,修改 Tomcat 配置文件 server.xml,将网站文件目录更改 到/web/webapp1/路径下。

(5)在/web/webapp1/路径下建立 index.jsp,为了区别将测试页面 index.jsp 的内容更改如下。

(6)启动 Tomcat,浏览器访问 Tomcat2 server,测试 http://192.168.10.103:8080/。

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

101为nginx服务器,102和103为tomcat服务器

安装nginx

在 Nginx 服务器 192.168.10.101上安装 Nginx,反向代理到两个 Tomcat 站点,并实现负载均衡。

(1)关闭防火墙

(2)安装相关软件包。

(3)解压并安装 Nginx。

(4)配置 nginx.conf。

在 http{…}中加入以下代码,设定负载均衡的服务器列表,weight 参数表示权重,权重越高,被分配到的概率越大。为了使测试效果比较明显,我们把权重设置为一样。

在http{-server{…}中加入 location~.*.jsp${…}动态请求条件规则以及静态图片请求规则。

下面在 Nginx 上准备静态图片。

测试 Nginx配置文件是否正确。

启动 Nginx服务。

nginx 查看端口号及 PID 进程号。

测试结果

测试负载均衡效果

打开浏览器访问 http://192.168.10.101/index.jsp。不断刷新浏览器测试,可以看到由于权重相同,页面会反复在以下两个页面来回切换。

第一次访问,出现 testl 的测试页面,并且能正常加载 nginx 上的静态页面图片。刷新后,第二次访问,出现 test2 的测试页面.

tomcat日志显示客户端ip

配置nginx

重启服务

配置tomcat服务器

重启tomcat查看logs

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Nginx如何安装withSSL模块

    Nginx如何安装withSSL模块

    这篇文章主要介绍了Nginx如何安装withSSL模块,Nginx 配置文件,开启ssl访问时经常报错,原因是由于nginx缺少http_ssl_module模块,编译安装的时候带上 --with-http_ssl_module 配置就行了,感兴趣的朋友跟随小编一起看看吧
    2024-04-04
  • 通过Nginx配置实现外网访问内网数据库的操作指南

    通过Nginx配置实现外网访问内网数据库的操作指南

    项目开发部署中经常会遇到MySQL或Oracle数据库安装在内网,而我们的应用服务只能部署在外网,如果实现外网服务访问连接内网的数据库呢?本次介绍如何通过Nginx配置实现外网访问内网数据库,需要的朋友可以参考下
    2023-10-10
  • Nginx Socket代理的实现方法

    Nginx Socket代理的实现方法

    Nginx的socket代理通常指的是Nginx通过stream模块来处理非HTTP的 TCP 流量,本文就来介绍一下Nginx Socket代理的实现方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • Nginx环境下WordPress的多站点功能配置详解

    Nginx环境下WordPress的多站点功能配置详解

    WordPress的多站点功能允许安装一个WordPress程序的情况下,实现多个站点也就是一套程序,可以绑定多个域名或子域名,本文详细介绍了在Nginx环境下WordPress的多站点功能配置方法
    2018-10-10
  • Nginx+Tomcat负载均衡、动静分离群集全过程

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

    Nginx与Tomcat分别作为高性能Web服务器和Java应用容器,常用于负载均衡与动静分离,提升系统性能与可用性,Nginx处理静态资源及反向代理,Tomcat承载动态业务,二者协作可优化架构并应对高并发场景
    2025-10-10
  • Nginx 配置 WebSocket 代理的操作过程

    Nginx 配置 WebSocket 代理的操作过程

    这篇文章主要介绍了Nginx 配置 WebSocket 代理的操作过程,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-04-04
  • Nginx服务器中设置禁止访问文件或目录的方法

    Nginx服务器中设置禁止访问文件或目录的方法

    这篇文章主要介绍了Nginx服务器中设置禁止访问文件或目录的方法,对于协同远程管理服务器的情况来讲很有实用性,需要的朋友可以参考下
    2015-07-07
  • nginx 部署启动jar包用到的一些命令和流程操作

    nginx 部署启动jar包用到的一些命令和流程操作

    这篇文章主要介绍了nginx 部署启动jar包用到的一些命令和流程操作,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • nginx提示502 页面的解决方法

    nginx提示502 页面的解决方法

    如果部分PHP程序的执行时间超过了Nginx的等待时间,可以适当增加nginx.conf配置文件中FastCGI的timeout时间
    2013-02-02
  • Nginx中location匹配以及rewrite重写跳转详解

    Nginx中location匹配以及rewrite重写跳转详解

    访问重写 rewrite 是 Nginx HTTP 请求处理过程中的一个重要功能,下面这篇文章主要给大家介绍了Nginx中location匹配以及rewrite重写跳转的相关资料,需要的朋友可以参考下
    2022-03-03

最新评论