導航:首頁 > 程序命令 > centosapache重啟命令

centosapache重啟命令

發布時間:2024-09-13 06:40:16

① centos怎樣編寫tomcat宕機自動重新啟動

一、設置tomcat定時啟動

1,首先將tomcat注冊為服務,先打開tomcat的bin目錄下service.bat文件,修改下面的值,這是sevvice的注冊名稱和顯示名稱,一般可使用默認值。

set SERVICE_NAME=Tomcat7
set PR_DISPLAYNAME=Apache Tomcat

【然後修改jvm大小,搜索到--JvmMs 128 --JvmMx 256 進行修改,因為做成服務啟動,啟動的時候就不會用到 catalina.bat,也就不會讀取裡面的jvm設置了。】(可選,可以不設置)

然後運行cmd命令窗口,cd 到tomcat的bin目錄下,運行下面的命令
service.bat install 運行成功過後,會提示服務已經安裝成功。

2,製作重啟腳本restart.bat,文件內容如下
net stop Tomcat7 net start Tomcat7

3,利用控制面板裡面的「任務計劃」設置第2步的腳本運行時間計劃

4,如果想刪除服務,也很簡單,先把服務停掉,然後在cmd窗口運行下面的命令即可,後面那個Tomcat7是服務名。
sc delete Tomcat7

需要注意的是,需要先把服務停掉,才能一次刪除成功,或者刪除之後再停止服務,就會發現服務已經刪除成功了。

二、監聽tomcat

只要運行start.bat即可,相關配置在config.properties文件中,默認即可, 如果服務名不對應就修改關閉和啟動命令的服務名即可:net start 【Tomcat7】括弧中服務名,然後運行start.bat

下面是具體的監聽代碼:

首先是監聽類TomcatMonitor .java

[java] view plain
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Properties;
/**
* @describe:TomcatMonitor.java
*
* @date 2016-7-4
* @author liuweilong
*/
public class TomcatMonitor implements Runnable{

String start=""; //系統命令 啟動
String stop=""; //系統命令 關閉
String testHttp=""; //測試連接地址
int testIntervalTime=1;//測試連接間隔時間,單位為秒
int waitIntervalTime=2; //等待測試間隔時間,單位為秒
int testTotalCount=5; //測試連接總次數

Thread thread=null;

public TomcatMonitor(){
InputStream in = TomcatMonitor.class.getResourceAsStream("config.properties");
Properties p = new Properties();
try {
p.load(in);
stop=p.getProperty("stop");
start=p.getProperty("start");
testHttp=p.getProperty("testHttp");
testIntervalTime=Integer.parseInt(p.getProperty("testIntervalTime"));
waitIntervalTime=Integer.parseInt(p.getProperty("waitIntervalTime"));
testTotalCount=Integer.parseInt(p.getProperty("testTotalCount"));
} catch (Exception e) {
e.printStackTrace();
}

System.out.println("*******************初始化成功!*******************");

thread=new Thread(this);
thread.start();
}

public void run() {
System.out.println("正在監控中...");
int testCount=0;
while(true){
testCount=0;
testCount++;
boolean isrun=test();
System.out.println("正在啟動測試連接,嘗試連接次數為:"+testCount+",結果為:"+(isrun==false?"失敗.":"成功!"));
while(!isrun){
if(testCount>=testTotalCount)break;
try {
thread.sleep(testIntervalTime*1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
testCount++;
System.out.println("正在啟動測試連接,嘗試連接次數為:"+testCount+",結果為:"+(isrun==false?"失敗.":"成功!"));
isrun=test();
}

if(!isrun){
try{
//關閉tomcat服務
Process proc = Runtime.getRuntime().exec(stop);
thread.sleep(5000);
//啟動tomcat服務
System.out.println("測試連接失敗,正在重啟tomcat");
Process p=Runtime.getRuntime().exec(start);
System.out.println("重啟tomcat成功");
}catch(Exception e){
e.printStackTrace();
System.out.println("重啟tomcat異常,請查看先關錯誤信息。。。。。");

}
}

try {
thread.sleep(waitIntervalTime*1000);
} catch (InterruptedException e) {
e.printStackTrace();
}

isrun=test();
}
}

public boolean test(){

URL url=null;
try {
url = new URL(testHttp);
} catch (MalformedURLException e) {
e.printStackTrace();
}
try {
URLConnection urlConn=url.openConnection();
urlConn.setReadTimeout(15000);
BufferedReader reader = new BufferedReader(new InputStreamReader( urlConn.getInputStream())); //實例化輸入流,並獲取網頁代碼
String s;
while ((s = reader.readLine()) != null) {
return true;
}
} catch (Exception e) {
return false;
}
return false;
}

public static void main(String[] args) throws Exception{
TomcatMonitor tm=new TomcatMonitor();
}

}

然後是對應的配置文件config.properties:

[plain] view plain
#系統命令 啟動
start=net start Tomcat7

#關閉
stop = net stop Tomcat7

#測試連接總次數
testTotalCount=3

#連接失敗時,再次檢測時間間隔,單位為秒
testIntervalTime=3

#連接超時時間,即多少秒tomcat沒響應視為宕機,單位為秒
connectionTimeout=15

#tomcat啟動時間,防止在tomcat尚未啟動完成的時候,程序又去檢驗tomcat狀態,造成尚未啟動完成又重新啟動,單位為秒
tomcatStartTime=600

#測試連接地址
testHttp=http://127.0.0.1:8080

#正常情況下,每次檢測間隔時間,單位為秒
waitIntervalTime=30

最後是啟動的start.bat:

[plain] view plain
java -cp . TomcatMonitor

② centos7的服務啟動命令是啥

service 服務名 start 不過,後面centos7 ,改成用systemctl了
在 centos7 版本中的 各項服務啟動命令:
服務管理命令
1、Apache 服務管理命令啟動:
systemctl start httpd關閉:
systemctl stop httpd重啟:
systemctl restart httpd狀態:
systemctl status httpd

閱讀全文

與centosapache重啟命令相關的資料

熱點內容
linuxhome分區大小 瀏覽:703
如何查詢到接收郵件伺服器 瀏覽:299
料音APP怎麼找 瀏覽:39
怎麼登錄個稅ApP 瀏覽:143
linux網路編程send 瀏覽:903
md5加密演算法php 瀏覽:998
電腦建立了文件夾怎麼編輯內容 瀏覽:959
安卓微信如何轉接蘋果微信上 瀏覽:458
蘭州初學數控編程培訓 瀏覽:887
騰訊程序員很可愛 瀏覽:999
壓縮機有泄壓的嗎 瀏覽:143
壓縮空氣支管需要做氣密性實驗嗎 瀏覽:258
問道達飛注冊工具源碼 瀏覽:913
平安信用卡app怎麼激活 瀏覽:138
單張文件夾力架 瀏覽:843
android自定義jar 瀏覽:548
APP怎麼安裝的系統 瀏覽:924
程序員那麼可愛哪部小說改編的 瀏覽:138
免費解壓軟體官方免費下載 瀏覽:92
程序員做bug被女人懟 瀏覽:808