Coldfusion - JEE 安装 - JVM 参数哪个以及如何?

Posted

技术标签:

【中文标题】Coldfusion - JEE 安装 - JVM 参数哪个以及如何?【英文标题】:Coldfusion - JEE Installation - JVM Arguments which and how? 【发布时间】:2021-12-09 15:43:14 【问题描述】:

我们正在尝试改变我们管理 QA 环境的方式。 到目前为止,我们已经使用 Adob​​e Installer 安装了 Coldfusion,该安装程序安装了修改后的 Tomcat。

我们希望使用 CommandBox Tool 管理 QA 服务器,该工具使用 war 文件以 JEE 安装模式安装 Coldfusion,但任何受支持的 JEE 应用程序服务器的情况都类似。 (EAP、Wildfly、Tomcat)。

我们在 JEE 安装模式下使用 Coldfusion 的经验很少,因此出现了一些关于 JVM 设置的问题。

在我们使用 Adob​​e Standard 安装程序安装 CF 后获得的 JVM 设置下方,访问 Coldfusion (CF) 管理员(此处用于全新安装 CF2018):

--add-modules=java.xml.ws 
--add-opens=java.base/java.lang=ALL-UNNAMED 
--add-opens=java.base/java.nio=ALL-UNNAMED 
--add-opens=java.base/sun.util.cldr=ALL-UNNAMED  
--add-opens=java.base/sun.util.locale.provider=ALL-UNNAMED 
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 
-Dcoldfusion.classPath=application.home/lib/updates,application.home/lib,application.home/lib/axis2,application.home/gateway/lib/,application.home/wwwroot/WEB-INF/cfform/jars,application.home/wwwroot/WEB-INF/flex/jars,application.home/lib/oosdk/lib,application.home/lib/oosdk/classes 
-Dcoldfusion.home=application.home 
-Dcoldfusion.jsafe.defaultalgo=FIPS186Random 
-Dcoldfusion.libPath=application.home/lib 
-Dcoldfusion.rootDir=application.home 
-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true 
-Djava.awt.headless=true 
-Djava.locale.providers=COMPAT,SPI 
-Djava.security.auth.policy=application.home/lib/neo_jaas.policy  
-Djava.security.policy=application.home/lib/coldfusion.policy 
-Djava.util.logging.config.file=application.home/lib/logging.properties 
-Djdk.attach.allowAttachSelf=true 
-Dorg.apache.coyote.USE_CUSTOM_STATUS_MSG_IN_HEADER=true 
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.JavaUtilLog 
-Dsun.font.layoutengine=icu
-XX:+UseParallelGC 
-XX:MaxMetaspaceSize=192m 
-Xbatch 
-Xdebug
-Xms256m 
-Xmx1024m 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6006 
-server

第一季度。 Coldfusion 战争里面有 JVM 设置(我们在上面写过)并且会在部署期间应用它?

第二季度。如果答案是否定的!,根据所使用的 JEE 应用服务器,有哪些适用的设置(即某些设置对于 Tomcat 是可以的,但对于 wildfly 没有意义)。

我们能够从 Adob​​e 找到针对 Coldfusion 2018 的特定文档 (https://helpx.adobe.com/it/coldfusion/installing/coldfusion-2018-install-jee-configuration.html)。 与标准相比,设置的数量非常少!:

-Djava.locale.providers=COMPAT,SPI
-Dcoldfusion.disablejsafe=true
-Djdk.attach.allowAttachSelf=true
-Djdk.serialFilter= !org.mozilla.**;!com.sun.syndication.**

我们无法找到 Coldfusion 2021(最新版本)的类似文档。

到目前为止,尝试从 Adob​​e 获得帮助一直没有产生有效的结果。

提前致谢

【问题讨论】:

【参考方案1】:

Adobe 不会帮助您支持通过 CommandBox 进行的安装,您需要与 Ortus Solutions 讨论这方面的问题。 CF Admin for Standard 中可用的每个 JVM 设置都不会显示在 CF Enterprise 的 UI 中。您正在寻找您拥有的实例(非 CB 版本)的 CF 安装文件夹,找到一个名为 jvm.config 的文件。

https://www.cfguide.io/coldfusion-administrator/server-settings-java-jvm/

在 ColdBox 中,您可以通过命令行设置所有内容或使用 server.json 文件进行相同的配置。

https://commandbox.ortusbooks.com/embedded-server/configuring-your-server/jvm-args

这是我在 Mac 上安装 CB 的示例,我在其中运行需要旧 JDK 的旧版本 CF,但我还设置了 heapSize


    "jvm": 
        "javaHome": "/Library/Java/JavaVirtualMachines/jdk1.7.0_15.jdk/Contents/Home",
        "heapSize": 1024
    

我的建议是

export your existing CF Admin settings 到 .car 文件 登录您的 ColdBox 服务器的 CF Admin 导入.car文件 调整您的 QA 服务器的所有设置(DSN 等) 进入命令行安装CFConfig插件 将所有 CF Admin 设置导出到 JSON 文件(文档中的说明) 将其保存到私人存储库或您的机密/密码保险库。 加入BoxTeam Slack,在这里您可以找到CommandBox 社区并提出更多问题。

【讨论】:

谢谢。恕我直言,Adobe 必须帮助在 JEE 安装中使用 Coldfusion。我们与 Adob​​e 签订了支持合同,与 Ortus 人员没有签订合同。我已经在 cfml slack 上提问并得到了一些答案,但老实说,我认为我不必用 Adob​​e 拥有所有知识来提供答案的问题来打扰他们。

以上是关于Coldfusion - JEE 安装 - JVM 参数哪个以及如何?的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu16.04 install eclipse-jee-oxygen-R-linux-gtk-x86_64.tar.gz

[简单到爆]eclipse-jee-neon的下载和安装

Eclipse Jee Oxygen安装svn插件

如何在没有任何 IDE 或 GlassFish 等任何其他附加软件的情况下安装和使用 JEE [重复]

eclipse-jee-mars-2-win32-x86_64安装activiti

Coldfusion插件在Sublime文本中