您好,登錄后才能下訂單哦!
下文給大家帶來在centos7上如何實現基于nginx+tomcat的負載均衡,希望能夠給大家在實際運用中帶來一定的幫助,負載均衡涉及的東西比較多,理論也不多,網上有很多書籍,今天我們就用億速云在行業內累計的經驗來做一個解答。
通常情況下,一個Tomcat站點由于可能出現單點故障及無法應付過多客戶復雜多樣的請求等問題,不能單獨應用于生產環境下,所以需要一套更可靠的解決方案來完善web站點架構。
nginx是一款優秀的http云服務器軟件,它能夠支持多達50000個并發連接數的響應,擁有強大的靜態資源處理能力,運行穩定,并且內存,CPU等系統資源消耗非常低。目前有很多大型網站都應用nginx作為后端網站程序的反向代理及負載均衡。
本案例我們將已nginx作為負載均衡器,反向代理,tomcat作為節點服務器。
主機 | IP地址 |
---|---|
nginx服務器 | 192.168.177.132 |
tomcat服務器1 | 192.168.177.145 |
tomcat服務器2 | 192.168.177.135 |
# tar xf apache-tomcat-8.5.23.tar.gz /opt
# tar xf jdk-8u144-linux-x64.tar.gz /opt
//解壓安裝包
# mv apache-tomcat-8.5.23/ /usr/local/tomcat8
# mv jdk1.8.0_144/ /usr/local/java
//便于管理
# vim /etc/profile //設置環境變量
export JAVA_HOME=/usr/local/java
export JRE_HOME=/usr/local/java/jre
export PATH=$PATH:/usr/local/java/bin
export CLASSPATH=./:/usr/local/java/lib:/usr/local/java/jre/lib
# source /etc/profile
# java -version //查看java版本信息
java version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)
# ln -s /usr/local/tomcat8/bin/startup.sh /usr/bin/tomcatup
# ln -s /usr/local/tomcat8/bin/shutdown.sh /usr/bin/tomcatdown
//放在/usr/bin下便于識別命令
# tomcatup //開啟服務
# netstat -anpt | grep 8080 //查看tomcat端口是否開啟
# http://192.168.177.145:8080/ //測試默認測試頁是否正常顯示(節點)
# vim /usr/local/tomcat8/webapps/ROOT/index.jsp //修改默認網頁內容(站點)
<h3>this is 145!!!</h3>
==注==:兩臺tomcat服務器配置完全一樣
# tar zxvf nginx-1.12.0.tar.gz -C /opt
# yum install pcre-devel zlib-devel gcc gcc-c++ -y //安裝環境包
# useradd -M -s /sbin/nologin nginx //創建管理nginx的用戶
# cd /opt/nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \ //指定運行的用戶
--group=nginx \ //指定運行的組
--with-http_stub_status_module //啟用統計狀態
# make && make install
# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //讓系統識別命令
# nginx -t //驗證語法
# cd /etc/init.d/
vim nginx
#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
# chmod +x /etc/init.d/nginx //執行權限
# chkconfig --add nginx
# chkconfig --level 35 nginx on
# service nginx stop
# netstat -ntap | grep 80
# service nginx start
# netstat -ntap | grep 80
# vim /usr/local/nginx/conf/nginx.conf
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
添加:
upstream tomcat_server { #添加
server 192.168.177.145:8080 weight=1; //權重相同,頁面會反復在以下兩個頁面間來回切換
server 192.168.177.135:8080 weight=1;
}
server {
listen 80;
.....省略
location / {
# root html;
# index index.html index.htm;
proxy_pass http://tomcat_server; //添加一行 ,把nginx的默認站點通過 proxy_pass方法代理到設定好的tomcat_server負載均衡服務器上
}
# service nginx restart //啟用nginx服務//
看了以上關于在centos7上如何實現基于nginx+tomcat的負載均衡,如果大家還有什么地方需要了解的可以在億速云行業資訊里查找自己感興趣的或者找我們的專業技術工程師解答的,億速云技術工程師在行業內擁有十幾年的經驗了。億速云官網鏈接www.neiyidaogou.com
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。