配置完自己寫個備忘!~供以後參考。
apache+tomcat 負載均衡基本配置攻略:
1. 安裝時把模組都編譯為動態載入,本地自己使用的話,具體路徑自己自由配置
./configure --prefix=/var/www/dream/apache --enable-mods-shared=all
然後make,make install
安裝完刪除編譯安裝時產生的臨時檔案
make clean
2. 修改httpd.conf配置檔案
# 隱藏apache的版本資訊
serversignature off
servertokens prod
# 只載入必要的4個模組,其餘的注釋掉(僅表示apache自帶的,jk和php的不要注釋)
loadmodule authz_host_module modules/mod_authz_host.so
loadmodule log_config_module modules/mod_log_config.so
loadmodule mime_module modules/mod_mime.so
loadmodule dir_module modules/mod_dir.so
# mpm_prefork的配置可參考以下配置
serverlimit 1700
startservers 1600
minspareservers 1
maxspareservers 1700
maxclients 1700
maxrequestsperchild 5000
# 在每個裡面,刪掉indexes部分,即禁止列目錄
注釋掉這句 : options indexes followsymlinks
若想本地訪問需要配置乙個 servername
servername bokecc.com --- 網域名稱
3. 需要開啟vhost
# virtual hosts
include conf/extra/httpd-vhosts.conf #這句原來被注釋的。表示他會載入extra目錄下的httpd-vhosts.conf 檔案
對每乙個vhost配置自己的log,(可能需要安裝cronolog: sudo apt-get install cronolog)
然後配置httpd-vhosts.conf檔案:
namevirtualhost *
servername cmedia.bokecc.com # 解析的網域名稱
documentroot "/home/tree/server/tomcat/mytest/" #專案所在的目錄. 指定由apache轉到tomcate處理。
#customlog "/var/log/apache2/test.log" combined #下面這幾行是日誌列印路徑
#customlog "|/usr/bin/cronolog /var/log/apache2/%y.%m/union.%y.%m.%d.log" combined # |/usr/bin/cronolog這部分不能改,空格後面設定日誌存放路徑
#errorlog "|/usr/bin/cronolog /var/log/apache2/%y.%m/error.union.%y.%m.%d.log"
# 下面是apache需要tomcate動態處理的東西
jkmount /servlet/* loadbalancer
jkmount //servlet/* loadbalancer
jkmount /*.jsp loadbalancer
jkmount /*.do loadbalancer
jkmount /*.bo loadbalancer
jkmount /dwr/* loadbalancer
#專案所在的目錄.
options followsymlinks includesnoexec
directoryindex index.html index.htm index.jsp
allowoverride none
order allow,deny
allow from all
4. 配置負載均衡
首先:拷貝mod_jk.so檔案到目錄apach/modules下
這裡需要把mod_jk.so檔案的許可權改為允許以程式執行檔案。
然後:在httpd.conf中需要加:
loadmodule jk_module modules/mod_jk.so
jkworkersfile "/home/tree/server/apach/conf/workers.properties" #在conf目錄下需要workers.properties配置檔案。
jklogfile "mod_jk.log"
jkloglevel info
workers.properties配置檔案如下 :
worker.list=loadbalancer #worker列表 worker.list=的內容必須和httpd-vhosts.conf配置檔案中一致。 他表示:apache通過loadbalancer一致的命名,去找**的tomcat
# set properties for tomcat1 (tomcat1)
worker.tomcat1.type=ajp13 #通訊協議 必須和tomcat配置檔案server.xml中埠為8009的通訊協議相同。 參見5. tomcat配置
worker.tomcat1.host=localhost
worker.tomcat1.port=8009
worker.tomcat1.lbfactor=1 #均衡係數 若2個都是1 表示下架2個tomcat訪問機會相同,若tomcat1的lbfactor=2 表示有3/2的機會訪問這個tomcat
# set properties for tomcat2 (tomcat2)
#worker.tomcat2.type=ajp13
#worker.tomcat2.host=localhost
#worker.tomcat2.port=8109
#worker.tomcat2.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=tomcat1 #,tomcat2 #指定分擔請求的tomcat,可以配置多個tomcat
worker.loadbalancer.sticky_session=1 #對於同一session只訪問同一tomcat
5. tomcat配置
tomcat的安裝過程不在重複了。這裡說下配置。
tomcat中的server.xml
要配置負載均衡,要求protocol規定的協議必須和worker.tomcat1.type的協議相同。
6. 測試
以上配置完成後可以測試下:
在/mytest目錄存放jsp 或者html檔案
首先啟動apache
啟動後訪問html檔案測試:
html**如下:
this is my html page.
訪問 :cmedia.bokecc.com/test.html 成功說明apache啟動成功
然後啟動tomcat
jsp**如下:
this is my jsp page.
訪問 cmedia.bokecc.com/index.jsp 成功說明apache和tocmat整合成功
apache tomcat負載均衡
最近tomcat總是記憶體溢位,於是就多看了一些tomcat的文章,今天恰好也看到了一篇關於tomcat負載均衡的東西 就好奇的配置了一下,感覺很爽,過程中出現了一些問題,做以下簡單的總結 說一下自己簡單的理解,負載均衡就是分擔以下一台伺服器上面的應用的負載,減輕伺服器的壓力,我看到的最簡單的效果就...
apache tomcat 負載均衡
其實無論是分布式,資料快取,還是負載均衡,無非就是改善 的效能瓶頸,在 原始碼不做優化的情況下,負載均衡可以說 是最直接的手段了。其實拋開這個名詞,放開了說,就是希望使用者能夠分流,也就是說把所有使用者的訪問壓力分散到多台伺服器上,也可以 分散到多個tomcat裡,如果一台伺服器裝多個tomcat,...
apache tomcat 負載均衡
需要準備的環境 apache2.2 apache mod jk模組 自帶 tomcat6.0 apache端配置 conf httpd.conf中最後一行引用jk的配置檔案 include mod jk.conf mod jk.conf中的內容,載入了mod jk的庫檔案,指定了worker的配置檔...