resin安装与配置优化

1. 安装jdk
下载jdk  官网地址:http://www.oracle.com/technetwor ... nloads-2133151.html 我们在这里下载jdk-8u31-linux-i586.tar.gz(用wget,放在/usr/local/src上)
百度网盘下载地址:  http://pan.baidu.com/s/1bnfb4ez
下载后解压:
tar zxvf  jdk-8u31-linux-i586.tar.gz
mv jdk1.8.0_31   /usr/local/jdk1.8.0_31
vim /etc/profile.d/java.sh   //加入如下配置

JAVA_HOME=/usr/local/jdk1.8.0_31
JAVA_BIN=/usr/local/jdk1.8.0_31/bin
JRE_HOME=/usr/local/jdk1.8.0_31/jre
PATH=$PATH:/usr/local/jdk1.8.0_31/bin:/usr/local/jdk1.8.0_31/jre/bin
CLASSPATH=/usr/local/jdk1.8.0_31/jre/lib:/usr/local/jdk1.8.0_31/lib:/usr/local/jdk1.8.0_31/jre/lib/charsets.jar

source  /etc/profile.d/java.sh

如果以上配置成功,则下面的命令可以看到java的版本:
java  -version  

2. 安装resin 
wget  http://www.caucho.com/download/resin-4.0.36.tar.gz
tar zxvf resin-4.0.36.tar.gz
cd resin-4.0.36 
./configure --prefix=/usr/local/resin  --with-java-home=/usr/local/jdk1.8.0_31make  && make install 
/etc/init.d/resin start

3. 配置resin

mkdir /tmp/123

cd /usr/local/resin/conf

vim  resin.xml

结构:  <cluster  id="app"> <host></host> </cluster>  虚拟主机配置就在<host></host>里配置
    <host id="www.123.com" root-directory=".">
    <web-app id="/" root-directory="/tmp/123"/>
    </host>

注意,这里并不是在</host>下面再加一段,而是直接更改里面的<host></host>

vim  /tmp/123/111.jsp  //加入
<html><body><center> 
Now time is: <%=new java.util.Date()%> 
</center></body></html> 

测试 :
curl -x127.0.0.1:8080  www.123.com/111.jsp

 

第二种方法:# groupadd resin

# useradd -g resin -s /sbin/nologin -M resin

# chown -R resin.resin /usr/local/www/resin

# vi /usr/local/www/resin/conf/resin.xml
修改如下两行内容:

<user-name>resin</user-name>

<group-name>resin</group-name>
/usr/local/www/resin/bin/resin.sh  start
用http://hostip:8080即可访问到resin的默认页面 

 

 4添加resin到系统服务

将make install生成的$RESIN_HOME/init.d/resin复制到/etc/init.d/resin

# cp init.d/resin /etc/init.d/resin

# chmod a+x /etc/init.d/resin

# vi /etc/init.d/resin添加如下两行

# chkconfig: 345 85 15

# description: Resin is a Java Web server.
把type log_daemon_msg 1> /dev/null

修改为type echo 1> /dev/null

修改

case "$1" in

  start)

....

  stop)

  .....

中的log_daemon_msg和log_end_msg为echo然后就可以用service resin start|stop来启动和停止resin了
 
5、resin管理员控制台

注:修改resin配置文件之前要先停止resin

使用http://hostip:8080 打开resin的默认页面 

点击Administration is available here处的here

创建一个管理员

# 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>-XX:PermSize=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>

 

posted @ 2016-06-01 09:35  blackmamba12524  阅读(448)  评论(0编辑  收藏  举报