Tomcat调优参数
JVM优化
Tomcat是一个Web容器,所有的jar其实都共享Tomcat中的JVM参数,所以Tomcat的JVM参数优化至关重要。
Tomcat的JVM参数是在启动脚本中设置的,如想要设置最大堆内存和最小堆内存时:
在windows的启动脚本catalina.bat中的set "CURRENT_DIR=%cd%"下面,添加 set JAVA_OPTS=-Xms512m -Xmx512m -XX:ParallelGCThreads=8 -XX:PermSize=128m -XX:MaxPermSize=256m
在linux的启动脚本catalina.sh中的注释后,既,# OS specific support. $var _must_ be set to either true or false.后添加:JAVA_OPTS="-Xms512m -Xmx512m -XX:ParallelGCThreads=8 -XX:PermSize=128m -XX:MaxPermSize=256m"
其它的JVM参数也如上设置,如果服务器只跑Tomcat一个应用,那么建议设置最大堆内存为机器总内存的75%—80%,其它情况根据实际进行设置。
连接器优化
在Tomcat中,连接器是IO事件处理的关键,如果连接器设置好了,则能够处理更多的IO事件,即处理更多的连接。
连接器的优化内容如下:
1.关闭Tomcat中默认的AJP连接器,该协议基本用不到而Tomcat默认开启,将其从配置文件中删掉即可。
2.连接器支持3种运行模式,NIO、BIO、APR,最好设置为NIO模式或者APR模式,如果对并发要求高,最好设置为APR模式,APR模式需要额外的安装类库。
3.可根据实际情况设置连接器的参数,如:maxThreads、compression、processorCache、acceptCount等。
缓存优化
1.对于使用共同jar包的项目,可以在Tomcat中添加到共享类加载器中,节省jvm类加载资源,避免重复加载。
2.启用连接器中的缓冲设置。
其它优化
1.使用Nginx部署静态资源,最好不要把静态资源放在Tomcat中部署,实现动静隔离。
2.有条件可以使用CDN加速静态资源
3.一定要把Tomcat部署在内网环境中,部署Nginx在外层处理连接,让Tomcat只处理内网转发过来的请求,此做法能大大提升性能,因为当网络不好时,会导致很多的超时请求,占用Tomcat的资源,用Nginx把这些有问题的请求拦截在外,节省Tomcat的线程以及IO资源。(如果Tomcat直接对外发布时,处理极限到了,可试试该条优化,极大提升性能)
相关文章:
Tomcat调优参数
JVM优化 Tomcat是一个Web容器,所有的jar其实都共享Tomcat中的JVM参数,所以Tomcat的JVM参数优化至关重要。 Tomcat的JVM参数是在启动脚本中设置的,如想要设置最大堆内存和最小堆内存时: 在windows的启动脚本catalina.bat中的set &q…...
云计算和大数据处理
文章目录 1.云计算基础知识1.1 基本概念1.2 云计算分类 2.大数据处理基础知识2.1 基础知识2.3 大数据处理技术 1.云计算基础知识 1.1 基本概念 云计算是一种提供资源的网络,使用者可以随时获取“云”上的资源,按需求量使用,并且可以看成是无…...
VAE-变分自编码器(Variational Autoencoder,VAE)
变分自编码器(Variational Autoencoder,VAE)是一种生成模型,结合了概率图模型与神经网络技术,广泛应用于数据生成、表示学习和数据压缩等领域。以下是对VAE的详细解释和理解: 基本概念 1. 自编码器&#…...
Android Room 使用模版
文章目录 一、配置依赖 plugins {id kotlin-kapt }android {compileOptions {sourceCompatibility JavaVersion.VERSION_17targetCompatibility JavaVersion.VERSION_17}kotlinOptions {jvmTarget 17} }dependencies {implementation("androidx.room:room-runtime:2.4.2&…...
Linux/Ubuntu 中安装 ZeroTier,实现内网穿透,2分钟搞定
相信很多人都有远程连接家中设备的需求,如远程连接家中的NAS、Windows等服务,所以会涉及到一个内网穿透工具的使用,如果没有公网IP的情况下,推荐大家使用ZeroTier,这是一款强大的内网穿透工具。 mac和windows版的操作…...
java技术:oauth2协议
目录 一、黑马程序员Java进阶教程快速入门Spring Security OAuth2.0认证授权详解 1、oauth服务 WebSecurityConfig TokenConfig AuthorizationServer 改写密码校验逻辑实现类 2、oauth2支持的四种方式: 3、oauth2授权 ResouceServerConfig TokenConfig 4、…...
Java 18 新特性详解
Java 18 新特性详解 Java 18 作为 Oracle 推出的又一重要版本,继续秉持着 Java 平台“创新但不破坏”的原则,带来了多项旨在提升开发效率、性能和安全性的新特性。本篇文章将深入解析 Java 18 引入的主要特性,并探讨它们如何影响开发者的工作…...
【css3】06-css3新特性之网页布局篇
目录 伸缩布局或者弹性布局【响应式布局】 1 设置父元素为伸缩盒子 2 设置伸缩盒子主轴方向 3 设置元素在主轴的对齐方式 4 设置元素在侧轴的对齐方式 5 设置元素是否换行显示 6 设置元素换行后的对齐方式 7 效果测试原码 伸缩布局或者弹性布局【响应式布局】 1 设置父元…...
【开源】大学生竞赛管理系统 JAVA+Vue+SpringBoot+MySQL
目录 一、系统介绍 学生管理模块 教师管理模块 竞赛信息模块 竞赛报名模块 二、系统截图 三、核心代码 一、系统介绍 基于Vue.js和SpringBoot的大学生竞赛管理系统,分为管理后台和用户网页端,可以给管理员、学生和教师角色使用,包括学…...
跨境选品师不是神话:普通人也能轻松掌握,开启全球贸易新篇章!
随着互联网技术的飞速发展,跨境电商行业已成为全球经济的新增长点。在这个背景下,一个新兴的职业——跨境选品师,逐渐走进了人们的视野。那么,跨境选品师究竟是做什么的?普通人又该如何成为优秀的跨境选品师呢? 一、跨境选品师的…...
前缀和,差分算法理解
前缀和是什么: 前缀和指一个数组的某下标之前的所有数组元素的和(包含其自身)。前缀和分为一维前缀和,以及二维前缀和。前缀和是一种重要的预处理,能够降低算法的时间复杂度 说个人话就是比如有一个数组: …...
ubuntu/部分docker容器无法访问https站点
ubuntu/部分docker容器无法访问https站点 解决方案 解决方案 默认的系统内可能没有安装根证书,需要安装一下 apt install ca-certificates如果官方源比较慢,可以换为国内源,但是不要使用https...
【MySQL】库的基础操作
🌎库的操作 文章目录: 库的操作 创建删除数据库 数据库编码集和校验集 数据库的增删查改 数据库查找 数据库修改 备份和恢复 查看数据库连接情况 总结 前言: 数据库操作是软件开发中不可或缺的一部分࿰…...
嵌入式0基础开始学习 ⅠC语言(2)运算符与表达式
1.运算符 什么是运算符? 用来进来某种运算的符号 如: - * / (取余,取模) a,几目运算符 根据其操作数的不同 单目运算符 该运算符…...
汇编语言(一)
寄存器:cpu中可以储存数据的器件(AX,BX) 汇编语言的组成:1.汇编指令 2.伪指令 3.其他符号 存储器:cpu,传入指令和数据,加以运算。(内存) 指令和数据&#…...
2010-2022年各省新质生产力数据(含原始数据+测算代码+计算结果)
2010-2022年各省新质生产力数据(含原始数据测算代码计算结果) 1、时间:2010-2022年 2、范围:31省 3、指标:gdp(亿元)、在岗职工工资:元、第三产业就业比重、人均受教育平均年限、…...
需求分析部分图形工具
描述复杂的事物时,图形远比文字叙述优越得多,它形象直观容易理解。前面已经介绍了用于建立功能模型的数据流图、用于建立数据模型的实体-联系图和用于建立行为模型的状态图,本节再简要地介绍在需求分析阶段可能用到的另外3种图形工具。 1 层次方框图 层次方框图用树形结…...
ML307R OpenCPU GPIO使用
一、GPIO使用流程图 二、函数介绍 三、GPIO 点亮LED 四、代码下载地址 一、GPIO使用流程图 这个图是官网找到的,ML307R GPIO引脚电平默认为1.8V,需注意和外部电路的电平匹配,具体可参考《ML307R_硬件设计手册_OpenCPU版本适用.pdf》中的描…...
python基于深度学习的聊天机器人设计
python基于深度学习的聊天机器人设计 开发语言:Python 数据库:MySQL所用到的知识:Django框架工具:pycharm、Navicat、Maven 系统功能实现 登录注册功能 用户在没有登录自己的用户名之前只能浏览本网站的首页,想要使用其他功能都…...
Golang设计模式(四):观察者模式
观察者模式 什么是观察者 观察者模式(Observer Pattern):定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式的别名包括发布-订阅(Publish/Subscribe…...
零基础GDScript编程:3天从游戏小白到开发者的完整指南
零基础GDScript编程:3天从游戏小白到开发者的完整指南 【免费下载链接】learn-gdscript Learn Godots GDScript programming language from zero, right in your browser, for free. 项目地址: https://gitcode.com/gh_mirrors/le/learn-gdscript 想学游戏开…...
直接选择排序(选择排序)
1.直接选择排序介绍直接选择排序就是每轮从待排元素中找一个最小的,放到要排的位置(比如第一次要排的位置是0号下标,第二次要排的位置是1号下标...),重复直到排完。举个生活例子 🍎就像你在班里按身高排队&…...
OpenClaw 保姆级安装指南:从下载到运行,一次成功避坑全解
2026年爆火的开源数字员工OpenClaw(小龙虾),凭本地运行、零代码操作、自动执行任务的优势圈粉无数。它不是普通聊天AI,能直接操控电脑,接收自然语言指令后自动拆解任务,全程无需人工干预。 本文专为CSDN全…...
AI写PHP代码=埋雷?资深工程师用237个真实项目数据验证:86%的AI生成函数需强制校验,附开源校验器v1.3
第一章:AI写PHP代码埋雷?237项目实证与校验必要性近期对237个真实PHP开源项目(涵盖Laravel、Symfony及原生框架)的自动化代码审计显示:由主流AI工具生成的PHP代码中,18.6%存在未声明变量导致的运行时错误&a…...
csv文件生成与读取
1.csv 文件解析入库方法(少量) private boolean doProcessNew(FileInputStream fileInputStream) {long start System.currentTimeMillis();List<JtComplaintPredictionResultEntity> csvFileList new ArrayList<>();try (BufferedReader reader new BufferedRe…...
JAVA:SpringBoot 实现图片防盗链的技术指南
1、简述 防盗链(Hotlink Protection)是一种保护网站资源不被其他网站直接引用的技术,特别是在图片、视频等静态资源方面。防盗链的核心思想是检查请求的来源(Referer),只允许来自指定域名的请求访问资源。 策略 原理 防护强度 Referer 检查 验证请求来源域名 低(Refere…...
LFM2.5-1.2B-Thinking-GGUF企业级集成方案:与内部系统对接的认证与审计
LFM2.5-1.2B-Thinking-GGUF企业级集成方案:与内部系统对接的认证与审计 1. 企业级AI集成的核心挑战 当企业考虑将大语言模型集成到内部系统时,安全性、合规性和可管理性成为首要考量。我们最近为一家金融机构部署LFM2.5-1.2B-Thinking-GGUF模型时&…...
Win11Debloat终极指南:一键清理Windows 11垃圾,让你的电脑飞起来!
Win11Debloat终极指南:一键清理Windows 11垃圾,让你的电脑飞起来! 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various …...
AI快速生成可编辑的流程图的方法
AI快速生成可编辑的流程图的方法 方法1:使用deepseek直接生成drawio流程图 生成后下载,使用drawio(访问地址:https://app.diagrams.net/) 打开 在drawio对流程图进行修改和美化。 方法2:使用deepseek生成…...
CustomThreads:3D打印螺纹创新3大突破,告别配合难题
CustomThreads:3D打印螺纹创新3大突破,告别配合难题 【免费下载链接】CustomThreads Fusion 360 Thread Profiles for 3D-Printed Threads 项目地址: https://gitcode.com/gh_mirrors/cu/CustomThreads 副标题:为何传统螺纹设计在FDM打…...
