resin服务器-阿里云开发者社区

开发者社区> 开发与运维> 正文

resin服务器

简介:

 

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博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/834916如需转载请自行联系原作者


yangzhimingg

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章