Resin

Resin是CAUCHO公司的产品,是一个非常流行的application server,对servlet和JSP提供了良好的支持,性能也比较优良,resin自身采用Java语言开发。Resin本身包含了一个支持HTTP/1.1的WEB服务器。虽然它可以显示动态内容,但是它显示静态内容的能力也非常强,速度直逼APACHE SERVER。许多站点都是使用该WEB服务器构建的。

Resin 普通版本和pro版本主要区别是 pro支持缓存和负载均衡。pro因为有强大的cache功能,独立作为web服务器处理静态性能都可以和apache有一比。但普通版本独立作为web服务器性能就要差一些。当然可以使用apache+resin的方案借助apache的缓存功能提高性能。 但负载均衡就是普通版不能比的了。


Resin 下载及启动

点击下载,个人建议下载zip版本,解压即可使用。解压到相关文件夹时,你必须一定要注意文件路径不能有空格符

启动步骤:

1、打开Resin安装文件夹,在根目录下找到stepup.exe,双击启动,第一行中填入你的resin安装路劲

Windows下Resin的安装及配置详解_resin windows 安装配置

2、找到根目录下http.exe,双击启动

3、输入http://localhost:8080,跳出resin默认文件页面,启动成功

Windows下Resin的安装及配置详解_resin windows 安装配置_02

配置后台管理

在进入resin默认的页面后,你会发现两个连接选项,前者是Resin的帮助文档,后者是后台管理选项界面。

如果你需要使用后台管理选项连接,会发现打开是失败的,你需要超做以下配置,完成Resin配置。

1、在你的Resin安装路径中,打开conf文件,找到resin.conf,打开进行编辑。

2、需修改,将false改为true,允许外部访问


[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <prologue>  

  2.           <resin:set var="resin_admin_external" value="true"/>  

  3.           <resin:set var="resin_admin_insecure" value="true"/>  

  4. </prologue>  



创建后台管理用户


在后台管理界面中输入需要创建的用户名及密码,如下:

Windows下Resin的安装及配置详解_resin windows 安装配置_05

2、记录下生生的md5数据码,数据码位于:

Windows下Resin的安装及配置详解_resin windows 安装配置_06

3、修改resin.conf文件 ,需要注意的是,记得将第二行的true改为false


[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <management path="${resin.root}/admin">  

  2.   <user name="admin" password="password" disable="false"/>  

  3.   <user name="你申请的用户名" password="产生的md5码"/>  

  4.   <resin:if test="${resin.professional}">  

  5.     <deploy-service/>  

  6.     <jmx-service/>  

  7.     <log-service/>  

  8.     <xa-log-service/>  

  9.   </resin:if>  

  10. </management>  


4、重启Resin,输入用户名密码即可进入后台管理界面


Resin发布应用

Resin发布应用其实和Tomcat几乎一模一样,有两种方式,一种是在Resin目录下发布,另一种是War发布

在Resin目录下发布:

在resin.conf中查找<host id="" root-directory=".">标记下的<web-app>标签,添加如下代码:


[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <web-app id="/temp" root-directory="E:\myDocument\MyWork\WorkSpace\myEclipse\test\WebRoot"/>  

这里面的id=“/temp” 其实代表的就是服务器的逻辑路径,你需要在浏览器中输入\temp去访问你的应用,如:



[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. http://localhost:8080/temp/helloworld.jsp  

后面的root-directory指的是物理路径,服务器通过逻辑路径查找物理路径下的字节文件。


War方式发布:

和tomcat发布方式一样,不讲了,本人不是很喜欢这种方式的发布

Resin可以配置3种error-page

404文件找不到页

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <web-app id='/app1'>  

  2.      <error-page error-code='404' location='/file_not_found.jsp'/>  

  3.     </web-app>  

Exception 违例页

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <web-app id='/foo'>  

  2.      <error-page exception-type='java.lang.NullPointerException' location='/nullpointer.jsp'/>  

  3.     </web-app>  

不能连接到srun Servlet引擎错误页该页设置和应用无关,属于服务器的设置。

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <http-server>  

  2.  <error-page exception-type='connection' location='/missing_file.html'/>  

  3. </http-server>  

参见下面的语句:

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <classpath id='WEB-INF/classes' source='WEB-INF/src' compile='true'/>  

   id参数的值表示classpath中编译后的class的存放路径;
      source参数的值表示classpath中java源代码的存放路径;
      compile中的值可能是true或者false,表示是否由Resin的srun自动编译java源代码。
      Classpath的设置一般和javaBean或者Servlet的使用有关。id的值表示javaBean的编译好的包存放的根,source的值表示javaBean的java源代码存放的根。Servlet相同。


禁用Resin的自动加载类更新



[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <web-app id="/" root-directory="C:\PROJECTS\JAVA\DLOG4J\webapp" redeploy-mode="manual"/>  


此配置跟Tomcat的reloadable="false"的意图一致

Servlet的设置

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <servlet-mapping url-pattern='*.xtp' servlet-name='xtp'/>  

  2. <servlet-mapping url-pattern='*.jsp' servlet-name='jsp'/>  

  3. <servlet-mapping url-pattern='/servlet/*' servlet-name='invoker'/>  

一般就是指定那些需要通过srun的解析。比如在这里,把*.jsp改成*.jss,其他不变,那么只要在访问时遇到*.jss的文件就和原来遇到*.jsp一样处理。通过这个可以指定解析的引擎,如以下的配置: 

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <servlet-mapping url-pattern='*.xtp' servlet-name='com.caucho.jsp.XtpServlet'/>  

 在Servlet中,也可以指定servlet。如

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <servlet servlet-name='hello' servlet-class='test.HelloWorld'/>  

  2. <servlet-mapping url-pattern='/hello.html' servlet-name='hello'/>  

在servlet-mapping中有个重要的参数case-sensitive 如果在windows上,最好配置成false,忽略大小写,从而和windows的约定一致。



Session的配置

[html] view plain copy Windows下Resin的安装及配置详解_resin windows 安装配置_03Windows下Resin的安装及配置详解_resin windows 安装配置_04

  1. <session-config>  

  2. <session-max>4096</session-max>  

  3. <session-timeout>30</session-timeout>  

  4. <enable-cookies>true</enable-cookies>  

  5. <enable-url-rewriting>true</enable-url-rewriting>  

  6. <file-store>WEB-INF/sessions</file-store>  

  7. </session-config>  

session-max :最大 session数量
session-timeout :session过期时间,以分钟为单位。
是否允许cookie :指session是否采用cookies。如果采用cookies,浏览器必须支持session才能使用,发布时建议改成false。enable-url-rewriting和enable-cookies一般配合使用。如果enable-cookies是false,
enable-url-rewriting应该设成true比较合适。
file-store :该配置指示服务器是否把session作为文件存放在服务器上。如果把该项注释掉,则在你的web-app目录下的WEB-Inf/sessions目录不保存序列化后的session对象。Session还有jdbc-store配置,对应着把session通过jdbc永久保存在数据库中。其实也就是会话变量的序列化后的保存和重新载入的物理实现。

本文出自http://blog.csdn.net/dannor2010/article/details/8446584