apache tomcat 負載均衡基本配置攻略

2021-08-30 05:06:38 字數 3731 閱讀 9265

配置完自己寫個備忘!~供以後參考。

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的配置檔...