Open Source Resin 4.0.27配置简析

Resin4.0.7 --- Resin4.0.27

Resin44.0.24开始配置文件格式有较大变化。拆分为

app-default.xml web应用配置

cluster-default.xml 集群配置,在microblog中,一台服务是一个cluster

resin.xml 

resin.properties 会被修改的变量

安装

cd resin-4.0.27

./configure --prefix=`pwd`; make; make install

避免出现错误:

Unable to find native library 'resin_os' for com.caucho.loader.ClassEntry. Resin expects to find this library in:

(Unix) /disk1/microblog/resin-4.0.27/libexec64/libresin_os.so

OpenSource Resin4 不支持LoadBalanceHealth

删除/注释 相应配置

health

<!--

- health configuration

-->

<resin:import path="${__DIR__}/health.xml"/>

删除

<cluster id="web">

<!-- define the servers in the cluster -->

<server-multi id-prefix="web-" address-list="${web_servers}" port="6810"/>

loadbalance:

<host id="" root-directory="web">

<web-app id="">

<resin:LoadBalance regexp="" cluster="app"/>

</web-app>

</host>

</cluster>

端口

Resin 运行起来后,一般有这么几个端口

1. WatchDog 的端口,默认6600
2. Server 监控端口,默认6800
3. 应用的HTTP端口,默认8080

修改resin.properties

http          : 8080  ---> 30080

添加 watchdog_port: 6606

添加 server_listen_port: 6866

修改resin.xml

<cluster id="app">

<!-- define the servers in the cluster -->

<server-multi id-prefix="app-" address-list="${app_servers}" port="${server_listen_port?:6800}">

<watchdog-port>${watchdog_port?:6600}</watchdog-port>

</server-multi>

admin/doc/deploy

禁用resin的管理界面

修改resin.properties

web_admin_enable : false

session_store : false (每个服务器是一个集群,不需要考虑session 持久化)

resin_doc : false

dev_mode:false

在resin.properties添加:

form_parameter_max:100 #hash dos protection

修改resin.xml

<web-app id="/" root-directory="webapps/microblog" redeploy-mode="manual">

<form-parameter-max>${form_parameter_max?:100}</form-parameter-max>   

</web-app>

form-parameter-max  用来限制每次post submit的参数个数,避免hash collision dos

修改cluster-default.xml

注释:

<!--

<port-default>

<port-thread-max>${port_thread_max}</port-thread-max>

<accept-thread-min>${accept_thread_min}</accept-thread-min>

<accept-thread-max>${accept_thread_max}</accept-thread-max>

<tcp-cork>${tcp_cork}</tcp-cork>

</port-default>

-->

port_thread_max: 每个端口最多可以有的活跃线程数,避免系统负载压力过大。

这些参数在4.0.7中都没有,不能预估,先忽略了。。。!

这种配置在Resin 代码中对应的变量名为 portThreadMax acceptThreadMin acceptThreadMax,固定格式

日志

4.0.27 log4.0.7 log 有些不同

<stdout-log path="log/stdout.log" rollover-period="1D" timestamp="[%H:%M:%S.%s] "/> 只会输出系统中System.out.println()的内容。

<log-handler name="" level="all" path="log/microblog.log"

timestamp="[%y-%m-%d %H:%M:%S.%s]" rollover-period="1D"/>

输出microblog中的内容

修改resin.xml:

<log-handler name="" level="all" path="log/microblog.log"

timestamp="[%y-%m-%d %H:%M:%S.%s]" rollover-period="1D"/>

<stdout-log path="log/stdout.log" rollover-period="1D" timestamp="[%H:%M:%S.%s] "/>

<stderr-log path="log/stderr.log" rollover-period="1D" timestamp="[%H:%M:%S.%s] "/>

日志每天自动备份

可以通过stdout.out 来查看确认系统中是否有System.out.println()的调用

启动JVM参数

修改resin.properties添加:

根据实际环境确定:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/abc6ebba1613af7591142cea6ee1524d.html