现在的位置: 首页 > 综合 > 正文

Resin 安装配置优化

2013年08月06日 ⁄ 综合 ⁄ 共 4231字 ⁄ 字号 评论关闭

resin安装配置

一、 Resin运行环境

1、 操作系统:Microsoft windows 98/2000/xp 、linux

2、 JDK环境:需要预先安装JDK,建议使用JDK1.4以上版本。

3、 内嵌式运行支持的WEB服务程序:Apache 或 IIS

(注:如果嵌入到IIS下时,配置文件只能命名为resin.conf,并且放在resin自己的conf目录下)

二、 Resin启动方法

1、 快捷方式:

建立bin/httpd.exe的快捷方式,如果不设置任何参数,conf/resin.conf做为默认的配置文件被加载。

如果使用需要在一台机器上同时启动多个resin程序,可以通过设置bin/httpd.exe的启动参数,即httpd.exe –conf  conf/app1.conf来实现,其中conf/app1.conf就是另一个应用的配置文件。

2、 服务:

在Microsoft windows 2000/xp的环境下,可以把resin设置为操作系统的服务,实现方法如下:

1) 添加服务:

在Microsoft windows 2000/xp下打开command窗口,并把路径转到resin的bin目录下输入命令行httpd –intall –Xrs (注:-Xrs参数需要JDK1.4以上版本才支持),运行时请不要打开系统服务浏览窗口,否则会导致安装失败。

参数说明:-h 查看httpd.exe的参数说明

-install 安装服务名为Resin Web Server的服务

-install-as <name> 安装服务名为指定名称的服务。

2) 删除服务:

在Microsoft windows 2000/xp下打开command窗口,并把路径转到resin的bin目录下输入命令行httpd –remove ,运行时请不要打开系统服务浏览窗口,否则会导致删除失败。

参数说明:-remove 删除服务名为Resin Web Server的服务

-remove-as <name> 删除服务名为指定名称的服务。

3、两种启动方式的比较:

快捷方式启动会打开一个dos运行窗口,会显示关于resin运行时的状态信息以及程序报错信息。

优点:操作简便,报错信息一目了然。

缺点:如果在dos运行窗口点选其中文字,会导致resin无法正常运行,必须点鼠标右键释放选中文字,才能正常显示。

服务方式启动,服务器上没有任何运行窗口,可用操作系统的服务管理界面来控制resin的运行和停止。

优点:隐式启动,不会被鼠标点击意外停止,与系统整合的比较好。

缺点:由于所有的resin运行时的状态信息以及程序报错信息都保存在log目录下,需要打开这些文件看到信息。

三、 Resin.conf配置参数说明

1、 HTTP服务相关

1) <app-dir>e:/EGovStd</app-dir> 设置wwwroot路径

2) <http port='80'/> 设置HTTP服务端口,如果是内嵌式在其它HTTP SERVER上运行,请删除此行。

2、 session相关

1) <session-timeout>800</session-timeout> session超时时间(单位:分钟)

2) <enable-cookies>true</enable-cookies> 是否使用cookies

3) <file-store>WEB-INF/sessions</file-store> 使用文件方式保存session在WEB-INF/sessions目录下。(注:该参数可避免由于class文件更新后,session会丢失的问题)

3、 jsp和servlet相关配置

1) <srun host='127.0.0.1' port='6802'/> 设置解析jsp的服务端口。(注:如果同一台机器运行不同目录下的resin,应保持该端口不重复)

2) <servlet>

<servlet-name>Settings</servlet-name>

<servlet-class>com.newtouch.common.setting.SettingsServlet</servlet-class>

<init-param configFile='E:/EGovStd/web-inf/conf/init.conf'/> 设置configFile参数的值为E:/EGovStd/web-inf/conf/init.conf

<load-on-startup>-2147483646</load-on-startup>

</servlet>

    在resin启动时自动装载com.newtouch.common.setting.SettingsServlet

3) <servlet>

