Resin4在4.0.24开始配置文件格式有较大变化。拆分为
app-default.xml web应用配置
cluster-default.xml 集群配置,在microblog中,一台服务是一个cluster。
resin.xml
resin.properties 会被修改的变量
安装
cd resin-4.0.27
./configure --prefix=/usr/local/resin
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 不支持LoadBalance、Health
删除/注释 相应配置
health:
删除
loadbalance:
端口
Resin 运行起来后,一般有这么几个端口
1. WatchDog 的端口,默认6600
2. Server 监控端口,默认6800
3. 应用的HTTP端口,默认8080
修改resin.properties
http : 8080 ---> 30080
添加 watchdog_port: 6606
添加 server_listen_port: 6866
修改resin.xml
${watchdog_port?:6600}
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
${form_parameter_max?:100}
form-parameter-max 用来限制每次post submit的参数个数,避免hash collision dos
修改cluster-default.xml
注释:
port_thread_max: 每个端口最多可以有的活跃线程数,避免系统负载压力过大。
这些参数在4.0.7中都没有源码天空,不能预估,先忽略了。。。!
这种配置在Resin 代码中对应的变量名为 portThreadMax acceptThreadMin acceptThreadMax,固定格式
日志
4.0.27 log与4.0.7 log 有些不同
只会输出系统中System.out.println()的内容。
输出microblog中的内容
修改resin.xml:
日志每天自动备份
可以通过stdout.out 来查看确认系统中是否有System.out.println()的调用
启动JVM参数
修改resin.properties添加:
根据实际环境确定:
jvm_args : -Xmx12g -Xms12g -XX:PermSize=256m -XX:MaxPermSize=1g -verbose:gc -verbose:jni -server -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+UseParallelOldGC -Xloggc:log/gc.log -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=12346