日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Web開發(fā):Apache2.2.x+Tomcat6.x+jk2.x做集群配置

在實際項目開發(fā)中,當訪問量過大,而客戶又不愿意多花錢的情況下,為保證項目的穩(wěn)定性,使用開源免費的中間件做集群是一個不錯的選擇。這就是我寫本博的初衷!

第一步:下載Apache 》http://httpd.apache.org/download.cgi#apache22如圖所示:

現(xiàn)在官方給的最新版本就是2.4.9,但是因為保證穩(wěn)定性,我采用的是低一個的版本!

第二步:下載mod_jk(這個動態(tài)庫是Apache的一個可選模塊,用來搭建JVAV 平臺的WEB 服務器時使用)

下載地址:

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/

這里選擇的是mod_jk-1.2.31-httpd-2.2.3.so,如果http服務器是Apache2.0.X版本,則必須選擇mod_jk-1.2.31-httpd-2.0.52.so,每個apache的版本,都會有一個特定的jk與之對應!OK?

第三步:安裝下載好的二進制文件:

安裝Apache也沒有什么難度,就是在安裝過程中要配置域名、網(wǎng)址和管理員郵箱之類的信息,這個信息完全可以按照提示,然后修改下填入即可,之后想修改的話直接到配置文件中改就行了。除了這個地方,還要保證機器上的80端口沒有被其他程序(如iis)占用。至于安裝路徑,完全取決于個人愛好。其他的默認就行了。安裝成功后,系統(tǒng)右下角的托盤區(qū)會有個圖標,我們可以通過這個啟動apache,如果那個小紅點變成綠色,說明服務已經(jīng)正常啟動了(如果服務沒有啟動起來,說明安裝過程中的配置有錯誤,建議卸載后重裝)。如果按照默認,端口是80的話,那打開瀏覽器,輸入:http://localhost/ ,應該可以看到 " It works “的字樣。這樣就可以進入下一步了。如圖所示:

瀏覽器效果如圖所示:

#p#

第四步:現(xiàn)在是核心配置了

在安裝好的Apache中找到httpd.conf文件,如圖:

在其最下面添加如下一行信息:

在conf文件夾中新建mod_jk.conf文件夾

配置如下:

找到modules文件夾,將下載好的mod_jk-1.2.31-httpd-2.2.3.so文件直接拷貝進去;這里面有好多的xxx.so;如圖所示:

在conf文件夾中新建workers.properties文件夾,配置如下:

注:我這里就用了兩個Tomcat做示范,當然你用多個Tomcat也沒問題,相應的在本機上的port端口不一致,就行,遠程不用管,但是要把host配置成遠程IP地址,就行了!

下面我們就開始配置Tomcat里面的server.xml文件了,里面有三個端口,分別是Server,Connector,Connector AJP,這三個端口號都要不一致,在這里就不敘述了下面可以下載server.xml文件例子。

 里面兩個核心的配置如下:

注:一個是配置負載均衡,一個是配置session復制,保證整個服務器session值是一致的

配置到這里:基本完成,下面,我們就編寫web項目進行測試:

在新建的web項目中,需要在web.xml文件中添加這條信息,distributable元素來告訴servlet/JSP容器,編寫的應用將在分布式Web容器中部署!

ok,編寫一個jsp進行測試了,網(wǎng)上大部分都是這樣測試的,我這里也用這種方法測試:

 
 
  1. <%@ page contentType="text/html; charset=GBK" %>   
  2. <%@ page import="java.util.*" %>   
  3. Cluster App Test   
  4.    
  5. Server Info:   
  6. <%   
  7. out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"
    ");%>   
  8. <%   
  9.   out.println("
     ID " + session.getId()+"
    ");   
  10.   // 如果有新的 Session 屬性設置   
  11.   String dataName = request.getParameter("dataName");   
  12.   if (dataName != null && dataName.length() > 0) {   
  13.      String dataValue = request.getParameter("dataValue");   
  14.      session.setAttribute(dataName, dataValue);   
  15.   }   
  16.   out.println("Session 列表
    ");   
  17.   System.out.println("============================");   
  18.   Enumeration e = session.getAttributeNames();   
  19.   while (e.hasMoreElements()) {   
  20.      String name = (String)e.nextElement();   
  21.      String value = session.getAttribute(name).toString();   
  22.      out.println( name + " = " + value+"
    ");   
  23.          System.out.println( name + " = " + value);   
  24.    }   
  25. %>   
  26.      
  27.     名稱:   
  28.      
       
  29.     值:   
  30.      
       
  31.        
  32.       
  33.    
  34.  

現(xiàn)在將web應用部署到Tomcat1,Tomcat2中去,記住是加載之后的class文件,然后分別啟動tomcat1,Tomcat2,啟動順序無所謂,最后啟動Apache

在瀏覽器上輸入:http://127.0.0.1/test/test2.jsp如下圖:刷新,后臺訪問,Tomcat1,Tomcat2


我們發(fā)現(xiàn)sessionID是沒有變化的,后臺Tomcat在進行訪問切換,


我們繼續(xù)輸入數(shù)據(jù)看Tomcat打印的效果:

由此可見,我們的集群最核心的session復制做成功了,保證多個tomcat的session是一致的,基本完成集群配置,可以使用了,這也是我摸索而來,希望沒有誤導大家。

另外:為什么打印出來Server Info : null  也就是IP地址?這一點也是我郁悶的地方,有朋友看出問題,也可以留言,咱們一起交流!

附,為保證頁面的圖片大小統(tǒng)一,圖片經(jīng)過處理,所以分辨率有些不正常!呵呵....

文件下載地址:

源碼,配置文件,Apache,jk,下載!

博客地址:http://1936625305.blog./6410597/1406268


文章題目:Web開發(fā):Apache2.2.x+Tomcat6.x+jk2.x做集群配置
瀏覽路徑:http://www.5511xx.com/article/dpehdoc.html