Tomcat多实例及nginx反向代理tomcat

  • tomcat多实例介绍:

    • 什么是Tomcat多实例?

      • Tomcat多实例就是指在同一台服务器上运行多个独立的tomcat实例,每个实例之间都是相互隔离的。
      • 每个tomcat实例都具有独立的配置文件、日志文件、应用程序和端口。
      • 通过配置不同的端口和文件目录,可以实现同时运行多个独立的tomcat服务,每个服务器都可以独立的处理用户请求。
      • 这样既提高了服务器的并发处理能力,也可以实现负载均衡和高可用性。
    • 配置多个tomcat实例的步骤:

      • 1.复制tomcat目录
        • 确保每个实例有自己的目录
      • 2.配置端口:
        • 确保每个实例使用的端口是不一致的,可以在每个实例额的server.xml配置文件中更改
      • 3.配置日志:
        • 每个实例都应该有自己的日志目录,以避免混淆。
      • 4.配置应用程序:
        • 每个Tomcat实例可以部署不同的应用程序。确保将应用程序部署到正确的Tomcat实例目录中。
      • 5.启动和管理:
        • 为每个实例创建启动脚本,并确保他们以不同的用户和组身份运行,以避免冲突。
  • 本章实验环境:
  • 实验思路:首先配置两个tomcat实例,实现两个web网页,再部署nginx反向代理到tomcat实例1和实例2上面,实现了反向代理和负载均衡。
  • 实验步骤:

    • 1.配置tomcat多实例:

  •         wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.64/bin/apache-tomcat-8.5.64.tar.gz
    • 拖包解压:tar xf apache-tomcat-8.5.64.tar.gz -C /opt/
    • 复制两个目录,分别做不同实例的目录:
      • cd /opt/
      • cp -a apache-tomcat-8.5.64 tomcat_01
      • cp -a apache-tomcat-8.5.64 tomcat_02
  • 通过配置文件修改端口:
    • sed -i 's#8005#8006#g'  tomcat_01/conf/server.xml 
      sed -i 's#8009#8010#g'  tomcat_01/conf/server.xml
      sed -i 's#8080#8081#g'  tomcat_01/conf/server.xml 
      sed -i 's#8005#8007#g'  tomcat_02/conf/server.xml 
      sed -i 's#8009#8011#g'  tomcat_02/conf/server.xml
      sed -i 's#8080#8082#g'  tomcat_02/conf/server.xml
      

  • 启动两台实例:
    • /opt/tomcat_01/bin/startup.sh
    • /opt/tomcat_02/bin/startup.sh
  • 查看服务是否启动:
    • netstat -anput | grep java
  • 将两台实例的首页修改为不同的网站首页:
    • rm -rf /opt/tomcat_01/webapps/ROOT/*
      echo "tomcat_01" > /opt/tomcat_01/webapps/ROOT/index.html 
      rm -rf /opt/tomcat_02/webapps/ROOT/*
      echo "tomcat_02" > /opt/tomcat_02/webapps/ROOT/index.html 
      

  • 2.配置nginx反向代理:

    • yum -y install epel-release
    • 安装nginx:yum install nginx -y
    • 创建代理配置文件:
      • rm -rf /etc/nginx/conf.d/default.conf
      • vim /etc/nginx/conf.d/proxy.conf
        • upstream java {server 192.168.8.5:8081;server 192.168.8.5:8082;
          }
          server {listen       80;server_name  www.jpress.com;root   html;index  index.html index.htm;location / {proxy_pass http://java;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
          }
          

      • 检查配置文件:
        • nginx -t
      • 启动nginx:nginx
      • 访问网页测试:http://192.168.8.5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/275621.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何有效避免团队内耗,提升团队整体效能

团队内耗是一个普遍存在的问题,它可能导致工作效率低下、沟通不畅、成员间的信任缺失,甚至可能导致整个团队的崩溃。 它可能源于成员间的误解、利益冲突,或是个人情绪的波动。 如何避免团队内耗,是每个团队管理者和成员都应该关…

骏聪科技:以科技之力赋能企业 打造数字时代安全基石

在当今数字化时代,信息安全和技术信息化已经成为了现代社会的一个重要议题。随着科技的迅猛发展,信息技术的普及,以及网络互联的普遍性,安全技术信息化行业也蓬勃发展。这个领域的增长不仅改变了我们的日常生活,也对各行各业产生了深远的影响。在这个发展浪潮中,苏骏聪信息科技…

景联文科技:提供行业垂直大模型训练数据

近年来,以大模型为代表的人工智能技术已成为国家科技实力竞争的焦点。其中垂直大模型作为重要方向,在相关政策引导及市场需求的驱动下,已展现出较强的发展活力。 行业垂直大模型是针对特定行业的需求和场景进行深度定制的。这意味着模型在训练…

SpringCloud Gateway 新一代网关

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅,从传统的模块之间调用,一步步的升级为 SpringCloud 模块之间的调用,此篇文章为第六篇,即介绍 Gateway 新一代网关。 二、概述 2.1 Gateway 是什么 Gateway 是在 Spring 生…

(黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

(黑马出品_高级篇_01)SpringCloudRabbitMQDockerRedis搜索分布式 微服务技术——保护 今日目标1.初识Sentinel1.1.雪崩问题及解决方案1.2.服务保护技术对比1.3.Sentinel介绍和安装1.3.1.初识Sentinel1.3.2.安装Sentinel 1.…

Unreal发布Android在刘海屏手机上不能全屏显示问题

Unreal 4.27发布Android在刘海屏手机上不能全屏显示问题 Android设置全屏刘海屏全屏设置4.27设置刘海屏在部分手机不能显示问题 Android设置全屏 AndroidManifest.xml文件配置 ...<activity android:name"com.epicgames.ue4.GameActivity" android:label"st…

`httpsok`:轻松搞定免费的泛域名SSL/TLS证书

&#x1f525;&#x1f525;&#x1f525; httpsok&#xff1a;轻松搞定免费的泛域名SSL/TLS证书 在当今互联网时代&#xff0c;网站的安全性已成为一项不可或缺的重要因素。其中&#xff0c;采用HTTPS协议是一种有效的保护措施&#xff0c;但对于个人和团队开发者来说&#x…

Ubuntu23.10安装FFmpeg及编译FFmpeg源码

安装FFmpeg: 打开终端: 输入 sudo apt install ffmpeg 安装成功: 验证FFmpeg 默认安装位置与库与头文件位置 使用FFmpeg源码编译: 1.安装YASM sudo apt-get install yasm

2024年腾讯云便宜学生云服务器购买攻略

腾讯云学生服务器优惠活动「云校园」轻量应用服务器2核2G学生价30元3个月、58元6个月、112元一年&#xff0c;轻量应用服务器4核8G配置112元3个月、352.8元6个月、646.8元一年&#xff0c;CVM云服务器2核4G3M公网带宽配置842.4元一年&#xff0c;腾讯云服务器网txyfwq.com分享2…

数据库管理-第160期 Oracle Vector DB AI-11(20240312)

数据库管理160期 2024-03-12 数据库管理-第160期 Oracle Vector DB & AI-11&#xff08;20240312&#xff09;1 向量的函数操作to_vector()将vector转换为标准值vector_norm()vector_dimension_count()vector_dimension_format() 2 将向量转换为字符串或CLOBvector_seriali…

观测云产品更新 | 监控器新增组合检测、新增跨工作空间 ServiceMap 等

观测云更新 监控 > 新增「组合监控 」 支持将工作空间内的多个监控器检测结果组合判断&#xff0c;帮助您在复杂的判断条件或存在依赖场景时&#xff0c;进行更加灵活的监控触发。 详情说明&#xff0c;请参见&#xff1a;组合检测 - 观测云文档 服务优化 新增支持跨空间…

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Column)

沿垂直方向布局的容器。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件 可以包含子组件。 接口 Column(value?: {space?: string | number}) 从API version 9开始&#xff0c;该接口…

创建SpringCloudGateWay

创建SpringCloudGateWay 本案例基于尚硅谷《谷粒商城》项目&#xff0c;视频27 创建测试API网关 1、创建module 2、引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:x…

v-model 粗略解析

v-model 粗略解析 v-model是什么&#xff1f; 双向数据绑定&#xff0c;可以从data流向页面&#xff0c;也可以从页面流向data通常用于表单收集&#xff0c;v-model 默认绑定 value 值书写形式&#xff1a; v-model:value"" 或 v-model v-model原理是什么&#xf…

界面控件DevExpress ASP.NET Scheduler - 助力快速交付个人信息管理系统(下)

DevExpress ASP. NET Scheduler组件能完全复制Microsoft Outlook Scheduler的样式和功能&#xff0c;具有日、周、月和时间轴视图&#xff0c;并包括内置的打印支持&#xff0c;因此用户可以在尽可能短的时间内交付全功能的个人信息管理系统。在上文中&#xff08;点击这里回顾…

在域控的Users目录下批量创建用户组,名称来自Excel

对于CSV文件&#xff0c;PowerShell可以直接读取并处理&#xff0c;无需额外安装模块。假设你的CSV文件中&#xff0c;用户组名称在第一列&#xff0c;文件名为"groups.csv"&#xff0c;可以使用以下PowerShell脚本来批量创建&#xff1a; # 读取CSV文件中的数据 $g…

OpenCV的常用数据类型

OpenCV涉及的常用数据类型除包含C的基本数据类型,如&#xff1a;char、uchar&#xff0c;int、unsigned int,short 、long、float、double等数据类型外, 还包含Vec&#xff0c;Point、Scalar、Size、Rect、RotatedRect、Mat等类。C中的基本数据类型不需再做说明下面重点介绍一下…

QT----基于QT的人脸考勤系统(未完成)

目录 1 编译opencv库1.1 下载源代码1.2 qt编译opencv1.3 执行Cmake一直卡着data: Download: face_landmark_model.dat 2 编译SeetaFace2代码2.1 遇到报错By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has2.2遇到报错Model missing 3 测试…

如何剪辑视频?从入门到精通,轻松驾驭!

“视频怎么剪辑呀&#xff0c;手上有一段视频&#xff0c;但其中只有某个片段是我真正想要的。我想把这个片段单独剪辑出来&#xff0c;做成一个新的视频。有没有什么简单的方法可以实现这个目的&#xff1f;请赐教&#xff0c;感激不尽&#xff01;” 在这个短视频盛行的时代…

vue3上传图片并且支持删除

先做上传组件 <template><!-- --><el-uploadref"uploadRef":headers"headers":action"action":limit"limit":list-type"listType":auto-upload"autoUpload":show-file-list"showFileList&q…