Tomcat JVM参数优化策略| 学习笔记

简介: 快速学习Tomcat JVM参数优化策略。

开发者学堂课程【线上Linux服务器优化经验Tomcat JVM参数优化策略】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/382/detail/4811


Tomcat JVM参数优化策略


一、总结概述

二、Tomcat JVM参数优化

三、下期公开课预告

1.主题:Web服务器企业应用架构经验分享

2.内容:

3.参与方式

4.开班介绍

5.授课模式

6.开课时间

 

一、总结概述

那怎么样判断这个网站,它的一个资源和素材是被 NG 处理的,还是被 tomcat 处理其实有一个简单而又明确的一个区分标准,比如举个例子,我们在打开一个公开课的网站,

image.png

比如现在就看见这个图片,复制图片网址图片的一个地址,那我们怎么判断这个图片地址是被这个 NG 处理了还是 tomcat 的处理了?

一个最简单的小窍门是这样的,比如说我们找它的报错一,那后面随便跟一个数字,跟这个数字的意思,就说这个,图片肯定是不存在会报错,我们根据报错信息去判断,做一个输入,然后刷新一下,可以看到就报错出现一个404,说没有找到。

image.png

那么通过这个404,其实找到了就是这个 NG ,它这个图片就这个是被哪个这个应用复习给处理的,我们看到它是显示的是这个 NG ,然后一点六版本。

其实就是这个图片被NG给处理掉了,那么通过这个方式其实就非常简单的能够判断,就是每一个图片,它到底是被NG所处理的还是被我们后端它们快速处理的,那当然,如果说是被它们概括处理的话,它的返回的错误信息,应该就是它们开的一个错误信息。

NG服务器可以再加一个 tomcat ,为了充分利用资源,一个好的方式就是在NG服务器上再加一个 tomcat ,也就是说前端既是 NG 也是 tomcat ,剩下两台服务器都是加一个 tomcat 这样充分发挥三台服务器的性能,是更好的一个策略。

 

二、Tomcat JVM参数优化

1.优化参数:

-server-Xms3550m-Xmx3550m-Xmn1g-XX:PermSize=256M-XX:MaxPermSize=512m

Tomcat JVM 是 java 运行中的一个虚拟机,只有给虚拟机增加更多的资源,才能让它更好的运行。

对与 JVM,在不同的运维公司会有不同的区分方式。一般来说,对与JVM的优化参数都是由开发给出一个相关的配置需求,运维去做一个部署实施。

对于虚拟机,经常需要提到的是堆内存的大小,整个堆内存大小由年轻代大小、年老代大小和持久代大小组成,即整个堆内存大小=年轻代大小+年老代大小+持久代大小。

2.具体设置操作:

对于JAVA虚拟机有一个堆内存的设置,一般的优化都是堆内存大小进行设置。

堆内存是由三部分组成的,第一是年轻代的大小,第二部分是年老代大小,第三部分是持久代大小。

-Xmx3550m:设置JVM最大内存为3550M

-Xmx3550m:设置JVM初始堆内存为3550M(通常建议将最大堆内存和初始堆内存的值大小设置相同,好处就是这样可以避免很多的操作)

-Xmn2g:设置堆内存年轻代大小为2G,整个堆内存大小=年轻代大小+年老代大小+持久代大小(设置年轻代大小和年老代大小的值时,一定要保持平衡,要保证可以将其发挥最大的性能)

持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小,此值对系统性能影响较大

XX:PermSize=256M:设置堆内存持久代初始值为256M

XX:MaxPermSize=512m:设置持久代最大值为512M.持久代的大小一般是固定的,根据业务来调整持久代的值。

以上参数设置的大小是参照硬件环境其中内存大小为32G来设置,如果内存较小,那么就根据实际需要去适当降低配置。

另外需要注意在进行 JVM 相关的英文业务时,建议操作系统和版本要用最新的,这样可以保证在进行 JVM 优化时,内存设置可以最大化,如果是32位,内存利用率是有一定的限制的,建议使用64位操作系统。

 

三、下期公开课预告

1.主题

Web服务器企业应用架构经验分享

2.内容

Apache 架构技术分析(lamp+lamj)

Apache+tomcat 架构实战经验分享

Nginx 常见架构讨论与可行性分析

Nginx 常见性能调化策略

Nginx 负载均衡架构经验分享

3.参与方式

加入 Linux 运维专家(134896298)然后关注群公告,每周会定期进行公开课技术分享,具体开课时间会提前通知,欢迎大家届时参加。

参与方式:打开爱维 Linux 腾讯课堂:http://ke.qq.com/course/17291.点击报名,即可免费参与,如果你没来及参加线上直播,那么可以通过访问爱维Linux交流论坛:http://i,iivey.com/观看公开课的录制视频。

4.开班介绍

