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飞行记录器配置的更多相关文章

  1. 使用jvisualvm和飞行记录器分析Java程序cpu占用率过高

    一.jvisualvm使用 JDK1.6中Oracle提供了一个新的JVM监控工具:jvisualvm.下面重点介绍如何在本地通过远程的方式打开Linux服务器上的jvisualvm. 1.Xmana ...

  2. 运行java飞行记录器JFR(java flight recorder)

    JFR 上面讲到的工具都是作为快速的查看诊断工具的.如果要深入分析问题,可以选择使用内置的Java飞行记录器:Java Mission Control. 转储JFR需要三步: 1. 创建一个包含了你自 ...

  3. Oracle Java Mission Control MBean 服务器 飞行记录器

    Oracle Java Mission ControlMBean 服务器飞行记录器

  4. [转]win10中安装JDK8以及环境配置

    本文转自:https://blog.csdn.net/yangsummer2426/article/details/80499775 1.      首先下载jdk,网址如下: http://www. ...

  5. Linux在线安装jdk8,并配置环境变量

    1.创建相关目录:下载目录.安装目录 下载目录: cd / 2.下载jdk8到目录 下载前先跳转到下载目录,比如希望最后压缩包下载到/home/bak/下, 则先创建bak目录,命令如下: 注意:如果 ...

  6. win10 中安装 JDK8 以及环境配置

    下载和安装 JDK8 下载 下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 安装 直接双 ...

  7. JDK8环境变量配置相关问题

    1.右键选择 计算机→属性→高级系统设置→高级→环境变量 2.系统变量→新建 变量名:JAVA_HOME 变量值:(变量值填写你的jdk的安装目录,例如本人是 E:Javajdk1.7.0) 3.在系 ...

  8. 4.Centos7安装JDK8以及环境配置

    1.下载 linux 版本 jdk (jdk-8u11-linux-x64.tar.gz) 一定要是 .tar.gz 版本,可以去我的百度网盘下载或者在百度上面找 2.新建文件夹命令:mkdir /u ...

  9. JDK8安装与配置

    如果是免安装包 配置方法 1.配置java环境变量 注意:jdk文件夹名字取名不要用汉语取名. 1)鼠标右键点击我的电脑(计算机)选择属性栏 2)再点击左边高级系统设置 3)点击环境变量 4)在系统变 ...

随机推荐

  1. [MVCSharp]开始使用MVC#

    Getting started with MVC# framework The source code of this example can be found under "Example ...

  2. SEL数据类型

    // //  main.m //  06-SEL数据类型 // //  Created by apple on 14-3-18. //  Copyright (c) 2014年 apple. All ...

  3. MVC ViewModel

    ViewModel这个概念不只是在在MVC模式中有,你会在很多关于MVC.MVP.MVVM的文章中见到这个说法,并且这个概念在任何技术中都有可能提到,比如ASP.NET, Silverlight, W ...

  4. 使用NBU进行oracle异机恢复

    windows平台的异机恢复,目录不同 1.异机环境准备安装oracle介质安装nbu客户端在异机主机的host文件中添加nbu server主机和原主机信息 2.恢复spfile文件 C:\> ...

  5. docker operation method note

    docker stop script #!/bin/bash CID_LIST=$(docker ps -q | xargs)if [ "$CID_LIST" = "&q ...

  6. Java基础之写文件——创建通道并且写文件(TryChannel)

    控制台程序,创建一个文件并且使用通道将一些文本写入到这个文件中. import static java.nio.file.StandardOpenOption.*; import java.nio.c ...

  7. PAT 解题报告 1051. Pop Sequence (25)

    1051. Pop Sequence (25) Given a stack which can keep M numbers at most. Push N numbers in the order ...

  8. 当数据库某张表数据发生变化时,更新c#程序中缓存的用法

    参考:http://www.webkaka.com/tutorial/asp.net/2012/111912/(SqlDependency和SqlCacheDependency缓存的用法及具体步骤) ...

  9. C# 以管理员方式启动Winform,进而使用管理员控制Windows Service

    问题起因: 1,) 问题自动分析Windows服务在正常运行时,确实会存在程序及人为原因导致该服务停止.为了在应用程序使用时确保该服务正常运行,于是有了该讨论主题. 2,)一般账户(尽管是管理员组账户 ...

  10. TPageControl组件

    TPageControl的功能是创建多个Dialog页,而这些重叠的每一个页Dialog就是通过TTabSheet对象实现的