免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

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

下文給大家?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)公司服務(wù)項(xiàng)目包括迪慶州網(wǎng)站建設(shè)、迪慶州網(wǎng)站制作、迪慶州網(wǎng)頁(yè)制作以及迪慶州網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,迪慶州網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到迪慶州省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!

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

1、同一個(gè)用戶(hù)的請(qǐng)求鎖定在同一臺(tái)服務(wù)器上,這樣就不會(huì)存在session在不同服務(wù)器之間共享問(wèn)題。這種方案簡(jiǎn)單,但缺乏容錯(cuò)性(一旦服務(wù)器故障,那用戶(hù)的請(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ì)解答。

      <!-- 基于網(wǎng)絡(luò)廣播的策略,一個(gè)節(jié)點(diǎn)session變化,其它節(jié)點(diǎn)同步復(fù)制,節(jié)點(diǎn)多或數(shù)據(jù)量大時(shí)性能低下 -->
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">
        <Channel className="org.apache.catalina.tribes.group.GroupChannel">   
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"  
                      address="192.168.6.223"  
                      port="8080"/> 
        </Channel>
      </Cluster>

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

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

<distributable/>:作用是公告我們的應(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分三類(lèi)

1)spymemcached.jar memcached java客戶(hù)端

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 <Host>下 作用于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í)體類(lèi)要序列化( implements Serializable)

private static final long serialVersionUID = 3349238980725146825L;

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

   server {
        location / {
            proxy_set_header   X-Real-IP        $remote_addr; # 真實(shí)的客戶(hù)端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è)資訊里查找自己感興趣的或者找我們的專(zhuān)業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

本文題目:如何實(shí)現(xiàn)nginx與tomcat云服務(wù)器集群做負(fù)載均衡的方法詳細(xì)解答。-創(chuàng)新互聯(lián)
本文URL:http://m.newbst.com/article42/dcijhc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)營(yíng)銷(xiāo)型網(wǎng)站建設(shè)動(dòng)態(tài)網(wǎng)站商城網(wǎng)站網(wǎng)站維護(hù)網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司