爱维Linux ,专注Linux运维实战教育,我们开设了两个班级:

●高薪运维入i门提高班详情: http://www.ivey.com/666-2

●高薪运维实战提升班详情: http://www.ivey.com/archives/66

5.授课模式

课程汇聚了以南非蚂蚁领衔的行业顶尖技术专家10年一线工作经验和培训心得,课程由浅入深,循序渐进,能够帮助学员们系统学习Linux一线经验,并迅速掌握Linux的各种应用技能。

授课方法

理论结合实际+实战技巧+经验分享+实时互动+专业学习教材

6.开课时间

入门提高班将在3月12开课。而实战提高班将在5月份开课, 5个月的授课时间,现

在入门门提高班接受报名.有意向的朋友可通过如下方式联系我们: .

QQ : 397824870 (蚂蚁老师) 3335603751 (章老师) 1218761836( 王老师)

微信:ixdba8

相关文章
|
22天前
|
缓存 Java 应用服务中间件
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
本文详解Spring Boot十大核心配置优化技巧,涵盖Tomcat连接池、数据库连接池、Jackson时区、日志管理、缓存策略、异步线程池等关键配置,结合代码示例与通俗解释,助你轻松掌握高并发场景下的性能调优方法,适用于实际项目落地。
228 4
|
10月前
|
监控 算法 Java
Java虚拟机(JVM)垃圾回收机制深度剖析与优化策略####
本文作为一篇技术性文章,深入探讨了Java虚拟机(JVM)中垃圾回收的工作原理,详细分析了标记-清除、复制算法、标记-压缩及分代收集等主流垃圾回收算法的特点和适用场景。通过实际案例,展示了不同GC(Garbage Collector)算法在应用中的表现差异,并针对大型应用提出了一系列优化策略,包括选择合适的GC算法、调整堆内存大小、并行与并发GC调优等,旨在帮助开发者更好地理解和优化Java应用的性能。 ####
238 27
|
7月前
|
缓存 监控 算法
JVM简介—2.垃圾回收器和内存分配策略
本文介绍了Java垃圾回收机制的多个方面,包括垃圾回收概述、对象存活判断、引用类型介绍、垃圾收集算法、垃圾收集器设计、具体垃圾回收器详情、Stop The World现象、内存分配与回收策略、新生代配置演示、内存泄漏和溢出问题以及JDK提供的相关工具。
JVM简介—2.垃圾回收器和内存分配策略
|
监控 Java 调度
探秘Java虚拟机(JVM)性能调优:技术要点与实战策略
【6月更文挑战第30天】**探索JVM性能调优:**关注堆内存配置(Xms, Xmx, XX:NewRatio, XX:SurvivorRatio),选择适合的垃圾收集器(如Parallel, CMS, G1),利用jstat, jmap等工具诊断,解决Full GC问题,实战中结合MAT分析内存泄露。调优是平衡内存占用、延迟和吞吐量的艺术,借助VisualVM等工具提升系统在高负载下的稳定性与效率。
240 1
|
10月前
|
存储 监控 算法
Java虚拟机(JVM)垃圾回收机制深度解析与优化策略####
本文旨在深入探讨Java虚拟机(JVM)的垃圾回收机制,揭示其工作原理、常见算法及参数调优方法。通过剖析垃圾回收的生命周期、内存区域划分以及GC日志分析,为开发者提供一套实用的JVM垃圾回收优化指南,助力提升Java应用的性能与稳定性。 ####
|
11月前
|
监控 算法 Java
Java虚拟机垃圾回收机制深度剖析与优化策略####
【10月更文挑战第21天】 本文旨在深入探讨Java虚拟机(JVM)中的垃圾回收机制,揭示其工作原理、常见算法及参数调优技巧。通过案例分析,展示如何根据应用特性调整GC策略,以提升Java应用的性能和稳定性,为开发者提供实战中的优化指南。 ####
137 5
|
12月前
|
存储 算法 Java
深入理解Java虚拟机(JVM)及其优化策略
【10月更文挑战第10天】深入理解Java虚拟机(JVM)及其优化策略
127 1
|
监控 算法 Java
深入理解Java虚拟机:JVM调优的实用策略
在Java应用开发中,性能优化常常成为提升系统响应速度和处理能力的关键。本文将探讨Java虚拟机(JVM)调优的核心概念,包括垃圾回收、内存管理和编译器优化等方面,并提供一系列经过验证的调优技巧。通过这些实践指导,开发人员可以有效减少延迟,提高吞吐量,确保应用稳定运行。 【7月更文挑战第16天】
190 4
|
Java Windows
Java演进问题之JVM在内存返还策略上会左右为难如何解决
Java演进问题之JVM在内存返还策略上会左右为难如何解决
196 0
|
缓存 前端开发 Java
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
121 0