利用Nginx作負載均衡

   最近正在研究Nginx,Nginx做爲反向代理服務器,能夠對Web服務器提供加速,而且具備負載均衡的功能。html

     首先我要在官網下載Nginx(http://nginx.org/en/download.html),目前最新穩定的版本爲1.0版本,Linux和Windows版本我都下下來了,在兩臺服務器上作網站負載均衡。nginx

在Windows版本中,將壓縮包進行解壓,執行命令:瀏覽器

start nginx

這樣就能夠啓動nginx服務了。而執行命令:緩存

nginx -s stop

能夠中止服務。服務器

這是我在192.168.3.82的IIS服務器上,添加兩個站點:負載均衡

image

這兩個站點分別添加兩個文件index.html,兩個文件內容分別顯示:「這是站點1」,「這是站點2」。網站

在nginx.conf的配置文件調整相關配置:spa

upstream site {
server 192.168.3.82:8040;
server 192.168.3.82:8041;
}
 
server {
listen 8080;
server_name 192.168.3.82;
 
#charset koi8-r;
 
#access_log logs/host.access.log main;
 
location / {
root html;
index index.html index.htm;
proxy_pass http://site;
 
}

而後保存文件便可。代理

接着在運行一次start nginx,當你不斷刷新頁面的時候,瀏覽器上就會來回切換這兩個站點。code

image

image

能夠發現這裏切換是按照1:1的方式來回切換,經過配置文件你能夠站點的權重:

upstream  site { 
     server   192.168.3.82:8040 weight=2;
     server   192.168.3.82:8041 weight=1;
}


weight即爲對應網站的權重。 

 

在Linux中,安裝Nginx比較麻煩一些,由於需附加安裝一些包,如gzip,pcre等等。具體能夠查看:http://www.cnblogs.com/yuanermen/archive/2011/03/31/2000993.html

 

能夠在Linux上部署你的站點,好比站點3,若是你要把Windows服務器做爲反向代理服務器,那麼在upstream site添加一個新的站點:

upstream  site { 
     server   192.168.3.82:8040 weight=2;
     server   192.168.3.82:8041 weight=1;
     server   192.168.3.90:8080;
}

你還能夠利用Nginx對反向代理服務器上對靜態文件(如JPG,GIF,CSS,JS等等)進行緩存,這樣當你須要從Web服務器去請求靜態資源的時候,能夠直接從反向代理服務器上取得本地的一個資源,這樣減小了對Web服務器的壓力。具體能夠查看:http://www.cnblogs.com/daizhj/archive/2009/11/03/1595292.html

相關文章
相關標籤/搜索