真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

下文給大家?guī)?lái)如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。,希望能夠給大家在實(shí)際運(yùn)用中帶來(lái)一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書(shū)籍,今天我們就用創(chuàng)新互聯(lián)在行業(yè)內(nèi)累計(jì)的經(jīng)驗(yàn)來(lái)做一個(gè)解答。

成都創(chuàng)新互聯(lián)成立與2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元萍鄉(xiāng)做網(wǎng)站,已為上家服務(wù),為萍鄉(xiāng)各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

一、nginx與tomcat實(shí)現(xiàn)負(fù)載均衡

1、在/usr/local/ngnix/conf  創(chuàng)建文件 nginx-tomcat.conf

文件內(nèi)容:

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

user  nobody;
worker_processes  2;
events {   
    worker_connections  1024;    
}
http{    # upstream 配置一組后端服務(wù)器,
    # 請(qǐng)求轉(zhuǎn)發(fā)到upstream后,nginx按策略將請(qǐng)求指派出某一服務(wù)器
    # 即配置用于負(fù)載均衡的服務(wù)器群信息    upstream tomcats{
        fair;
        server 121.42.41.143:8080;
        server 219.133.55.36;
    }
    server {
        listen       80;
        server_name  121.42.41.143;
        access_log  logs/tomcat-nginx.access.log  combined;        # 反向代理設(shè)置,將所有/路徑下請(qǐng)求發(fā)給本機(jī)上的tomcat
        location / {            #root   html;            index  index.html index.htm;            #==========Nginx提供的代理============
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://tomcats;
        }
   }
}

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

2、使用該配置文件啟動(dòng)nginx (啟動(dòng)前先關(guān)閉nginx)

    [root@iZ28b4kreuaZ bin]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx-tomcat.conf

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

二、配置文件詳解:

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。 View Code

 

三、fair策略的安裝

fair策略:根據(jù)各個(gè)服務(wù)器的性能的不同,自動(dòng)選擇使用響應(yīng)能力強(qiáng)的服務(wù)器。該策略是第三方提供的,所以要先安裝。

安裝步驟

1、下載 gnosek-nginx-upstream-fair-a18b409.tar.gz

2、解壓  tar zxvf gnosek-nginx-upstream-fair-a18b409.tar.gz

3、將解壓后的文件移動(dòng)到 /usr/local目錄下并 改名為 nginx-upstream-fair

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

4、將該模塊添加到我們安裝的nginx中

a、首先進(jìn)入nginx-1.8.1源文件目錄下在執(zhí)行:

