殺掉執行超過5分鐘以上指定服務的程序

2021-08-26 15:33:01 字數 897 閱讀 6387

有個libreoffice服務,正常情況下執行幾秒鐘就會自動結束,但是有時候因為機器資源占用過多、或機器配置太低等原因會導致該程序僵死,這樣下次呼叫該業務時會有影響,所以需要將該服務執行時間超過5分鐘的程序殺掉。

1.通過ps獲取該服務的pid和執行時間;

2.判斷執行時間是否超過5分鐘(這裡轉換為300秒了);

3.根據判斷結果確定是否殺掉程序;

4.通過crontab定時執行該指令碼;

#!/usr/bin/bash

pro_name=libreoffice

username=`whoami`

interval=300

#pro=`ps -eo pid,user,etime,cmd | grep $ |grep -v grep | awk ''`

ps -eo pid,user,etime,cmd | grep $ |grep -v grep | awk '' | while read line

do #獲取程序pid

pid=`echo $line | awk ''`

#獲取程式執行時間,單位為秒,超過60分鐘則設定為預設值99999999999999

elapsed=`echo $line | awk -f: 'begin

else if(nf>=2)else

}'`#判斷程式執行的時間是否超過指定週期$interval

if [ $elapsed -ge $interval ];then

echo "$line"

kill -9 $pid

fidone

#每隔2分鐘執行一次

*/2 * * * * sh /root/kill_service.sh

5分鐘開通雲服務

從雲計算的技術標準到服務標準,標準的建立將有利於規範處於初級階段的中國雲計算產業的健康發展。華雲資料開行業先河,以 5分鐘快速響應服務新標準 實現了差異化競爭,進一步確立了自己的優勢。在雲計算的概念剛剛出現時,人們已經在熱議,圍繞雲計算應該建立一系列標準。只不過當時,大家更關注的是雲計算的技術標準。...

執行外掛程式超過2分鐘超時錯誤,如何辦?

我們都知道,預設情況下dynamics 365執行的外掛程式有2分鐘的限制,若達到2分鐘還沒有執行完畢,會觸發異常,類似如下 system.timeoutexception couldn t complete execution of the custom activity plug in with...

如何令java執行緒池中線程超過5分鐘時該執行緒自殺

用雙線程實現。他殺。每當乙個執行緒從池中被取出的時候,給該執行緒分配乙個uuid用於標誌此次任務,同時啟動另外乙個殺手執行緒開始計時 即sleep 並且該殺手執行緒持有同樣uuid用於尋找要殺死的目標。當殺手覺醒後即刻檢查 1.如果目標執行緒已歸還到池中,說明目標執行緒在規定時間前已結束。則不做任何...