Coldfusion - JEE 安装 - JVM 参数哪个以及如何?
Posted
技术标签:
【中文标题】Coldfusion - JEE 安装 - JVM 参数哪个以及如何?【英文标题】:Coldfusion - JEE Installation - JVM Arguments which and how? 【发布时间】:2021-12-09 15:43:14 【问题描述】:我们正在尝试改变我们管理 QA 环境的方式。 到目前为止,我们已经使用 Adobe Installer 安装了 Coldfusion,该安装程序安装了修改后的 Tomcat。
我们希望使用 CommandBox Tool 管理 QA 服务器,该工具使用 war 文件以 JEE 安装模式安装 Coldfusion,但任何受支持的 JEE 应用程序服务器的情况都类似。 (EAP、Wildfly、Tomcat)。
我们在 JEE 安装模式下使用 Coldfusion 的经验很少,因此出现了一些关于 JVM 设置的问题。
在我们使用 Adobe 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 没有意义)。
我们能够从 Adobe 找到针对 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(最新版本)的类似文档。
到目前为止,尝试从 Adobe 获得帮助一直没有产生有效的结果。
提前致谢
【问题讨论】:
【参考方案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。我们与 Adobe 签订了支持合同,与 Ortus 人员没有签订合同。我已经在 cfml slack 上提问并得到了一些答案,但老实说,我认为我不必用 Adobe 拥有所有知识来提供答案的问题来打扰他们。以上是关于Coldfusion - JEE 安装 - JVM 参数哪个以及如何?的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu16.04 install eclipse-jee-oxygen-R-linux-gtk-x86_64.tar.gz
如何在没有任何 IDE 或 GlassFish 等任何其他附加软件的情况下安装和使用 JEE [重复]