resin服務器
一、安裝resin
http://www.caucho.com/download/
Resin是CAUCHO公司(http://www.caucho.com/)的產品,是一個非常流行的支持servlets 和jsp的引擎,速度
非常快。Resin本身包含了一個支持HTTP/1.1的WEB服務器。雖然它可以顯示動態內容,但是它顯示靜態內容的
能力也非常強,速度直逼APACHE SERVER。許多站點都是使用該WEB服務器構建的。
Resin也可以和許多其他的WEB服務器一起工作,比如Apache server和IIS等。Resin支持Servlets 2.3標準和
JSP 1.2標準。熟悉ASP和PHP的用戶可以發現用Resin來進行JSP編程是件很容易的事情。
1、安裝JDK
下載 jdk-7-linux-i586.rpm
http://java.sun.com/javase/downloads/index.jsp
# rpm –ivh jdk-7-linux-i586.rpm
# vi ~/.bash_profile
JAVA_HOME=/usr/java/jdk1.7.0
CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
使環境變量立刻生效
# source ~/.bash_profile
# source /etc/profile
# java -version (jdk的版本爲jdk1.4.2則表示jdk已成功安裝)。
2、安裝resin
# tar -zxvf resin-4.0.23.tar.gz -C /usr/src
# cd /usr/src/resin-4.0.23
# ./configure --prefix=/usr/local/resin --with-java-home=/usr/java/jdk1.7.0
# make
# make install
添加執行用戶resin
# groupadd resin
# useradd -g resin -s /sbin/nologin -M resin
# vi /usr/local/resin/conf/resin.xml
修改如下兩行內容:
<user-name>resin</user-name>
<group-name>resin</group-name>
啓動resin
# /usr/local/www/resin/bin/resin.sh start
用http://hosthost:8080即可訪問到resin的默認頁面
二、添加resin到系統服務
# cp /usr/src/resin-4.0.7/init.d/resin /etc/init.d/resin
# chmod a+x /etc/init.d/resin
# vi /etc/init.d/resin
把所有的log_daemon_msg和log_end_msg改爲echo
然後就可以用service resin start|stop來啓動和停止resin了
虛擬主機:
vi /usr/local/resin/conf/resin.xml
<host id='www.benet.com'>
<web-app id='/' document-directory="/usr/local/resin/www"/>
</host>
注:resin 3.版本爲resin.conf resin 4.版本爲resin.xml
三、resin管理員控制檯
注:修改resin配置文件之前要先停止resin
使用http://hostip:8080 打開resin的默認頁面
點擊Administration is available at /resin-admin處的resin-admin
先註冊一個管理員、密碼,usr/local/resin/conf/ 下會生成 admin-users.xml.generated文件
# cd /usr/local/www/resin/conf/
# service resin stop
# mv admin-users.xml.generated admin-users.xml
# service resin start
然後就可以使用剛纔創建的管理員登陸resin管理員控制檯了
四、resin優化
1、優化JVM參數
修改resin.conf文件,在<server-default>節點下增加配置JVM參數的子節點<jvm-arg>。 -Xmx和-Xms的值需要
根據服務器內存的大小調整,對於多數應用來說,-Xmx配置成1024M,完全能滿足使用要求。通常將-Xms與-Xmx
選項的值設置爲相同,-Xmn的值爲-Xmx的1/4。
<server-default>
<jvm-arg>-Xms1024m</jvm-arg>
<jvm-arg>-Xmx1024m</jvm-arg>
<jvm-arg>-Xmn256m</jvm-arg>
<jvm-arg>-XXermSize=128m</jvm-arg>
<jvm-arg>-XX:MaxPermSize=256m</jvm-arg>
<jvm-arg>-Dcom.sun.management.jmxremote</jvm-arg>
</server-default>
2、調整圖片Cache圖片文件的時間
<web-app-default>
<cache-mapping url-pattern="*.gif" expires="6000s"/>
<cache-mapping url-pattern="*.jpg" expires="6000s"/>
<cache-mapping url-pattern="*.png" expires="6000s"/>
</web-app-default>
3、調整線程池的最大線程數
<server-default>
<thread-max>1024</thread-max>
</server-default>
4、日誌輸出
如果不配置stdout-log,那麼resin會把System.out輸出的信息,自動輸出到${resinHome}/log/jvm-
default.log文件中,且這個文件不會按天存儲,隨着時間推移,這個文件會越來越大,最後影響系統效率。
<host>
<stdout-log path="${resinHome}/log/stdout.log" timestamp="[%Y-%m-%d %H:%M:%S.%s]" rollover-
period="1D"/>
<stderr-log path="${resinHome}/log/stderr.log" timestamp="[%Y-%m-%d %H:%M:%S.%s]" rollover-
period="1D"/>
</host>
5、resin-server TIME_WAIT 過多的處理
thread-max指定了最大連接數,socket-timeout是socket超時時間
keepalive-max指定了長連接的數量,這是可以重複使用的連接,netstat -an時系統可以看到響應數量的
ESTABLISHED狀態
設定keepalive-max和把keepalive-timeout調小可以減少TIME_WAIT的數量。
在<server-default>節點下增加配置
<thread-max>10000</thread-max>
<socket-timeout>30s</socket-timeout>
<keepalive-max>512</keepalive-max>
<keepalive-timeout>60s</keepalive-timeout>
6、調整檢查程序更新時間間隔的配置
Resin 會在一個指定的週期內,檢查一下web-app目錄下的classes、jsp、jar以及配置文件是否更新,並且根
據檢查的情況,確定是否重新裝載這些文件。對於生產系統來說,不會經常更新文件,時間間隔應該加長,提
高系統的效率。文本框中配置的時間間隔爲20分鐘。
<dependency-check-interval>1200s</dependency-check-interval>
本文出自 “linux” 博客,請務必保留此出處http://yangzhiming.blog.51cto.com/4849999/834916