nginx實現反向代理和負載據均衡

因爲是在單機環境模擬多個服務器的環境,因此經過多個tomcat開放不一樣的端口來實現html

一.反向代理

目標:(不加端口號時默認訪問80端口,因此在一臺服務器上實現兩個域名的訪問就要作反向代理)nginx

1.建立tomcats目錄apache

mkdir /usr/local/tomcats
tar -zxf apache-tomcat-7.0.47.tar.gz 
mv apache-tomcat-7.0.47 /usr/local/tomcats/tomcat1
cp -r tomcat1/ tomcat2
...

2.修改端口vim

涉及到三個端口的修改:HTTP默認端口8080 遠程服務器端口8005 AJP端口8009tomcat

vim conf/server.xml 
分別修改成8081  8006  8009
...

3.經過修改host實現模擬不一樣域名的訪問服務器

這裏有個小工具switchhsot能夠方便的進行修改
(將ip+端口   分別與域名關聯)

4.修改nginx配置負載均衡

cd /usr/local/nginx/conf
vim nginx.conf

 upstream tomcatserver1{

server 47.94.14.93:8081;

   }
 upstream tomcatserver2{

    server 47.94.14.93:8082;

   } 
   server {
    listen       80;
    server_name  8081.kaka.com;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        proxy_pass http://tomcatserver1;
        index  index.html index.htm;
    }
}
  server {
    listen       80;
    server_name  8082.kaka.com;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        proxy_pass http://tomcatserver2;
        index  index.html index.htm;
    }
}

5.訪問前面設置的域名,發現都能訪問到工具

二.負載均衡

  1. 同一個域名下,一臺服務器已經不能知足咱們的需求,就須要多臺服務器,把多個請求分配給不一樣的服務器來完成,減輕服務器壓力,這時候就須要負載均衡

2.配置:性能

(1)只須要在上面的反向代理的upstream中添加相應的server便可實現平均分配

clipboard.png

(2)有時候咱們負載均衡服務器的性能不一樣,因此分配請求的權重不一樣

clipboard.png

相關文章
相關標籤/搜索