日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

環(huán)境

主機(jī) ip 用途 軟件
web1 192.168.50.60 Nginx-1 httpd
web2 192.168.50.61 nginx-2 httpd
proxy 192.168.50.62 負(fù)載均衡器 nginx

負(fù)載均衡策略

nginx的負(fù)載均衡用于upstream模板定義的后端服務(wù)器列表中選取一臺(tái)服務(wù)器接收用戶的請(qǐng)求。一個(gè)基本的upstream模塊如下:

upstream [服務(wù)器組名稱]{
  server [IP地址]:[端口號(hào)];
  server [IP地址]:[端口號(hào)];
  ....
}

在upstream模塊配置完成后,要讓指定的訪問(wèn)反向代理到服務(wù)器列表,格式如下:

location ~ .*$ {
  index index.jsp index.html;
  proxy_pass http://[服務(wù)器組名稱];
}

這樣就完成了最基本的負(fù)載均衡,但是這并不能滿足實(shí)際需求。目前Nginx的upstream模塊支持6種方式的負(fù)載均衡策略(算法):

輪詢

最基本的配置方法,是upstream模塊默認(rèn)的負(fù)載均衡策略。每個(gè)請(qǐng)求會(huì)按時(shí)間順序平均分配到不同的后端服務(wù)器。有如下參數(shù):

fAIl_timeout與max_fails結(jié)合使用
max_fails在fail_timeout參數(shù)設(shè)置的時(shí)間內(nèi)最大失敗次數(shù)。如果在這個(gè)時(shí)間內(nèi),所有該服務(wù)器的請(qǐng)求都失敗了,那么認(rèn)為該服務(wù)器停機(jī)
fail_time服務(wù)器被認(rèn)為停機(jī)的時(shí)長(zhǎng),默認(rèn)10s(被認(rèn)為停機(jī)的服務(wù)器嘗試間隔?)
backup標(biāo)記該服務(wù)器為備用服務(wù)器。當(dāng)主服務(wù)器停止時(shí),請(qǐng)求會(huì)被發(fā)送到它這里
down標(biāo)記服務(wù)器永久停機(jī)

注意:1.down標(biāo)記的服務(wù)器會(huì)自動(dòng)剔除;2.缺省就是輪詢;3.此策略適合服務(wù)器配置無(wú)狀態(tài)且短平塊的服務(wù)使用

weight

  權(quán)重方式,在輪詢策略的基礎(chǔ)上指定輪詢的幾率。也可以認(rèn)為是在輪詢的基礎(chǔ)上新增了一個(gè)weight的參數(shù),此參數(shù)指定輪詢的幾率,值為number。upstream模塊配置模板如下:

upstream [服務(wù)器組名稱]{
  server [IP地址]:[端口號(hào)] weight=2;
  server [IP地址]:[端口號(hào)];
  ....
}

  在該例子中,沒(méi)有weight參數(shù)的服務(wù)器默認(rèn)為1,weight的數(shù)值與訪問(wèn)比例成正比,所有weight值的總和為一個(gè)循環(huán)單位,服務(wù)器自身的weight值為循環(huán)單位內(nèi)的輪詢次數(shù)。

  注意:1.權(quán)重越高分配到的請(qǐng)求越多;  2.此策略可以和least_conn策略、iphash策略結(jié)合使用;  3.此策略比較適合服務(wù)器硬件配置差距較大的情況。

ip_hash

  依據(jù)ip分配方式,指定負(fù)載均衡器按照基于客戶端IP的分配方式,這個(gè)方法確保了相同的客戶端請(qǐng)求一致發(fā)送到相同的服務(wù)器,以保證session會(huì)話。這樣每個(gè)訪客都固定訪問(wèn)一個(gè)后端服務(wù)器,可以解決session不能跨服務(wù)器的問(wèn)題。upstream模塊配置模板如下:

upstream [服務(wù)器組名稱]{
  ip_hash;
  server [IP地址]:[端口號(hào)] weight=2;
  server [IP地址]:[端口號(hào)];
  ....
}

  注意:1.nginx1.3.1之前的版本不能在ip_hash中使用權(quán)重(weight);2..ip_hash不能與backup同時(shí)使用;3.此策略適合有狀態(tài)服務(wù)的程序,比如session;4.當(dāng)有服務(wù)器需要剔除,必須手動(dòng)down掉。

least_conn

  最少連接方式,把請(qǐng)求發(fā)給鏈接數(shù)最少的后端服務(wù)器。輪詢是把請(qǐng)求平均分配給各個(gè)后端,使它們的負(fù)載大致相同。但是,有些請(qǐng)求占用的時(shí)間很長(zhǎng),會(huì)導(dǎo)致其所在的后端負(fù)載較高。這種情況下,least_conn這種方式就可以達(dá)到更好的負(fù)載均衡效果。upstream模塊配置模板如下:

upstream [服務(wù)器組名稱]{
  least_conn;
  server [IP地址]:[端口號(hào)] weight=2;
  server [IP地址]:[端口號(hào)];
  ....
}

  注意:此策略適合請(qǐng)求處理時(shí)間長(zhǎng)短不一造成的服務(wù)器過(guò)載情況。

