成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

手把手教你,使用Nginx搭配Tomcat實(shí)現(xiàn)負(fù)載均衡!

開(kāi)發(fā) 前端
傳統(tǒng)模型下,一個(gè)項(xiàng)目部署在一臺(tái)tomcat上,這個(gè)時(shí)候,假如tomcat因?yàn)榉?wù)器資源不夠,突然掛機(jī)了,那么整個(gè)項(xiàng)目就無(wú)法使用,給客戶(hù)造成的損失可想而知!

一、背景介紹

Nginx(發(fā)音同engine x)是異步框架的網(wǎng)頁(yè)服務(wù)器,也可以用作反向代理、負(fù)載平衡器和HTTP緩存。該軟件由伊戈?duì)枴べ愃饕騽?chuàng)建并于2004年首次公開(kāi)發(fā)布。2011年成立同名公司以提供支持。2019年3月11日,Nginx公司被F5 Networks以6.7億美元收購(gòu)。

傳統(tǒng)模型下,一個(gè)項(xiàng)目部署在一臺(tái)tomcat上,這個(gè)時(shí)候,假如tomcat因?yàn)榉?wù)器資源不夠,突然掛機(jī)了,那么整個(gè)項(xiàng)目就無(wú)法使用,給客戶(hù)造成的損失可想而知!

圖片圖片

Nginx就可以避免單臺(tái)服務(wù)如果掛機(jī),依然能保證服務(wù)正常使用,當(dāng)我們把項(xiàng)目war包部署到三臺(tái)服務(wù)器上時(shí),即使A、B服務(wù)器都掛了,依然能夠通過(guò)服務(wù)器C訪(fǎng)問(wèn)項(xiàng)目資源!

圖片圖片

好了,啥也不說(shuō)了,直接開(kāi)始干!

二、Nginx安裝

2.1、下載Nginx安裝包

直接訪(fǎng)問(wèn)Nginx官網(wǎng)(https://nginx.org),下載對(duì)應(yīng)的安裝包,本次案例選擇的是nginx-1.6.3.tar.gz版本,安裝環(huán)境是centos7。

圖片圖片

上傳到對(duì)應(yīng)服務(wù)器的文件夾或者直接在服務(wù)器端使用wget命令

#下載nginx-1.6.3.tar.gz
wget -c https://nginx.org/download/nginx-1.6.3.tar.gz

如果出現(xiàn)如下信息:

-bash: wget: command not found

提示wget命令找不到,使用如下命令,進(jìn)行安裝,之后再次執(zhí)行上述下載命令

yum install wget

2.2、安裝Nginx

在按照Nginx之前,需要安裝相應(yīng)運(yùn)行庫(kù)環(huán)境,操作如下 1)安裝gcc 環(huán)境

yum install gcc-c++

2) 安裝PCRE依賴(lài)庫(kù)

yum install -y pcre pcre-devel

3)安裝zlib 依賴(lài)庫(kù)

yum install -y zlib zlib-devel

4) 安裝OpenSSL安全套接字層密碼庫(kù)

yum install -y openssl openssl-devel

5)解壓Nginx 安裝完以上環(huán)境庫(kù)之后,接著進(jìn)行解壓操作

#解壓文件夾
tar -zxvf nginx-1.6.3.tar.gz

6)執(zhí)行配置命令 cd進(jìn)入文件夾

cd nginx-1.6.3

執(zhí)行配置命令

./configure

如下圖,表示執(zhí)行配置成功!

圖片圖片

當(dāng)然,也可以執(zhí)行自定義配置文件,例如:

./configure \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

注意:臨時(shí)文件目錄指定為/var/temp/nginx,需要在/var下創(chuàng)建temp及nginx目錄 7)執(zhí)行編譯安裝命令

make install

8)查找安裝路徑

whereis nginx

結(jié)果如下:

圖片圖片

9)啟動(dòng)服務(wù) 進(jìn)入nginx的目錄

cd /usr/local/nginx/sbin/

圖片圖片

執(zhí)行如下命令:

#啟動(dòng)
./nginx

#停止,此方式相當(dāng)于先查出nginx進(jìn)程id再使用kill命令強(qiáng)制殺掉進(jìn)程
./nginx -s stop

#停止,此方式停止步驟是待nginx進(jìn)程處理任務(wù)完畢進(jìn)行停止
./nginx -s quit

#重新加載配置文件,Nginx服務(wù)不會(huì)中斷
./nginx -s reload

10)修改配置文件 比如,修改端口號(hào),默認(rèn)端口號(hào)為80,咱們這里改成81;

進(jìn)入配置文件夾

cd /usr/local/nginx/conf

備份原始配置文件

cp nginx.conf nginx.conf.back

