jdk8飞行记录器配置
jdk8提供了jmc工具,应该比visualvm厉害吧
下面贴一份tomcat的配置,自己留个备份,把下面的内容粘贴到tomcat setenv.sh就可以了
nowday=`date +%Y%m%d_%H%M%S`
test -d ../gclogs || mkdir ../gclogs if [ -r "$CATALINA_BASE/bin/setenv_custom.sh" ]; then
. "$CATALINA_BASE/bin/setenv_custom.sh"
elif [ -r "$CATALINA_HOME/bin/setenv_custom.sh" ]; then
. "$CATALINA_HOME/bin/setenv_custom.sh"
fi if [ -z $CATALINA_HEAP ];then
CATALINA_HEAP="-Xms7g -Xmx7g -Xmn2g -XX:PermSize=128m -XX:MaxPermSize=128m"
fi
if [ -z $CATALINA_STACK ];then
CATALINA_STACK="-Xss1m"
fi if [ -z $CATALINA_GC ];then
CATALINA_GC="-XX:MaxTenuringThreshold=4 -XX:+UseConcMarkSweepGC -XX:SurvivorRatio=8 -XX:CMSInitiatingOccupancyFraction=70 -XX:+ExplicitGCInvokesConcurrent"
fi if [ -z $CATALINA_LOG ];then
CATALINA_LOG="-XX:-OmitStackTraceInFastThrow -XX:+PrintFlagsFinal -XX:+PrintCommandLineFlags -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -Xloggc:../gclogs/gc.log.$nowday"
fi if [ -z $CATALINA_COMPILER ];then
CATALINA_COMPILER="-XX:CICompilerCount=6"
fi if [[ ! -z "$JMX_PORT" && ! -z "$JMX_HOST" ]]; then
CATALINA_EXTRA="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=${JMX_PORT} -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=${JMX_HOST} -Dcom.sun.management.jmxremote.rmi.port=${JMX_PORT}"
if [[ ! -z "$JMX_LOGIN" ]]; then
arr=(${JMX_LOGIN//:/ })
JMX_USER=${arr[]}
JMX_PASS=${arr[]}
echo "$JMX_USER readwrite create com.sun.management.*,com.oracle.jrockit.* unregister" >> ../conf/jmxremote.access
echo "$JMX_USER $JMX_PASS" >> ../conf/jmxremote.password
chmod ../conf/jmxremote.access ../conf/jmxremote.password
CATALINA_EXTRA+=" -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access "
else
CATALINA_EXTRA+=" -Dcom.sun.management.jmxremote.authenticate=false"
fi
fi if [[ ! -z "$JFR" ]];then
CATALINA_EXTRA+=" -XX:+UnlockCommercialFeatures -XX:+FlightRecorder"
fi if [ -z $CATALINA_OPTS ]; then
CATALINA_OPTS="$CATALINA_EXTRA $CATALINA_HEAP $CATALINA_STACK $CATALINA_GC -server $CATALINA_LOG $CATALINA_COMPILER"
fiJPDA_ADDRESS=
JPDA_SUSPEND=n echo "using catalina jvm flags:$CATALINA_OPTS"
脚本里的变量设置环境变量就可以了,其实是为了docker-compose启动方便配置
jdk8飞行记录器配置的更多相关文章
- 使用jvisualvm和飞行记录器分析Java程序cpu占用率过高
一.jvisualvm使用 JDK1.6中Oracle提供了一个新的JVM监控工具:jvisualvm.下面重点介绍如何在本地通过远程的方式打开Linux服务器上的jvisualvm. 1.Xmana ...
- 运行java飞行记录器JFR(java flight recorder)
JFR 上面讲到的工具都是作为快速的查看诊断工具的.如果要深入分析问题,可以选择使用内置的Java飞行记录器:Java Mission Control. 转储JFR需要三步: 1. 创建一个包含了你自 ...
- Oracle Java Mission Control MBean 服务器 飞行记录器
Oracle Java Mission ControlMBean 服务器飞行记录器
- [转]win10中安装JDK8以及环境配置
本文转自:https://blog.csdn.net/yangsummer2426/article/details/80499775 1. 首先下载jdk,网址如下: http://www. ...
- Linux在线安装jdk8,并配置环境变量
1.创建相关目录:下载目录.安装目录 下载目录: cd / 2.下载jdk8到目录 下载前先跳转到下载目录,比如希望最后压缩包下载到/home/bak/下, 则先创建bak目录,命令如下: 注意:如果 ...
- win10 中安装 JDK8 以及环境配置
下载和安装 JDK8 下载 下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 安装 直接双 ...
- JDK8环境变量配置相关问题
1.右键选择 计算机→属性→高级系统设置→高级→环境变量 2.系统变量→新建 变量名:JAVA_HOME 变量值:(变量值填写你的jdk的安装目录,例如本人是 E:Javajdk1.7.0) 3.在系 ...
- 4.Centos7安装JDK8以及环境配置
1.下载 linux 版本 jdk (jdk-8u11-linux-x64.tar.gz) 一定要是 .tar.gz 版本,可以去我的百度网盘下载或者在百度上面找 2.新建文件夹命令:mkdir /u ...
- JDK8安装与配置
如果是免安装包 配置方法 1.配置java环境变量 注意:jdk文件夹名字取名不要用汉语取名. 1)鼠标右键点击我的电脑(计算机)选择属性栏 2)再点击左边高级系统设置 3)点击环境变量 4)在系统变 ...
随机推荐
- kill 命令详解 系统信号
kill 命令详解 系统信号 参考: 了解Linux的进程与线程 http://www.cnblogs.com/MYSQLZOUQI/p/4234005.html Linux就这个范儿 P532 ...
- rpyc 回调模式工作不正常
rpyc 回调模式工作不正常 最近使用了 rpyc 来处理一个多节点间的文件同步的任务,目标是使用 rpyc 来实现简单的 p2p 文件传输机制,以减少单点负载和单点失败对传输的影响. 和 p2p 的 ...
- Java 对象内存分配与回收
JVM内存区域模型: * 程序计数器,内存区域极小,是当前线程的字节码执行行号指示器: * 虚拟机栈.本地方法栈,即平时所说的“栈”,是虚拟机用来执行方法(包括Java.非Java方法)时,使用的临时 ...
- 第十三篇 Integration Services:SSIS变量
本篇文章是Integration Services系列的第十三篇,详细内容请参考原文. 简介在前一篇我们结合了之前所学的冒泡.日志记录.父子模式创建一个自定义的SSIS包日志记录模式.在这一篇,我们将 ...
- 第四篇 Integration Services:增量加载-Updating Rows
本篇文章是Integration Services系列的第四篇,详细内容请参考原文. 回顾增量加载记住,在SSIS增量加载有三个使用案例:1.New rows-add rows to the dest ...
- IDE硬盘 SCSI硬盘 SATA硬盘
IDE一般是有扁平电缆连接的,一个扁平电缆可以连接2个IDE硬盘,而一个计算机一般提供2个扁平电缆,所以一般允许4块IDE硬盘.IDE经过多年的发展,成熟,廉价,稳定.一般老式的电脑中装的都是这种硬盘 ...
- 修改RMAN list命令输出的时间格式
根据需要,修改rman list命令输出结果的时间显示 $ rman target / Recovery Manager: Release - Production on Wed Jul :: Cop ...
- 使用duplicate target database ... from active database复制数据库
使用duplicate target database ... from active database复制数据库 source db:ora11auxiliary db:dupdb 1.修改监听文件 ...
- Reporting services导出的Excel文件避免出现隐藏行列的布局
开发Reporting services时,为了避免在导出的Excel文件中出现隐藏的行和列,必须遵循以下规则: 1.Page header中的Textbox直接必须紧密贴合在一起 2.Page he ...
- mysql:on duplicate key update与replace into
在往表里面插入数据的时候,经常需要:a.先判断数据是否存在于库里面:b.不存在则插入:c.存在则更新 一.replace into 前提:数据库里面必须有主键或唯一索引,不然replace into ...