一、如何在tomcat中配置JVM参数
如果是用tomcat部署你的java web系统,tomcat就是jvm对应的进程,系统中的Java代码是在tomcat的jvm进程中执行的;
比如通过java命令直接启动你的一个main方法跑起来的系统,启动的时候java命令会带上一些jvm参数;
首先对自己系统的jvm参数要了解,如:
1、内存区域大小的分配;
2、每个线程的栈大小;
3、metaspace的大小;
4、堆内存的大小,年轻代和老年代分别的大小,eden和survivor区的大小分别是多少;
如果没有设置,这些都会有默认的值
二、自己设置jvm的相关参数
1、预估系统可能的情况,去设置jvm参数;
2、进行压测,在压测的时候,需要去观察jvm运行的情况,可以使用jstat工具去分析jvm运行的情况,如年轻代里的eden区的对象增长情况,young gc的频率,每次young gc后有多少对象存活,survivor区能否放的下,老年代对象增长速率,老年代多久会出发一次full gc;
3、根据压测的情况去对jvm参数进行一定的调优,或是对代码进行优化;
4、到线上实际的生产环境上运行,基于一些监控工具去观察系统的运行情况。