編輯nginx.conf配置文件

vim nginx.conf

圖片圖片

找到server中的listen,修改端口號(hào)為81

圖片圖片

啟動(dòng)服務(wù)

./nginx

查看nginx進(jìn)程

ps -ef|grep nginx

圖片圖片

到此,nginx安裝基本完成,直接在瀏覽器上訪(fǎng)問(wèn)服務(wù)器地址ip:81,就可以進(jìn)入頁(yè)面

圖片圖片

三、Tomcat安裝

直接訪(fǎng)問(wèn)tomcat官網(wǎng)(http://tomcat.apache.org/),下載對(duì)應(yīng)的安裝包,本次案例選擇的是apache-tomcat-8.5.45.tar.gz版本,本次安裝環(huán)境是centos7。

圖片圖片

上傳到對(duì)應(yīng)的服務(wù)器文件夾中,之后解壓文件夾

tar -zxvf apache-tomcat-8.5.40.tar.gz

重新命名

mv apache-tomcat-8.5.40 tomcat-1

同樣的,再次解壓安裝包,命名為tomcat-2

mv apache-tomcat-8.5.40 tomcat-2

1)修改tomcat端口號(hào)將tomcat1的http端口設(shè)置為8080,將tomcat2的http端口設(shè)置為8081。

進(jìn)入tomcat的conf文件夾,修改server.xml

vim server.xml

修改SHUTDOWN、HTTP/1.1、redirectPort、AJP/1.3端口,使其錯(cuò)開(kāi),避免重啟的時(shí)候,報(bào)端口被占用問(wèn)題

tomcat1的SHUTDOWN、HTTP/1.1、redirectPort、AJP/1.3設(shè)置如下:

<!--關(guān)閉服務(wù)端口-->
<Server port="9005" shutdown="SHUTDOWN">
...
<!--HTTP服務(wù)端口8080,跳轉(zhuǎn)端口9443-->
<Connector port="8080" protocol="HTTP/1.1"
               cnotallow="20000"
               redirectPort="9443" />
               
<!--AJP服務(wù)端口-->
<Connector port="9009" protocol="AJP/1.3" redirectPort="9443" />
...
</Server>

tomcat2的SHUTDOWN、HTTP/1.1、redirectPort、AJP/1.3設(shè)置如下:

<!--關(guān)閉服務(wù)端口-->
<Server port="10005" shutdown="SHUTDOWN">
...
<!--HTTP服務(wù)端口8081-->
<Connector port="8081" protocol="HTTP/1.1"
               cnotallow="20000"
               redirectPort="10443" />
               
<!--AJP服務(wù)端口-->
<Connector port="10009" protocol="AJP/1.3" redirectPort="10443" />
...
</Server>

2)啟動(dòng)服務(wù) 分別進(jìn)入tomcat1、tomcat2的bin文件夾,執(zhí)行腳本,啟動(dòng)服務(wù)

sh startup.sh

查看服務(wù)是否啟動(dòng)成功

ps -ef|grep tomcat

圖片圖片

說(shuō)明已經(jīng)啟動(dòng)成功了,可以直接在瀏覽器上分別輸入ip:8080、ip:8081進(jìn)行訪(fǎng)問(wèn)了,結(jié)果如下:

圖片圖片

3)編寫(xiě)Html 為了便于測(cè)試,我們創(chuàng)建一個(gè)html格式的頁(yè)面,文件命名為index.html,內(nèi)容如下:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        Hello server!
    </body>
</html>

進(jìn)入tomcat的webapps文件夾,刪除ROOT文件夾里面的東西,創(chuàng)建index.html文件;

在tomcat-1中,index內(nèi)容如下:

圖片圖片

在tomcat-2中,index內(nèi)容如下:

圖片圖片

4)測(cè)試 創(chuàng)建好了之后,分別在瀏覽器上訪(fǎng)問(wèn)ip:8080、ip:8081;

ip:8080,結(jié)果如下:

圖片圖片

ip:8081,結(jié)果如下:

圖片圖片

四、Nginx實(shí)現(xiàn)負(fù)載均衡

進(jìn)入Nginx的配置文件夾

cd /usr/local/nginx/conf

編輯nginx.conf配置文件

vim nginx.conf

主要新增upstream集群配置點(diǎn),配置如下:

worker_processes  1;

events {
    worker_connections  1024;
}  

