最近写了一下windows下监控tomcat的小应用,主要功能就是当发现tomcat挂掉的时候就会去重启服务,可以省了很多事,但是在linux下还不行,等我研究通了再发上来吧,呵呵。。
下面是主要的代码块
//线程
public void run() {
//启动被监控程序
try {
File file = new File("");
String path=file.getAbsolutePath().replaceAll("\\\\","//");
readTxt(path+"//bin//test.txt","");
if ("true".equals(flag.trim())) {
URL url = new URL(myUrl);
conn = (HttpURLConnection) url.openConnection();
conn.getResponseCode();
System.out.println("页面已经启动了.......");
}else{
System.out.println("flag=false,关闭。。。。。。");
time.cancel();//取消监控
}
} catch (MalformedURLException e1) {
e1.printStackTrace();
} catch (IOException e) {
System.out.println("页面已经挂掉了.......");
try {
Runtime.getRuntime().exec(tomcatCloseUrl);
System.out.println("tomcat关闭.......");
Runtime.getRuntime().exec(tomcatOpenUrl);
System.out.println("tomcat打开.......");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
//启动方法
public static void startThread(int time1, int time2) {
time = new Timer();
ReadSourceAndRun w = new ReadSourceAndRun();
time.schedule(w, time1, time2);
}
这里还需要一个资源文件(txt格式),从这个文件里读取执行命令,如:停止执行、开始执行
读取文件的主要代码
/**
* 读取文本文件内容
* @param filePathAndName 带有完整绝对路径的文件名
* @param encoding 文本文件打开的编码方式
* @return 返回文本文件的内容
*/
public static String readTxt(String filePathAndName, String encoding)
throws IOException {
encoding = encoding.trim();
StringBuffer str = new StringBuffer("");
String st = "";
try {
FileInputStream fs = new FileInputStream(filePathAndName);
InputStreamReader isr;
if (encoding.equals("")) {
isr = new InputStreamReader(fs);
} else {
isr = new InputStreamReader(fs, encoding);
}
BufferedReader br = new BufferedReader(isr);
try {
String data = "";
while ((data = br.readLine()) != null) {
str.append(data + " ");
if(data.startsWith("url=")){
myUrl=data.substring(data.indexOf("http"));;
}
if(data.startsWith("tomcatCloseUrl=")){
tomcatCloseUrl=(data.substring(data.indexOf("tomcatUrl")+16));
}
if(data.startsWith("tomcatOpenUrl=")){
tomcatOpenUrl=(data.substring(data.indexOf("tomcatOpenUrl")+14));
}
if(data.startsWith("flag=")){
flag=data.substring(data.indexOf("flag")+5);
}
fs.close();
isr.close();
}
} catch (Exception e) {
str.append(e.toString());
}
st = str.toString();
} catch (IOException es) {
st = "";
}
return st;
}
这是一个web应用,大家可以把附件下下来看看。
分享到:
相关推荐
针对"Windows平台下监控Tomcat运行时服务假死或异常"的问题,我们可以利用各种工具和策略来实现。一种常见的方法是编写脚本,结合Windows的任务计划器定期检查Tomcat的状态。这可以通过检查Tomcat的主进程是否仍在...
【标题】"tomcat6到8windows版本.zip" 涵盖了三个不同版本的Apache Tomcat,分别是Tomcat 6、Tomcat 7和Tomcat 8.5,这些都是针对Windows操作系统设计的64位版本。Apache Tomcat是一款开源的Java Servlet容器,主要...
【标题】:“Tomcat监控及自动重启” 在Java Web开发中,Tomcat是一个广泛应用的开源应用服务器,负责运行Servlet和JSP应用。监控Tomcat的状态和自动重启是系统管理员日常维护工作的重要部分,确保服务的稳定性和高...
在配置Tomcat时,你可能需要修改`conf/server.xml`文件来设置端口号、连接器、上下文路径等。同时,确保你的Java环境已经正确安装,并且`JAVA_HOME`环境变量指向了Java的安装目录。Tomcat依赖Java运行,所以这一点至...
- **日志监控**:定期检查`logs`目录下的日志文件,排查错误和警告信息。 - **内存调整**:根据服务器资源和应用负载,调整Tomcat的JVM内存设置,一般在`bin/catalina.sh`或`bin/catalina.bat`中通过`CATALINA_OPTS`...
### Tomcat 7 在Windows环境下以Service方式启动的配置与启动参数详解 #### 一、引言 在实际的企业级应用开发与部署过程中,Tomcat作为一款轻量级且功能强大的应用服务器,被广泛应用于Java Web项目的运行环境。...
Tomcat可以通过多种方式优化,如调整JVM参数(内存分配、垃圾回收策略等)、启用连接器(例如NIO或APR)以提升并发性能、使用负载均衡器等。 总之,Apache Tomcat 8.5.37 Windows x86版本是一个强大的Java Web...
9. **监控与故障排查**:利用`jmxremote`和`JConsole`等工具,可以监控Tomcat的运行状态,包括内存使用、线程状态、请求统计等,以便于调试和性能优化。 10. **版本更新与维护**:保持Tomcat及时更新,以获得最新的...
1. **创建Service.bat**:在Tomcat的bin目录下,新建一个名为`Service.bat`的批处理文件。这个文件将用于在Windows中注册Tomcat为服务。 2. **编辑Service.bat**:使用文本编辑器打开`Service.bat`文件,输入以下...
在本文中,我们将深入探讨Apache Tomcat 8.5.99这一特定版本,尤其关注其在Windows 64位环境下的使用。 **1. Apache Tomcat 简介** Apache Tomcat 是一个轻量级的Web服务器和应用服务器,由Apache软件基金会开发并...
2. **Windows兼容性**: 这个64位版本的Tomcat针对Windows操作系统进行了优化,确保在Windows环境下能高效运行,支持多线程处理和大内存分配,适合处理高流量的Web应用。 3. **安装与配置**: 解压zip文件后,用户...
Apache Tomcat 8.5.32 是一个广泛使用的开源软件,它是一个Java Servlet...以上是关于Apache Tomcat 8.5.32在64位Windows系统上的安装和使用的基本知识,实际操作中,开发者还需要根据具体需求进行更深入的配置和优化。
例如,在Windows平台下,可以在catalina.bat文件中添加以下配置参数: set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8849 -Dcom.sun.management.jmxremote....
mod_jk是Apache与Tomcat之间的通信桥梁,它实现了Apache与Tomcat之间的连接器(Connector)功能。 二、Apache HTTP Server安装与配置 1. 下载并安装Apache HTTP Server:首先,你需要从Apache官网下载适合Windows...
- 这个版本的Tomcat确保了在Windows操作系统上的优化性能,特别是64位环境下,能够充分利用系统资源,提高运行效率。 2. **Apache Tomcat 10.0.0**: - Apache Tomcat 10.0.0是一个重要的更新,它引入了许多新...
Tomcat是Apache软件基金会下的一个开源项目,是一个广泛使用的Java Servlet容器,特别是对于那些基于Java的Web应用程序。Tomcat7和Tomcat8是其两个重要的版本,分别代表了不同的开发阶段和技术演进。 Tomcat7是在...
综上所述,"apache-tomcat-8.5.54-windows-x64.zip"是一个官方提供的64位Windows版本的Tomcat服务器,它为开发者提供了在Windows环境下运行和部署Java Web应用的平台。正确安装和配置后,结合其强大的社区支持,可以...
其中,“bin”目录包含了启动和停止Tomcat的服务脚本,如`startup.bat`和`shutdown.bat`,在Windows环境下可以直接运行。"conf"目录存储了Tomcat的配置文件,如`server.xml`,它是核心配置文件,定义了服务器的各个...
【标题】"64位windows tomcat6"指的是在64位操作系统的Windows环境下运行的Apache Tomcat 6版本。Apache Tomcat是一款开源的应用服务器,主要用于处理Java Servlet和JavaServer Pages(JSP)技术,是Java EE应用中的...