设为首页 加入收藏

TOP

Java Service Wrapper使用总结(一)
2014-11-24 07:53:46 】 浏览:3784
Tags:Java Service Wrapper 使用 总结

1.概述

Java Service Wrapper可为应用程序提供以下功能:

(1)把应用安装为Windows服务或Linux守护进程;

(2)监测JVM运行情况,对于程序原因或内存溢出导致的虚拟机崩溃实现自动重启;

(3)记录运行日志;

2. Java Service Wrapper目录结构

以下列出需要复制到应用的文件:

{WRAPPER_HOME}

--/bin/wrapper

-- /src/bin/sh.script.in

--/src/conf/wrapper.conf.in

--/lib/libwrapper.so

--/lib/wrapper.jar

Java Service Wrapper与应用集成时,需要把上述文件复制到应用中相应的目录,详情请见以下的两个集成。

3.使用WrapperSimpleApp进行集成

WrapperSimpleApp是Java Service Wrapper中最简单的集成方式,在该例子中,我们把它集成到我们的ams-collector-verify抓拍程序中。

3.1 ams-collector-verify目录结构

{ams-collector-verify}

--/bin

--/etc

--/lib

--logs

3.2 复制Java Service Wrapper文件到应用程序

(1)复制/bin/wrapper到应用的bin目录;

(2)复制/src/bin/sh.script.in到应用的bin目录;

(5)复制/src/conf/wrapper.conf.in到应用的etc目录下;

(6)复制/lib/libwrapper.so到应用的lib目录;

(7)复制/lib/wrapper.jar到应用的lib目录;

3.3 编辑sh.script.in文件

该文件可以看作是入口点,启动应用也是使用该脚本,按以下步骤进行操作:

(1)重命名sh.script.in

mv sh.script.in collector-verify;

(2)赋执行权限

例如在Linux下:chmod 755 collector-verify;

(3)编辑collector-verify属性

#应用缩写

APP_NAME=collector-verify

#应用全名

APP_LONG_NAME=ams-collector-verify

#wrapper配置文件所在位置

WRAPPER_CONF=../etc/wrapper.conf

3.4编辑wrapper.conf.in文件

所有java service wrapper配置项均在此设置,按以下步骤进行设置:

(1)重命名wrapper.conf.in

mv wrapper.conf.in wrapper.conf

(2)定位启动应用的Java命令

当我们知道应用是如何启动的,我们才能将启动所需的参数,classpath及依赖包写入我们的wrapper.conf中;

在ams-collector-verify应用中,启动应用的java程序如下:

/usr/java/jdk1.6.0_13/jre/bin/java -classpath

/usr/local/ams-collector-verify/bin/commons-launcher.jar:

/usr/local/ams-collector-verify/etc:

/usr/local/ams-collector-verify/lib/ams-collector-verify-1.0.jar:

...

com.ce.collector.app.SnapApp

从上面的命令可以看到,它包含两方面的信息:

1)classpath参数加载了lib目录下的所有jar包;

2)com.ce.collector.appSnapApp类是程序的入口点。

(3)编辑wrapper.conf属性

#设置JAVA_HOME

set.JAVA_HOME=/usr/java/jdk1.6.0_13

#动态链接库放置在JAVA_HOME/bin下,设置LD_LIBRARY_PATH变量

set.LD_LIBRARY_PATH=%JAVA_HOME%/bin:%LD_LIBRARY_PATH%

#设置java命令路径

wrapper.java.command=%JAVA_HOME%/bin/java

#设置classpath路径,设置的内容包括wrapper.jar,应用配置文件所在的路径,应启动时classpath包含的所有信息

wrapper.java.classpath.1=../lib/wrapper.jar

wrapper.java.classpath.2=../etc

wrapper.java.classpath.3=../lib/ams-collector-verify-1.0.jar

...

#wrapper.DLL及libwrapper.so所在的位置

wrapper.java.library.path.1=../lib

#应用程序启动的类(带有main方法的类)

wrapper.app.parameter.1=com.ce.collector.app.SnapApp

#设置控制台的名称

wrapper.console.title=ams-collector-verify

#服务名称

wrapper.name=ams-collector-verify

#服务的显示名称

wrapper.displayname=ams-collector-verify

#服务的描述信息

wrapper.description=collector-verify for ams system

配置完成后,回到应用的bin目录下,试试利用collectory-verify脚本启动应用

[root@suhao03 etc]# cd ../bin

[root@suhao03 bin]# ./collector-verify start

Starting ams-collector-verify...

Waiting for ams-collector-verify....

running: PID:8445

可以到logs目录进一步查看应用启动的情况

[root@suhao03 bin]# cd ../logs/

[root@suhao03 logs]# tail -f wrapper.log

停止应用可执行以下命令

[root@suhao03 bin]# ./collector-verify stop

4.使用WrapperStartStopApp进行集成

Tomcat应用服务器在启动时会开启一个服务端socket等待连接,而关闭时则通过连接触发应用的停止,类似这种应用则通过WrapperStartStopApp实现。

4.1Tomcat的目录结构

{tomcat_home}

--/bin

--/conf

--/logs

--/temp

--/webapps

--/work

4.2复制Java Service Wrapper文件到Tomcat

(1)复制/bin/wrapper到Tomcat的bin目录;

(2)复制/src/bin/s

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇java swing应用(3):画当前月份的.. 下一篇java学习之路---java学习的方法和..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目