fair

  響應(yīng)時(shí)間方式,按照服務(wù)器端的響應(yīng)時(shí)間來(lái)分配請(qǐng)求,響應(yīng)時(shí)間短的優(yōu)先分配。upstream模塊配置模板如下:

upstream [服務(wù)器組名稱]{
  server [IP地址]:[端口號(hào)] weight=2;
  server [IP地址]:[端口號(hào)];
  ....
  fair;
}

注意:需要安裝第三方插件。

url_hash

  url分配方式,按訪問(wèn)url的hash結(jié)果來(lái)分配請(qǐng)求,使每個(gè)url定向到同一個(gè)后端服務(wù)器,要配合緩存命中來(lái)使用。同一個(gè)資源多次請(qǐng)求可能會(huì)到達(dá)不同的服務(wù)器上,導(dǎo)致不必要的多次下載,緩存命中率不高,以及一些資源時(shí)間的浪費(fèi)。而使用url_hash,可以使得同一個(gè)url(也就是同一個(gè)資源請(qǐng)求)會(huì)到達(dá)同一臺(tái)服務(wù)器,一旦緩存住了資源,再次收到請(qǐng)求,就可以在緩存中讀取。upstream模塊配置模板如下:

upstream [服務(wù)器組名稱]{
  hash $request_uri;
  server [IP地址]:[端口號(hào)] weight=2;
  server [IP地址]:[端口號(hào)];
  ....
}

注意:1.需要安裝第三方插件;2.uri,是i,不是小寫的L。

安裝proxy

proxy 機(jī)器 編譯安裝nginx

工具包安裝

wget http://nginx.org/download/nginx-1.14.2.tar.gz
yum -y install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel

解壓安裝

tar xf nginx-1.14.1.tar.gz -C /usr/local/src/
cd /usr/local/src/nginx-1.14.1/
./configure --prefix=/usr/local/nginx 
--with-http_dav_module 
--with-http_stub_status_module 
--with-http_addition_module 
--with-http_sub_module 
--with-http_flv_module 
--with-http_mp4_module
make && make install
echo $?

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

    --with-http_dav_module,啟用ngx_http_dav_module支持(增加PUT,DELETE,MKCOL:創(chuàng)建集合,COPY和MOVE方法)默認(rèn)情況下為關(guān)閉,需編譯開啟;
    --with-http_stub_status_module,啟用ngx_http_stub_status_module支持(獲取nginx自上次啟動(dòng)以來(lái)的工作狀態(tài));
    --with-http_addition_module,啟用ngx_http_addition_module支持(作為一個(gè)輸出過(guò)濾器,支持不完全緩沖,分部分響應(yīng)請(qǐng)求);
    --with-http_sub_module,啟用ngx_http_sub_module支持(允許用一些其他文本替換nginx響應(yīng)中的一些文本);
    --with-http_flv_module,啟用ngx_http_flv_module支持(提供尋求內(nèi)存使用基于時(shí)間的偏移量文件);
    --with-http_mp4_module,啟用對(duì)mp4文件支持(提供尋求內(nèi)存使用基于時(shí)間的偏移量文件)。

生成nginx 用戶

useradd -M -s /sbin/nologin nginx

啟動(dòng)和自啟

/usr/local/nginx/sbin/nginx
echo /usr/local/nginx/sbin/nginx >> /etc/rc.local
chmod +x /etc/rc.d/rc.local

如果防火墻是開啟的記得添加端口號(hào)firewall-cmd --permanent --zone=public --add-port=80/tcp && firewall-cmd --reload

conf 文件修改

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
vim /usr/local/nginx/conf/nginx.conf
worker_processes 1;
events {
  worker_connections 1024;
}
http {
  include       mime.types;
  default_type Application/octet-stream;
  sendfile       on;
  keepalive_timeout 65;
  server_tokens off;

upstream htmlservers {
server 192.168.50.60:80 weight=1;
server 192.168.50.61:80 weight=1;
}
upstream phpservers{
server 192.168.50.60:80 weight=1;
server 192.168.50.61:80 weight=1;
}
upstream picservers {
server 192.168.50.60:80 weight=1;
server 192.168.50.61:80 weight=1;
}
include vhosts/*.conf;
}

vim /usr/local/nginx/conf/vhosts/upstream.conf

server {
listen       80;
server_name localhost;
location / {
if ($request_uri ~* .html$){
  proxy_pass http://htmlservers;
}
if ($request_uri ~* .php$){
proxy_pass http://phpservers;
}
proxy_pass http://picservers;
}
}

web服務(wù)器安裝

安裝

yum install httpd -y

設(shè)置主頁(yè)文件并啟動(dòng)

echo web1 > /var/www/html/index.htmlecho web2 > /var/www/html/index.html echo php1 > /var/www/html/index.phpecho php2 > /var/www/html/index.phpecho jsp1 > /var/www/html/index.jspecho jsp2 > /var/www/html/index.jspsystemctl start httpd

如果防火墻是開啟的,記得添加端口號(hào)firewall-cmd --permanent --zone=public --add-port=80/tcp && firewall-cmd --reload firewall-cmd --permanent --zone=public --add-port=80/tcp && firewall-cmd --reload

分享到:
標(biāo)簽:Nginx
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定