<servlet-name>watch.WatchQServlet</servlet-name> mapping后的servlet名称

<servlet-class>com.newtouch.egov.watch.WatchQServlet</servlet-class> 实际的servlet名称

</servlet>

<servlet-mapping>

           <servlet-name>watch.WatchQServlet</servlet-name>

           <url-pattern>/servlet/watch.WatchQServlet</url-pattern>

         </servlet-mapping>

4、 数据库缓冲池

(注:关于时间的单位默认为秒,s为秒,m为分钟,h为小时)

<resource-ref>

  <res-ref-name>jdbc/egovstd</res-ref-name> 数据源名称

  <res-type>javax.sql.DataSource</res-type> 数据源类型

  <init-param driver-name="com.microsoft.jdbc.sqlserver.SQLServerDriver"/> JDBC驱动名称

  <init-param url="jdbc:microsoft:sqlserver://localhost:1433;selectmethod=cursor"/> JDBC的连接URL

  <init-param user="sa"/> 连接数据库的用户名称

  <init-param password=""/> 该用户的密码

  <init-param max-connections="50"/> 缓冲池最大连接数

  <init-param max-idle-time="30"/> 数据库连接最大空闲时间

  <init-param max-active-time="5m"/> 数据库连接最大活动时间

  <init-param max-pool-time="10m"/> 数据库连接在数据缓冲池的最大存在时间

  <init-param connection-wait-time="15"/> 数据库连接等待时间 

 

The allocation of memory for the JVM is specified using -X options when starting Resin

(the exact options may depend upon the JVM that you are using, the examples here are for the Sun JVM).

JVM option passed to Resin Meaning
-Xms initial java heap size
-Xmx maximum java heap size
-Xmn the size of the heap for the young generation

Resin startup with heap memory options unix> bin/httpd.sh -Xmn100M -Xms500M -Xmx500M win> bin/httpd.exe -Xmn100M -Xms500M -Xmx500M install win service> bin/httpd.exe -Xmn100M -Xms500M -Xmx500M -install

原文:http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp

JVM 优化:

java -Xms<size>
set initial Java heap size. default:Xms32m
java -Xmx<size>
set maximum Java heap size. default:Xmx128m

set it like that:

java -Xms=32m -Xmx=256m
If the problem persist, increase Xmx more than 256 ( 512m for example )

-J-mx<num>

 

 

(以下内容都是自己不断实验总结的,而非resin官方的建议,可能不适合你的情况,我的经验仅做为参考。)
最近发现有人用黑客类工具恶意点击网站,或发送大量垃圾包,具体是什么不清楚,但是很明显是故意的,造成80端口无法正常访问,或访问速度极慢。
用netstat -an >>c:/temp/aaa.txt 命令查看了当时情况,发现某几个ip的连接数量巨大,是不正常的。
不管是访问量大,还是有黑客骚扰,我想还是试试看把resin优化一下。
首先要在访问量巨大的时候进行观察。
先将resin.conf文件中的thread-min,thread-max,thread-keepalive三个参数设置的比较大,分别写上,1000,3000,1000,当然这是根据你的机器情况和可能同时访问的数量决定的,如果你的网站访问量很大的,应该再适当放大。
然后观察任务管理器中的java线程变化情况,看看到底是线程达到多大的时候,java进程当掉的。我的是在379左右当掉。
然后将thread-min,thread-max,thread-keepalive分别写为150,400,300;,也就是将当掉的时候的最大值稍微放大点,作为thread-max的值,因为该系统一般不会超过这个值。然后其他两个参数根据情况设置一下。
这只是我的估计值,根据机器性能和访问量不同,应该有所不同。
然后将accept-buffer-size值设置的较大,我设置到10000以上,这样可以让java能使用到更多的内存资源。
这样的设置基本上能够满足resin的正常运行,当掉resin服务的情况大大减少,本设置适合于中小型网站。

 

抱歉!评论已关闭.