Heim  >  Artikel  >  Backend-Entwicklung  >  Tutorial zur Konfiguration des Nginx-Tomcat-Clusters, um einen reibungslosen Neustart des Dienstes zu erreichen

Tutorial zur Konfiguration des Nginx-Tomcat-Clusters, um einen reibungslosen Neustart des Dienstes zu erreichen

WBOY
WBOYOriginal
2016-08-08 09:22:20892Durchsuche

Mit zunehmender Anzahl von Codebenutzern nimmt die Abhängigkeit von Hochverfügbarkeitsdiensten von Tag zu Tag zu. Single-Point-Dienste können die Auswirkungen eines Neustarts auf Benutzer nicht vermeiden. Daher wird die folgende Lösung übernommen Schmerzloser Neustart.

nginx+2tomcat(8080,8081)

Idee: Es gibt nur einen Tomcat mit normalem Dienst. Wenn Sie den anderen neu starten, führen Sie nginx -s aus Neu laden und schließlich den Tomcat des vorherigen Dienstes schließen.

Der Shell-Code lautet wie folgt:

nginx_root_path="/usr/local/nginx/"
nginx_c/vhost/"
tomcat_running_8080_port="8080"
tomcat_running_8081_port ="8081 "
tomcat_startup_path="bin/startup.sh"
tomcat_shutdown_path="bin/shutdown.sh"
cnt=`ps -ef|grep "apache-tomcat-6.0.39_${tomcat_running_8080_port }"| wc -l`
if [ "${cnt}" == "0" ] ;then
stop_tomcat_port="${tomcat_running_8081_port}"
start_tomcat_port="${tomcat_running_8080_port}"
mv_start_c> mv_stop_c> url="http://www.zuidaima.com:8080/share.htm"
else
stop_tomcat_port="${tomcat_running_8080_port}"
start_tomcat_port="${tomcat_running_8081_port}"
mv_start_c> mv_stop_c> url="http://www.zuidaima.com:8081/share.htm"
fi
echo "start tomcat ${start_tomcat_port}"
mv ${mv_start_conf_path} .bak $ {mv_start_conf_path}.bak
/usr/local/apache-tomcat-6.0.39_${start_tomcat_port}/${tomcat_startup_path} 🎜>rm share.htm -v
curl -v "${url}" -o "share.htm"
sleep 10
echo "nginx reload"
${nginx_root_path}sbin/nginx -s reload
sleep 2
echo „stop tomcat ${stop_tomcat_port}“
/usr/local/apache-tomcat-6.0.39_${stop_tomcat_port}/${tomcat_shutdown_path}
sleep 10
ps -ef|grep tomcat-6.0.39_${stop_tomcat_port}|awk '{print $2}'|xargs kill

Das Skript ist etwas überflüssig, aber die Funktion ist kein Problem. Sie können es optimieren den Code selbst.

Die relevanten Screenshots lauten wie folgt:

Der entscheidende Punkt besteht darin, die Include-Direktive von Nginx zu verwenden, um nur die erforderlichen Conf-Dateien zu laden:

关键点在利用了nginx的include指令实现只加载需要的conf文件:<br>

include /usr/local/nginx/conf/vhost/*.conf;
Das Obige stellt die Nginx-Tomcat-Cluster-Konfiguration vor, um einen reibungslosen Neustart des Dienstes zu erreichen, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die an PHP-Tutorials interessiert sind.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn