
私は nginx の背後で tomcat サーバーを管理しています。tomcat には複数の Web アプリケーションがあります。私の OS は Digital Ocean 上の Ubuntu 18.04LTS です。
すべて正常に動作していましたが、突然 1 つの問題が発生しました。Tomcat は正常に動作していますが、Web アプリケーションが動作していません。また、サーバー ログにはライブラリが見つからないというメッセージが表示されますが、まだ存在しています。
それで、何が問題なのか誰か教えてくれませんか?
または、誰かが私に完璧な/実稼働レベルserver.xml
とtomcat8.service
構成ファイルを提案してください。
サーバー.xml- 仮想ウェブアプリの1つ
<Service name="tm_xxx">
<Connector port="7072" maxHttpHeaderSize="7192"
maxThreads="1000" minSpareThreads="45" maxSpareThreads="100"
enableLookups="false" redirectPort="9443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<Connector port="7172"
enableLookups="false" redirectPort="9043" protocol="AJP/1.3" />
<Engine name="tm_LB2" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="localhost" appBase="tm_xxx"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Valve className="org.apache.catalina.valves.ErrorReportValve"
showReport="false"
showServerInfo="false" />
</Host>
</Engine>
</Service>
tomcat8.サービス
[Unit]
Documentation=man:systemd-sysv-generator(8)
SourcePath=/etc/init.d/tomcat8
Description=LSB: Start Tomcat.
Before=multi-user.target
Before=multi-user.target
Before=multi-user.target
Before=graphical.target
After=remote-fs.target
After=network-online.target
After=nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
Restart=always
RestartUSec=50ms
TimeoutStartSec=1min
TimeoutStopSec=1min
TimeoutSec=1min
IgnoreSIGPIPE=no
KillMode=process
GuessMainPID=no
RemainAfterExit=yes
SuccessExitStatus=5 6
ExecStart=/etc/init.d/tomcat8 start
ExecStop=/etc/init.d/tomcat8 stop
SSはエラーcatlina.out
追伸: 私はここで何度も非常に悪い経験をしました(評判の良い人 5000 人未満)。回答したくない場合は、そのままにしておいてください。専門家に連絡したり、このような回答を投稿しないでください。問題があるため、十分な調査を行った後、ここに質問を投稿します。
編集 1: 前に言及し忘れたことがもう 1 つあります。 を介して新しいものをデプロイしgitlab runner
、その後、再ロードwebapps
のみを実行しています。Tomcat サービスは再起動していません。 の再ロードについては、ファイルwebapps
で言及しています。context.xml
答え1
アプリケーションの起動中に、Tomcat は( Debianoid の場合)、(通常、実行中の Tomcat が 1 つだけの場合)、およびアプリケーションごとのフォルダー内*.jar
のすべてのファイルをスキャンします。$CATALINA_HOME/lib
/usr/share/tomcat8/lib
$CATALINA_BASE/lib
/var/lib/tomcat8/lib
WEB-INF/lib
ログには、リストは表示できるが開くことができない jar ファイルがいくつかあることが示されています/var/lib/tomcat8/lib/lib
。私の推測では、これらはインストール中に誤って追加した、ぶら下がっているシンボリック リンクです。
注記: 一部の JDBC ドライバーなどを除き、アプリケーションでは 内のファイルは必要ありません$CATALINA_BASE/lib
。