东方通web(TW8)单进程模式运行验证

东方通web(TW8)单进程模式运行验证

前言

近期验证tw8(版本8.0.7.0)时候,(环境是替换tomcat,war包部署的)发现启动运行命令:/AppHome/TongWeb8.0.7.0/bin/startd.sh时候,其实默认最小启动内存需要2G以上,这不符合容器环境下使用,因为启动直接先占用2G的内存,而且无法进行jvm内存限制,这非常不合理。

上面的废话总结原因如下:

  1. 资源浪费:在Kubernetes等容器环境中,固定2GB内存占用导致资源利用率低下
  2. 配置失效:已设置的JAVA_OPTS="-Xms512m -Xmx512m"环境变量未生效
  3. 弹性不足:无法根据实际需求动态调整JVM内存参数

根本原因分析

因此查看了一下后续TW8是怎么进一步调用服务的,执行ps -ef | grep java发现如下,挂不得我已设置默认JAVA_OPTS=-Xms512m -Xmx512m也是没生效,如下图:

image-20250926100705456

  1. 启动命令中硬编码了-Xms2048m -Xmx2048m参数
  2. JAVA_OPTS环境变量未被引用,导致配置完全失效
  3. 系统启动过程分为两个阶段:
    • startd.sh初始化环境 – TongWebMain实际启动JVM进程

方案验证

因为我暂时也没新TW8版本的二进制包,看了下tw8.0.7.0还是23年的,根据网上反馈已出到8.0.9.0+版本。因此会有此新模式。此模式会导致tongweb.xml失效。

image-20250926101344742

直接参数覆盖

通过显式指定JVM参数,覆盖内存配置优化:

java -Xms512m -Xmx1048m \
-Djava.rmi.server.hostname=127.0.0.1 \
-Djava.io.tmpdir=/AppHome/TongWeb8.0.7.0/domains/domain1/temp \
-Djava.security.egd=file:/dev/./urandom \
-server -Djava.awt.headless=true \
-Dtongweb.home=/AppHome/TongWeb8.0.7.0 \
-Dtongweb.base=/AppHome/TongWeb8.0.7.0/domains/domain1 \
-Dcatalina.home=/AppHome/TongWeb8.0.7.0 \
-Dcatalina.base=/AppHome/TongWeb8.0.7.0/domains/domain1 \
-XX:CICompilerCount=6 \
-javaagent:/AppHome/TongWeb8.0.7.0/version8.0.7.0/boot/tongweb-bootstrap.jar \
-classpath /AppHome/TongWeb8.0.7.0/version8.0.7.0/boot/tongweb-bootstrap.jar:/AppHome/TongWeb8.0.7.0/version8.0.7.0/tools/license/license-client-4.5.0.0.jar com.tongweb.main.TongWebMain start -Xms512m -Xmx512m

运行后发现运行配置是生效的

image-20250926104052111

image-20250926103952788

总结

以上只是我个人踩坑验证,因无法对接东方通技术,都是空谈,也反馈让技术那边提供最新安装包,如果有后续再看看新版吧,就这样吧。

image-20250926104803677

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