WEBサービスのダウンロード制限速度(一)(ApacheとTomcatの統合)

4944 ワード

陰19°
会社はapkアプリケーションを発表しますが、ユーザーに全速力でダウンロードさせることはできません.Tomcat自体は速度制限はできません.
構想
1、ApacheとTomcatを統合する
2、ApacheロードBandwidthモジュール
 
一、必要なソフトウェアを準備する
1、httpd-2.4.7.tar.gz  http://mirror.esocc.com/apache/httpd/
2、jakarta-tomcat-connectors-1.2.15-src.tar.gz  http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/source/jk-1.2.15/
3、tomcat側はインストール済みなので、こちらは不要です
 
二、apacheのインストール
# tar xzvf httpd-2.4.7.tar.gz
# cd httpd-2.4.7
# ./configure --prefix=/usr/local/apache --enable-so
# make
# make install

 
三、コンパイル生成mod_jk
# tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
# cd jakarta-tomcat-connectors-1.2.15-src/jk/native
# ./configure --with-apxs=/usr/local/apache/bin/apxs
# make
# cp ./apache-2.0/mod_jk.so /usr/local/apache/modules/

 
四、apacheとtomcatを接続する
1、
cd /usr/local/apache/conf/
vim mod_jk.conf

追加
#   mod_jk            workers.properties   
JkWorkersFile /usr/local/apache/conf/workers.properties

# Where to put jk logs
JkLogFile /usr/local/apache/logs/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel info

# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

#    servlet  jsp    ajp13     Tomcat, Tomcat   
JkMount /servlet/* worker1
JkMount /*.jsp worker1

 2、
vi workers.properties

追加
# Defining a worker named worker1 and of type ajp13
worker.list=worker1

# Set properties for worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

 
3、apacheメインプロファイルの変更
vim /usr/loacl/apache/conf/httpd.conf

indexを追加します.jspサポート
<IfModule dir_module>
    DirectoryIndex index.html index.jsp
</IfModule>

別名の追加(必要に応じて)
私のtomcatは/usr/apache-tomcat-7.4.47に置いてあります
Alias /test2 "/usr/apache-tomcat-7.0.47/webapps/test"
<Directory "/usr/apache-tomcat-7.0.47/webapps/test">
    AllowOverride None
    Options Indexes MultiViews
    Order allow,deny
    Allow from all
</Directory>

apache-tomcat接続モジュールのロード
LoadModuleの場所を見つけてセグメントを追加
LoadModule jk_module modules/mod_jk.so

同様にnclude conf/extra/http-ssl.confの下にセグメントを追加
Include /usr/local/apache2/conf/mod_jk.conf

 
4、tomcatの構成
vim /usr/apache-tomcat-7.0.47/conf/server.xml

追加または変更
<Context path="/test2" docBase="/usr/apache-tomcat-7.0.47/webapps/test" reloadable="false" crossContext="true" />

赤いアドレスはapacheの別名の下の赤いアドレスと一致する必要があります
 
 
5、jspページを作成する
vim /usr/apache-tomcat-7.0.47/webapps/test/index.jsp
<HTML>
<HEAD>
<TITLE>JSP    ---HelloWorld!</TITLE>
</HEAD>
<BODY>
<%
out.println("<h1>Hello World!<br>  ,  !</h1>");
%>
</BODY>
</HTML>

 
6、apacheとtomcatを再起動する
/usr/local/apache/bin/httpd -k restart
/usr/apache-tomcat-7.0.47/bin/shutdown.sh
/usr/apache-tomcat-7.0.47/bin/start.sh

 
7、テストしてみる
WEB服务的下载限速(一)(Apache与Tomcat整合)
成功...