Resin服务器配置指南
1 修改历史
版本
|
修改历史
|
作者
|
描述
|
工作时间(h)
|
V0.1
|
2007-6-7
|
张乐雷
|
创建文档得基本结构、基本流程
|
0.5
|
V0.1.1
|
2007-6-11
|
张乐雷
|
增加了对: 日志配置的详细解析。
|
0.5
|
V0.2
|
2007-7-4
|
张乐雷
|
增加:session-config的配置解释
|
0.1
|
V0.3
|
2007-8-5
|
张乐雷
|
增加:resin概念解释
|
0.1
|
V0.4
|
2007-8-31
|
张乐雷
|
增加:常见问题中,集成配置方法
|
0.1
|
V0.5
|
2007-9-10
|
张乐雷
|
增加:resin不能启动问题解决办法
|
0.1
|
V0.6
|
2007-9-24
|
张乐雷
|
增加:最大连接数配置方式。解决了当系统建立连接导致系统死锁的问题。
|
0.2
|
2 目的和范围
本文讲述了resin服务器配置相关的内容,包括:配置实例、日志的配置、超时配置、常见问题和解答等等。
3 Jdk和Resin安装步骤
1. 下载jdk linux版本, j2sdk-1_4_2_10-linux-i586.bin。
2. 下载resin-2.1.17.tar.gz。或更好版本
3. 直接输入:j2sdk-1_4_2_10-linux-i586.bin就可以安装成功。本身它有安装脚本。
4. 修改用户根目录下配置文件。 (1)ls -a 查看文件 (2)vi .bash_profile 添加:export JAVA_HOME=/home/usboss/j2sdk1.4.2_10/
Note:配置这个文件类似于windows的配置windows的环境变量。修改了这个文件一定要重新登陆。
5. tar -zxf resin-2.1.17.tar.gz 直接的解压就可以使用。
4 文件Httpd.sh参数配置解释
1.文件位置:${resin30}/bin/httpd.sh
2.args='-J-server -Xms200m -Xmx1024m -Xloggc:./log/gc.log -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true'
(1)J-server -Xms200m -Xmx1024m 其中,-Xms200m 表示启动时,初时内存大小,-Xmx1024m
最大内存占用大小。
(2)-XX:MaxNewSize=256m -XX:MaxPermSize=256m 表示:内存的永久保存区域的大小
(3)-Djava.awt.headless=true 解决在linux/unix验证码图片不能显示的问题。
3. 然后,启动时展示
java -server -Xms200m -Xmx1024m -Xloggc:./log/gc.log -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true -Xss1m -Dresin.home=/home/channel/appsvr/resin-3.0.22 -Dserver.root=/home/channel/appsvr/resin-3.0.22 -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl com.caucho.server.resin.Resin -socketwait 35303 -stdout /home/channel/appsvr/resin-3.0.22 /log/stdout.log -stderr /home/channel/appsvr/resin-3.0.22/log/stderr.l
5 查看日志的方法
1. 可以看logs目录下stdout.log的输出信息。 也可以看log目录下的。命令是:
实时信息:tail –100f 日志文件名 100代表了显示100行数据
静态历史信息:tail –100日志文件名 100代表了显示100行数据
2. 在resin/logs下的stdout.log是存放这server实时输出的信息。
3. vi命令可以看日志,可以查找等更多的功能。
4. stderr.log表示错误信息的日志。
6 常见问题和解答
6.1 解决:内存、heap、验证码显示的集成配置配置方式?
1.文件位置:${resin30}/bin/httpd.sh
2.args='-J-server -Xms200m -Xmx1024m -Xloggc:./log/gc.log -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true'
(1)J-server -Xms200m -Xmx1024m 其中,-Xms200m 表示启动时,初时内存大小,-Xmx1024m
最大内存占用大小。
(2)-XX:MaxNewSize=256m -XX:MaxPermSize=256m 表示:内存的永久保存区域的大小
(3)-Djava.awt.headless=true 解决在linux/unix验证码图片不能显示的问题。
3. 然后,启动时展示
java -server -Xms200m -Xmx1024m -Xloggc:./log/gc.log -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true -Xss1m -Dresin.home=/home/channel/appsvr/resin-3.0.22 -Dserver.root=/home/channel/appsvr/resin-3.0.22 -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl com.caucho.server.resin.Resin -socketwait 35303 -stdout /home/channel/appsvr/resin-3.0.22 /log/stdout.log -stderr /home/channel/appsvr/resin-3.0.22/log/stderr.l
6.2 在linux/windows下,验证码图片不能正常显示?
答:修改位置:在resin3/bin/httpd.sh文件, 在args位置,增加:-Djava.awt.headless=true
6.3 对于OutOfMemoryError: PermGen space, 如何处理?
答:PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。这种错误常见在web服务器对JSP进行pre compile的时候。
修改位置:在resin3/bin/httpd.sh文件, 在args位置,增加:-XX:MaxNewSize=256m -XX:MaxPermSize=256m
6.4 如何对标准日志输出配置大小和天数进行配置?
详细参见:
在Resin.conf文件中查找
<log name="" path="stdout:" timestamp="[%H:%M:%S.%s] "/>
如果是标准的Resin3.0的默认配置文件,大概第9行左右。
修改为如下内容:
按日期生成日志
<log name="" level="all" path="log/stdout.log" timestamp="[%H:%M:%S.%s] "
archive-format="%Y-%m-%d.stdout.log.gz"
rollover-period="1W"/>
level日志级别:off/severe/warning/info/config/fine/finer/finest/all
path日志文件路径:log/stdout.log
archive-format归档格式:如2007-5-10.stdout.log.gz
rollover-period日志回滚方式:按天(15D)、按周(1W)、按月(1M)、按小时(1h)等。
按文件大小生成日志
<log name="" level="warning" path="log/stdout.log" timestamp="[%H:%M:%S.%s] "
archive-format="%Y-%m-%d.stdout.log.gz"
rollover-size="10mb"/>
rollover-size每个日志文件的大小:byte(5000)、kb(128kb)、mb(10mb)
其他参数同上。
按照USBOSS的日志输出方式,可能看文件大小比较合适,每个日志文件10M-20M就差不多了。
6.4.1 指定debug日志
A useful technique is to enable full debug logging to track down a problem:
<log name='' level='finer' path='log/debug.log'
timestamp="[%H:%M:%S.%s]"
rollover-period='1h' rollover-count='1'/>
6.4.2 日志标准
Name
|
API
|
Meaning
|
off
|
|
turn off logging
|
severe
|
log.severe("...")
|
a serious failure, likely to prevent normal program execution
|
warning
|
log.warning("...")
|
a potential problem
|
info
|
log.info("...")
|
informational messages
|
config
|
log.config("...")
|
static configuration messages, meant to assist in debugging problems associated with particular configurations
|
fine
|
log.fine("...")
|
tracing information
|
finer
|
log.finer("...")
|
fairly detailed tracing message
|
finest
|
log.finest("...")
|
highly detailed tracing message
|
all
|
|
all messages should be logged
|
6.5 当出现内存耗没、或日志写的太快时,如果解决?
答:用top命令来查询一下全部进程的使用情况,发现有问题的进程,kill -9 processId。
6.6 当out of memory时,出现死锁进程,如果解决?
答: 首先用ps –ef|grep java查看进程命令,看系统内存使用情况。如果是存在死锁进程,可以通过kill -9 PID,来杀死它,然后重启。如果系统内存很小,可以对$RESION_HOME/bin/httpd.sh内的参数进行调整。
6.7 当resin启动时,如何指定java的内存大小?
1.Window下内存设置: -J"-server -Xms500m -Xmx1000m”
2.Linux配置: resin3/bin/httpd.sh 中的args。
6.8 Kill了指定的java进程后,resin它又自动的重启,怎么kill那?
答: 在httpd.sh文件中,有一个自动重启的perl脚本。可以通过ps –ef|grep java,来找出谁在调用java进程,发现perl进程在调用java,使用 ps –ef|grep perl,查找出来,先kill掉perl进程。然后再kill java进程。
6.9 查看resin是否是自动重启?
答: httpd.sh –h,中一个-no-auto-restart : disable automatic server restart,默认是自动重启的,可以指定这个启动参数,使得resin不自动重启。ps –ef|grep perl,看看这个进程是否是在启动状态。是否是让应用是否重启,可以根据具体情况来设定。更多信息,可以看wrapper.pl文件,搜索keepalive或auto-restart关键字,看它的初始参数值。
6.10 Resin不能启动,报java不能发现?
答:首先,检查java是否安装和是否在用户下的.bash_profile中进行了配置。
其次,如果安装和配置正确,再检查用户是否正确。如果用户是通过su to Change the effective user id and group id to that of USER. 例如:su –foo。这时执行shell命令:source或者. .bash_profile。
6.11 如何查看resin的命令参数解释?
答:查看命令参数httpd.sh –h, man httpd.sh,vi http.sh,
6.12 如何配置session的超时时间?
using session-config and session-timeout to control the number of sessions
<web-app id='/dir'>
<session-config>
<!-- 2 hour timeout -->
<session-timeout>120</session-timeout>
<session-max>4096</session-max>
</session-config>
</web-app>
6.13 Resin正常启动,DB中有用户,报用户不存在?
答:resin.conf中,一个conf只能配置一个<jndi-name>名称,并且这个名称必须是唯一的。否则, 前面的将覆盖前面的,所以导致不能登陆。
6.14 程序的建立连接数多时,系统死锁?
答:原因是resin.conf中,最大连接数配置的太少。这是可以调节到一个比较大的值。缺省为128个连接。
<max-connections> configures the maximum number of open connections allowed for Resin's database pool. Sites can use <max-connections> to throttle the number of database connections for an overloaded server. When
max-connections
is reached and an application calls
getConnection
, Resin will wait
connection-wait-time or until a connection is freed before allocating a new connection.
default 128
6.15 服务器上的resin启动不了?
答:首先要查看,log/ stderr.log,看看是什么原因。例如:resin-2.1.17用root用户启动过,那么就会在logs/access.log日志,当重新启动时,当向access.log文件中写东西时,将报错,因为是不同的用户建立的这个文件,需要首先删除这个文件。
7 总结和展望
a) 简单的总结前面知识
b) 今后的提高部分
8 参考资料
1.http://caucho.com
9 术语和附录
1.Resin:The Resin
® high-performance, open source application server features load balancing for increased reliability. Caucho's
QuercusTM。 is a fast, 100% Java implementation of the PHP language allowing developers to use PHP flexibility for the web interface and Java for stability
相关推荐
resin服务器配置指南,实现resin服务均衡。前台服务均衡
### Resin 服务器配置指南详解 #### 一、Resin 服务器简介与应用场景 Resin 是一款高性能且功能丰富的 Java 应用服务器和 Web 服务器,由 Caucho Technology 开发。它支持 Java Servlets、JavaServer Pages (JSP) ...
#### 四、Resin 4.0 的迁移指南 迁移至 Resin 4.0 可能涉及到从旧版本 Resin 或其他应用服务器(如 WebLogic)的迁移。此部分主要介绍了如何进行这些迁移操作,以及在迁移过程中可能遇到的一些已废弃的配置项。 ##...
Resin 是一款高性能且功能丰富的应用服务器,支持 Java 和 HTTP 服务。对于 Resin 3.0 来说,其 HTTPS 配置涉及到 OpenSSL 的安装、证书的生成以及 Resin 配置文件的修改等多个步骤。本文将详细介绍 Resin 3.0 中 ...
一旦在Eclipse中成功配置了Resin服务器,开发者就可以利用Eclipse的强大功能进行代码调试、性能分析等操作。例如,通过设置断点,可以在特定的代码行暂停执行,查看变量值、调用堆栈等信息;通过性能分析工具,可以...
在IT领域,服务器配置与开发环境的兼容性至关重要。本文将深入解析如何在Eclipse IDE中配置Resin应用服务器,以支持Java Web项目的开发与运行。Resin是一款高效且功能丰富的Java应用服务器,特别适合企业级应用程序...
1. **服务器配置文件**:主要由`conf/resin.xml`控制。在这里,您可以定义服务器的基本属性,如端口设置、JVM参数、应用上下文路径等。 2. **应用部署**:Resin支持WAR和EAR格式的应用部署。将应用文件放入`webapps...
- 运行`resinctl start`命令启动Resin服务器。如果一切正常,你应该能在控制台看到服务器启动的信息。 4. **部署Web应用** - 将你的Web应用打包成`.war`文件,然后将其复制到`webapps`目录下。Resin会自动检测到...
emobile移动服务器配置说明 本文档主要讲述emobile移动服务器的配置...emobile移动服务器配置说明主要涵盖了协同移动平台的安装、目录及文件安装、服务器设置和数据库设置等方面的内容,为用户提供了详细的配置指南。
在本文中,我们将详细探讨如何在Eclipse集成Resin服务器并进行调试。Eclipse作为一款强大的Java开发工具,虽然不直接支持Resin应用服务器的调试,但通过一些配置技巧,我们仍然可以实现这一功能。以下是一步一步的...
【标题】: "Resin服务器安装与配置指南" 【描述】: Resin是一款高效、轻量级的Java应用服务器,尤其适用于Linux操作系统。它在性能上相对于Tomcat有着显著优势,启动速度快,运行效率高,这使得Resin在Java Web应用...
2. "resin-4.0-admin.pdf" 很可能是Resin 4.0版本的管理员指南,详细阐述了Resin服务器的管理、监控和优化方法,包括启动、停止、升级、性能调优等操作。 3. "resin-4.0.16.zip" 是Resin服务器的具体版本,解压后...
在“Resin-install.rar”压缩包中的“Resin-install.pdf”可能是Resin的安装和配置指南,详细介绍了上述所有步骤和概念,适合初学者逐步学习。而“www.pudn.com.txt”可能是一个链接或者说明文件,用于提供更多的...
- **Resin Web 服务器配置** - 配置 Resin 作为独立的 Web 服务器,介绍如何设置静态资源、端口、安全策略等内容。 - **与 Apache 结合使用** - 如何将 Resin 与 Apache HTTP Server 集成,实现前端页面和后端服务...
关于压缩包"resin-3.0.22.zip",其中包含的文件和目录将构成Resin服务器的完整安装包。解压后,用户可以找到配置文件、启动脚本、库文件以及必要的文档,按照官方提供的指南进行安装和配置,即可启动和使用Resin ...
4. JMX管理:通过Java Management Extensions (JMX) 提供了全面的服务器监控和管理功能,使得系统管理员可以远程监控和调整服务器配置。 5. 数据源管理:Resin Pro 支持多种数据库连接池,如MySQL、Oracle等,确保...
本文将详细介绍两种常见的搭建方法:方案一采用JDK1.5搭配Resin3.0手动搭建,方案二则是通过集成开发环境Eclipse或MyEclipse配置Resin服务器。 **方案一:JDK1.5 + Resin3.0 纯手工搭建** 1. **安装JDK1.5**: 首先...
- **/resin-admin配置页签**:允许用户修改服务器的各项配置。 - **/resin-admin线程页签**:展示当前服务器中的所有线程状态。 - **/resin-admin CPU剖析页签**:提供CPU使用情况的分析工具。 - **/resin-admin堆...
在Resin群集环境中,多台Resin服务器通过负载均衡技术共同处理请求,提高系统的可用性和可扩展性。 2. **Oracle数据库**: Oracle是全球最受欢迎的商业数据库管理系统之一,尤其在大型企业级应用中广泛应用。...