我有一个在 ubuntu 上运行的基于 java 的应用程序,为了从服务器启动并保持其活动,我编写了一个 upstart 脚本。
问题是新贵服务启动,它消耗100%的cpu,这个应用程序有一堆线程,只有一个是高的。
请注意,从命令行启动 java 应用程序不会出现此问题。
description "adworker upstart service"
#umask 0007
respawn limit 15 5
oom never
start on (local-filesystems
and net-device-up IFACE!=lo)
stop on shutdown
respawn
pre-start script
. /etc/adworker.conf
rm -rf $LOG_DIR
mkdir -p -m0755 $LOG_DIR
chown $USER:$GROUP $LOG_DIR
end script
script
. /etc/adworker.conf
OPTS="-Djava.ext.dirs=lib"
chdir $APP_DIR
JAVA_OPTS="-Xms${XMS} -Xmx${XMX} -Xss${XSS} $OPTS"
exec su -s /bin/sh -c "/usr/bin/java ${JAVA_OPTS} -classpath ${CP} ${MAIN_CLASS}" $USER > ${LOG_DIR}/adworker.stdio 2>&1
end script
post-stop script
end script
谢谢你。