如何将Java任务控制(或其他解决方案)与ColdFusion(tomcat)结合使用

如何将Java任务控制(或其他解决方案)与ColdFusion(tomcat)结合使用,coldfusion,Coldfusion,ColdFusion监视器对于服务器本身的详细信息非常有用,但是对于JVM来说,它非常有限 在开发和测试应用程序和功能的性能/内存占用时,如何实现Java任务控制或类似的JVM监控解决方案来监控运行ColdFusion的JVM 请注意,我问这个问题是为了“社区知识”,并且已经知道答案,但请随意提供有关其他监控解决方案的任何花絮。任务控制过去在JRockit JDK中作为自己的实用程序捆绑在一起。Hotspot和JRockit是两个完全不同的JVM,它们有自己的JDK/JRE。默认情况下,Cold

ColdFusion监视器对于服务器本身的详细信息非常有用,但是对于JVM来说,它非常有限

在开发和测试应用程序和功能的性能/内存占用时,如何实现Java任务控制或类似的JVM监控解决方案来监控运行ColdFusion的JVM


请注意,我问这个问题是为了“社区知识”,并且已经知道答案,但请随意提供有关其他监控解决方案的任何花絮。

任务控制过去在JRockit JDK中作为自己的实用程序捆绑在一起。Hotspot和JRockit是两个完全不同的JVM,它们有自己的JDK/JRE。默认情况下,ColdFusion使用热点JVM。JRockit基本上已经从新开发中消失,它的一些特性被合并到HotSpot中

Java任务控制对于开发目的是免费的

开始吧,下载最新的1.8JDK。我倾向于卸载此时安装的所有其他64位JDK和JRE

  • 可能不需要此步骤。更改环境变量以更新JAVA主页

    a。右键单击“我的电脑”->“属性”->“高级”->“环境变量”

    b。将JAVA_HOME和任何其他JAVA变量更改为新路径

  • 调整jvm.config

    a。制作C:\ColdFusion1x\cfusion\bin\jvm.config的.bak副本

    b。将以下行添加到jvm.config

    -XX:+解锁商业功能

    -XX:+飞行记录器

    -Dcom.sun.management.jmxremote.autodiscovery=true

    -Dcom.sun.management.jdp.name=ColdFusion10

    -Dcom.sun.management.jmxremote.authenticate=false

    -Dcom.sun.management.jmxremote.port=7091

    -Dcom.sun.management.jmxremote.ssl=false

  • 以管理员权限打开C:\program files\java\jdk1.8\u**\ lib\missioncontrol\configuration\org.eclipse.equinox.simpleconfigurator\bundles.info文件,删除以以下文本开头的四行:

    org.eclipse.equinox.log.nl_ja
    
    org.eclipse.equinox.log.nl_zh
    
    org.eclipse.equinox.supplement.nl_ja
    
    org.eclipse.equinox.supplement.nl_zh
    
  • 编辑C:\ProgramFiles\java\jdk1.8\u xx\lib\missioncontrol\configuration\config.ini,并添加以下行:eclipse.home.location=$osgi.install.area$

  • 启动:C:\program files\java\jdk_1.8.0\u**\ bin\jmc 请注意,JMC是从1.8启动的,而您的ColdFusion实例正在使用您随ColdFusion更新程序安装的最新热点版本运行

  • 您可以从帮助->安装新软件中安装插件。插件站点应该已经在那里了。这将为您提供堆转储的完整内存分析。它不如JRockit内存分析器好,但总比什么都没有好

  • 如果将ColdFusion作为Windows服务运行,则需要打开services.msc并关闭ColdFusion应用程序服务器。然后打开C:\ColdFusion10\cfusion\bin\cfstart.bat以启动Tomcat和ColdFusion作为前台应用程序。jOverflow插件在作为windows服务运行时不起作用

  • 您将在Java任务控制中看到您的JVM,我的是call-Xdebug,因为我猜它没有名字,而是以第一个选项开始

  • 右键单击ColdFusion JVM并选择“启动JMX控制台”。您将在右侧看到类似于此的内容:

  • 有很多东西需要探索,包括由于必须筛选ColdFusion框架本身而导致的检查内存的大量垃圾,但是有大量的教程可以解释它的含义。 本视频是您的主要介绍:

  • 参考资料:


    (请参阅“已知问题”部分)

    任务控制过去在JRockit JDK中被捆绑为自己的实用程序应用程序。Hotspot和JRockit是两个完全不同的JVM,它们有自己的JDK/JRE。默认情况下,ColdFusion使用热点JVM。JRockit基本上已经从新开发中消失,它的一些特性被合并到HotSpot中

    Java任务控制对于开发目的是免费的

    开始吧,下载最新的1.8JDK。我倾向于卸载此时安装的所有其他64位JDK和JRE

  • 可能不需要此步骤。更改环境变量以更新JAVA主页

    a。右键单击“我的电脑”->“属性”->“高级”->“环境变量”

    b。将JAVA_HOME和任何其他JAVA变量更改为新路径

  • 调整jvm.config

    a。制作C:\ColdFusion1x\cfusion\bin\jvm.config的.bak副本

    b。将以下行添加到jvm.config

    -XX:+解锁商业功能

    -XX:+飞行记录器

    -Dcom.sun.management.jmxremote.autodiscovery=true

    -Dcom.sun.management.jdp.name=ColdFusion10

    -Dcom.sun.management.jmxremote.authenticate=false

    -Dcom.sun.management.jmxremote.port=7091

    -Dcom.sun.management.jmxremote.ssl=false

  • 以管理员权限打开C:\program files\java\jdk1.8\u**\ lib\missioncontrol\configuration\org.eclipse.equinox.simpleconfigurator\bundles.info文件,删除以以下文本开头的四行:

    org.eclipse.equinox.log.nl_ja
    
    org.eclipse.equinox.log.nl_zh
    
    org.eclipse.equinox.supplement.nl_ja
    
    org.eclipse.equinox.supplement.nl_zh
    
  • 编辑C:\ProgramFiles\java\jdk1.8\u xx\lib\missioncontrol\configuration\config.ini,并添加以下行:eclipse.home.location=$osgi.install.area$

  • 启动:C:\program files\java\jdk_1.8.0\u**\ bin\jmc 请注意,JMC是从1.8启动的,而您的ColdFusion实例正在使用您随ColdFusion更新程序安装的最新热点版本运行

  • 您可以从帮助->安装新软件中安装插件。插件站点应该已经在那里了。这将为您提供堆转储的完整内存分析。它不如JRockit内存分析器好,但总比什么都没有好

  • 如果你在开ColdFus