http {  
    include       mime.types;
    
    default_type  application/octet-stream;
    
    sendfile        on;

    keepalive_timeout  65;

    gzip  on;

     #服務(wù)器的集群(這個(gè)就是我們要配置的地方)
     #test.com:服務(wù)器集群名字,自定義
    upstream  test.com {
        #服務(wù)器配置   weight是權(quán)重的意思,權(quán)重越大,分配的概率越大。
        #127.0.0.1:8080、127.0.0.1:8081對(duì)應(yīng)tomcat服務(wù)器地址
        server    127.0.0.1:8080  weight=1;
        server    127.0.0.1:8081  weight=2;
    }

    server {  
        listen       81;
        server_name  localhost;

    location / {
    ·       #配置反向代理地址
            proxy_pass http://test.com;
            proxy_redirect default;
        }


        error_page   500 502 503 504  /50x.html;  
        location = /50x.html {  
            root   html;  
        }  
    }  
}

參數(shù)說(shuō)明:

  • worker_processes:工作進(jìn)程的個(gè)數(shù),一般與計(jì)算機(jī)的cpu核數(shù)一致
  • worker_connections:?jiǎn)蝹€(gè)進(jìn)程最大連接數(shù)(最大連接數(shù)=連接數(shù)*進(jìn)程數(shù))
  • include:文件擴(kuò)展名與文件類(lèi)型映射表
  • default_type:默認(rèn)文件類(lèi)型
  • sendfile :開(kāi)啟高效文件傳輸模式,sendfile指令指定nginx是否調(diào)用sendfile函數(shù)來(lái)輸出文件,對(duì)于普通應(yīng)用設(shè)為 on,如果用來(lái)進(jìn)行下載等應(yīng)用磁盤(pán)IO重負(fù)載應(yīng)用,可設(shè)置為off,以平衡磁盤(pán)與網(wǎng)絡(luò)I/O處理速度,降低系統(tǒng)的負(fù)載。注意:如果圖片顯示不正常把這個(gè)改成off。
  • keepalive_timeout:長(zhǎng)連接超時(shí)時(shí)間,單位是秒
  • upstream:服務(wù)器的集群配置點(diǎn)

配置好之后,進(jìn)入/usr/local/nginx/sbin/ 文件夾,重新刷新配置文件

./nginx -s reload

最后,訪(fǎng)問(wèn)Nginx服務(wù)器所在ip:81地址,多次刷新,看看效果:

圖片圖片

圖片圖片

至此,Nginx與Tomcat搭配實(shí)現(xiàn)負(fù)載均衡已經(jīng)配置完了,是不是很酷!

趕緊去試試吧!

責(zé)任編輯:武曉燕 來(lái)源: 潘志的技術(shù)筆記
相關(guān)推薦

2021-07-14 09:00:00

JavaFX開(kāi)發(fā)應(yīng)用

2025-05-07 00:31:30

2023-04-26 12:46:43

DockerSpringKubernetes

2022-12-07 08:42:35

2021-03-12 10:01:24

JavaScript 前端表單驗(yàn)證

2020-05-15 08:07:33

JWT登錄單點(diǎn)

2021-08-02 07:35:19

Nacos配置中心namespace

2011-01-06 10:39:25

.NET程序打包

2009-11-09 14:57:37

WCF上傳文件

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2021-04-02 10:01:00

JavaScript前端Web項(xiàng)目

2011-04-21 10:32:44

MySQL雙機(jī)同步

2021-01-19 09:06:21

MysqlDjango數(shù)據(jù)庫(kù)

2022-07-27 08:16:22

搜索引擎Lucene

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2022-07-22 12:45:39

GNU

2021-12-15 08:49:21

gpio 子系統(tǒng)pinctrl 子系統(tǒng)API

2022-10-30 10:31:42

i2ccpuftrace
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产在线观看一区二区三区 | 国产色婷婷精品综合在线手机播放 | 成人精品一区二区三区 | 欧美一区二区三区在线播放 | 亚洲欧美在线观看 | 亚洲高清在线观看 | 成人av观看| 国产精品久久久久久久久免费樱桃 | 日本在线免费 | 97精品国产97久久久久久免费 | 欧美日韩在线综合 | 91av在线电影 | 在线视频成人 | 亚洲天堂999| 亚洲成人一区二区 | 国产精品美女久久久久久久网站 | 在线国产一区 | 一区二区三区免费在线观看 | 少妇一级淫片免费播放 | 欧美黑人激情 | 色www精品视频在线观看 | 久久综合亚洲 | 91就要激情 | 视频一区二区在线观看 | av福利网 | 精品久久电影 | 国产欧美在线视频 | 日韩高清www| 亚洲精品一区二区在线观看 | 国产精品视频中文字幕 | 日韩中文字幕在线观看 | 欧美成人激情 | 成人日韩 | 国产传媒毛片精品视频第一次 | 美女激情av | 国产免费观看一区 | 亚洲综合色视频在线观看 | www.4hu影院| 亚洲 欧美 另类 日韩 | a级毛片国产 | 国产日韩精品视频 |