[root@iZ28b4kreuaZ nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --add-module=/usr/local/nginx-upstream-fair/

b、執(zhí)行:make    進(jìn)行編譯

c、進(jìn)入 nginx-1.8.1/objs/下將最新的nginx啟動(dòng)項(xiàng) 覆蓋原來(lái)的 /usr/local/nginx/sbin/nginx啟動(dòng)項(xiàng)。

    [root@iZ28b4kreuaZ objs]# cp nginx /usr/local/nginx/sbin

d、開(kāi)啟Nginx 看看是可以使用

 四、在分布式服務(wù)器集群中session共享問(wèn)題

問(wèn)題:當(dāng)我們的用戶在tomcat1服務(wù)器上登錄后,tomcat1會(huì)保存用戶的登錄信息,但當(dāng)用戶的請(qǐng)求被代理服務(wù)器分配給tomcat2/tomcat3服務(wù)器時(shí),這時(shí)就會(huì)出現(xiàn)tomcat2/tomcat3無(wú)法獲取用戶登錄信息,從而導(dǎo)致用戶需要重新登錄的現(xiàn)象。我們有三種解決方案:

1、同一個(gè)用戶的請(qǐng)求鎖定在同一臺(tái)服務(wù)器上,這樣就不會(huì)存在session在不同服務(wù)器之間共享問(wèn)題。這種方案簡(jiǎn)單,但缺乏容錯(cuò)性(一旦服務(wù)器故障,那用戶的請(qǐng)求將被分配給其他服務(wù)器,這時(shí)就需要重新登錄)

實(shí)現(xiàn)方式:設(shè)置集群策略為 ip_hash ;

 upstream tomcats{
        ip_hash;
    }

2、session復(fù)制方式: 當(dāng)任何服務(wù)器中session值發(fā)生改變,他都會(huì)將該改變廣播給其他服務(wù)器,當(dāng)其他服務(wù)器收到廣播后也做相應(yīng)的改變,從而實(shí)現(xiàn)session在所有服務(wù)器中一直。缺點(diǎn) 當(dāng)集群中tomcat服務(wù)器很多時(shí)會(huì)增加網(wǎng)絡(luò)負(fù)荷,性能低下。實(shí)現(xiàn)方式:

a、在tomcat的server.xml中配置session廣播

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

      
      
           
             
        
      

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

b、在我們的分布式應(yīng)用的web.xml 中添加 標(biāo)簽

:作用是公告我們的應(yīng)用可以處于集群環(huán)境中。

 3、通過(guò)創(chuàng)建額外的共享空間用來(lái)管理session,一般我們使用分布式緩存技術(shù)redis、memcached緩存技術(shù),在這里我么使用memcached。

a、memcached的安裝:http://www.cnblogs.com/jalja/p/6121978.html

b、memcached 的 session共享原理

   粘性共享:

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

非粘性:

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

c、tomcat訪問(wèn)memcached的相關(guān)環(huán)境(我們使用的是tomcat7)

1. 復(fù)制jar包到tomcat/lib目錄,jar分三類

1)spymemcached.jar memcached java客戶端        

2)memcached相關(guān)的包  memcached-session-manager-{version}.jar       核心包         memcached-session-manager-tc{tomcat-version}-{version}.jar   Tomcat版本相關(guān)的包

3)序列化工具包,有多種可選方案,不設(shè)置時(shí)使用jdk自帶序列化,其它可選kryo,javolution,xstream,flexjson等   msm-{tools}-serializer-{version}.jar  其它序列化工具相關(guān)包  一般第三方序列化工具不需要實(shí)現(xiàn)serializable接口

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。

d、配置Context,加入處理session的Manager  MemcachedBackupSessionManager
 Context配置查找順序:
        1)conf/context.xml 全局配置,作用于所有應(yīng)用
        2) conf/[enginename]/[hostname]/context.xml.default 全局配置,作用于指定host下全部應(yīng)用
        3) conf/[enginename]/[hostname]/[contextpath].xml 只作用于contextpath指定的應(yīng)用
        4) 應(yīng)用META-INF/context.xml 只作用于本應(yīng)用
        5) conf/server.xml 下 作用于Context docBase指定的應(yīng)用
         如果只希望session管理作用于特定應(yīng)用,最好用3,4方式設(shè)置,希望作用全體,可用1,2,5設(shè)置

 conf/context.xml的配置:

如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。 View Code

 四、集群環(huán)境開(kāi)發(fā)注意事項(xiàng)

1、實(shí)體類要序列化( implements Serializable)

private static final long serialVersionUID = 3349238980725146825L;

2、獲取客戶端請(qǐng)求地址的方式 。在nginx-tomcat.conf中添加如下配置:

   server {
        location / {
            proxy_set_header   X-Real-IP        $remote_addr; # 真實(shí)的客戶端IP        }
   }

java代碼:

public static String  getIp(HttpServletRequest request){
        String remoteIp =request.getRemoteAddr();
        String headIp=request.getHeader("X-Real-IP");        return headIp==null?remoteIp:headIp;
    }

3、動(dòng)靜分離 
把靜態(tài)文件放在nginx服務(wù)器中(css、js、圖片)

看了以上關(guān)于如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。,如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。

 

 


名稱欄目:如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。
當(dāng)前鏈接:http://weahome.cn/article/pcjgpe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部