【问题标题】:Coldfusion - JEE Installation - JVM Arguments which and how?Coldfusion - JEE 安装 - JVM 参数哪个以及如何?
【发布时间】: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 获得帮助一直没有产生有效的结果。

提前致谢

【问题讨论】:

    标签: coldfusion wildfly undertow commandbox


    【解决方案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 拥有所有知识来提供答案的问题来打扰他们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    相关资源
    最近更新 更多