【運維】利用任務計劃程序定時重啟 nssm 服務 | Windows 服務每日定時維護實踐

🚀 利用任務計劃程序定時重啟 nssm 服務 | Windows 服務每日定時維護實踐

一、前言

在 Windows 系統中,nssm(Non-Sucking Service Manager) 是一個非常好用的工具,可以將任意可執行程序注冊為系統服務。很多運維場景下,我們會使用 nssm 注冊 Node.js、Python、Jar 或其它腳本進程為服務,確保它們開機自啟動并穩定運行。

但服務跑久了偶爾會內存泄漏、網絡異常等,這時候就需要定時重啟服務。

本文將手把手教你:

  • 如何創建一個自動重啟服務的腳本
  • 如何使用“任務計劃程序”定時執行
  • 實現 每天 00:00、02:00、03:00、04:00 自動重啟服務

二、準備工作

? 你已經完成以下準備:

  • 使用 nssm 注冊了某個服務,例如服務名為:yoursevicename
  • 確認該服務可以手動用命令控制:
    net stop yoursevicename
    net start yoursevicename
    

三、創建服務重啟腳本

我們建議用 .bat 批處理文件實現服務的重啟邏輯,這樣邏輯清晰,復用方便。

📄 文件內容:restart_yoursevicename.bat

@echo off
echo ========================================
echo 正在重啟服務:yoursevicename
echo 停止服務中...
net stop yoursevicenameecho 等待 5 秒...
timeout /t 5 /nobreak >nulecho 啟動服務中...
net start yoursevicenameecho 服務重啟完成。
echo ========================================

📌 注意:

  • timeout /t 5 是為了確保服務有足夠時間完全退出
  • 如果你的服務退出很慢,可以延長秒數為 1015

將該文件保存到如 C:\scripts\restart_yoursevicename.bat


四、創建任務計劃(Task Scheduler)

1?? 打開任務計劃程序

  • 開始菜單 → 搜索 任務計劃程序 → 打開

2?? 創建新任務

  • 點擊右側“創建任務”(不是“基本任務”)

3?? 一般信息

  • 名稱:定時重啟 yoursevicename 服務
  • 描述:用于每天凌晨定時重啟 nssm 服務

4?? 觸發器設置

  • 點擊“觸發器” → 新建
  • 設置時間為每天 00:00,重復任務間隔可以設置為 1 天

👉 如果你要多個時間(如 02:00、03:00、04:00),可以再添加 3 個觸發器。

5?? 操作設置

  • 操作:啟動程序
  • 程序或腳本:C:\scripts\restart_yoursevicename.bat

6?? 條件 & 設置(可選)

  • 條件:取消“只有在使用交流電時”
  • 設置:勾選“如果任務失敗,重新啟動間隔”等容錯選項

五、驗證效果

你可以手動點擊任務 → “運行” 來驗證是否能正常執行腳本。也可以查看服務日志(或腳本輸出)確認是否成功重啟。


六、進階方案(PowerShell 版本)

如果你喜歡用 PowerShell,也可以這樣寫:

📄 PowerShell 腳本 restart_yoursevicename.ps1

Write-Host "Stopping service yoursevicename..."
Stop-Service -Name "yoursevicename" -ForceStart-Sleep -Seconds 5Write-Host "Starting service yoursevicename..."
Start-Service -Name "yoursevicename"Write-Host "Service restarted successfully."

然后在任務計劃中運行:

powershell -ExecutionPolicy Bypass -File "C:\scripts\restart_yoursevicename.ps1"

七、總結

通過本文方法,你可以輕松實現在 Windows 下定時重啟任何 nssm 注冊的服務,有效預防進程異常、內存泄漏、網絡堵塞等問題,提升服務穩定性。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/77657.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/77657.shtml
英文地址,請注明出處:http://en.pswp.cn/web/77657.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MATLAB小試牛刀系列(1)

問題描述 某機床廠生產甲、乙兩種機床,每臺機床銷售后的利潤分別為 4 千元與 3 千元。生產甲機床需用 A、B 機器加工,加工時間分別為每臺 2h 和每臺 1h;生產乙機床需用 A、B、C 三種機器加工,加工時間均為每臺 1h。若每天可用于加…

云原生周刊:Kubernetes v1.33 正式發布

開源項目推薦 Robusta Robusta 是一個開源的 K8s 可觀測性與自動化平臺,旨在增強 Prometheus 告警的智能化處理能力。它通過規則和 AI 技術對告警進行豐富化處理,自動附加相關的 Pod 日志、圖表和可能的修復建議,支持智能分組、自動修復和高…

React速通筆記

相關視頻: 黑馬程序員前端React18入門到實戰視頻教程,從reacthooks核心基礎到企業級項目開發實戰(B站評論、極客園項目等)及大廠面試全通關_嗶哩嗶哩_bilibili 一、React介紹 React由Meta公司開發,是一個用于 構建W…

人工智能與機器學習:Python從零實現K-Means 算法

🧠 向所有學習者致敬! “學習不是裝滿一桶水,而是點燃一把火。” —— 葉芝 我的博客主頁: https://lizheng.blog.csdn.net 🌐 歡迎點擊加入AI人工智能社區! 🚀 讓我們一起努力,共創…

【神經網絡與深度學習】訓練集與驗證集的功能解析與差異探究

引言 在深度學習模型的訓練過程中,訓練集和驗證集是兩個關鍵組成部分,它們在模型性能的提升和評估中扮演著不可替代的角色。通過分析這兩者的區別和作用,可以幫助我們深入理解模型的學習過程和泛化能力,同時為防止過擬合及優化超…

Macos m系列芯片環境下python3安裝mysqlclient系列問題

最近學習python3,在安裝mysqlclient的時候遇到了一些問題,直接使用哦pip install mysqlclient 直接報錯了,記錄一下解決方案。 環境信息 設備:Macbook Pro m1 系統:macos Sequoia 15.3.2 最終成功的python版本&#xf…

微信小程序-van-uploader的preview-size

preview-size支持數組格式 修改前修改后1、升級微信小程序里面的van版本:2、 重新構建npm3、重啟微信開發工具 修改前 引用van組件的上傳文件,設置預覽圖尺寸,剛開始設置的是preview-size“140”,出來的效果就是一個正方形。 修改后 1、升級…

2. 第一個網頁:前端基礎入門

第一個網頁:前端基礎入門 一、網頁文件基礎認知 1. 文件擴展名 .htm 或 .html 均為網頁文件后綴,二者功能完全一致擴展名隱藏方法 系統設置 → 文件夾選項 → 查看 → 取消勾選「隱藏已知文件類型的擴展名」 二、前端發展簡史 1. 瀏覽器戰爭與標準混…

云原生--核心組件-容器篇-7-Docker私有鏡像倉庫--Harbor

1、Harbor的定義與核心作用 定義: Harbor是由VMware開源的企業級容器鏡像倉庫系統,后捐贈給 CNCF (Cloud Native Computing Foundation)。它基于Docker Registry擴展了企業級功能,用于存儲、分發和管理容器鏡像(如Docker、OCI標準…

Java項目與技術棧場景題深度解析

Java項目與技術棧場景題深度解析 在互聯網大廠Java求職者的面試中,經常會被問到關于Java項目或技術棧的場景題。本文通過一個故事場景來展示這些問題的實際解決方案。 第一輪提問 面試官:馬架構,歡迎來到我們公司的面試現場。請問您對Java…

SpringMVC 靜態資源處理 mvc:default-servlet-handler

我們先來看看效果,當我把這一行注釋掉的時候&#xff1a; 我們來看看頁面&#xff1a; 現在我把注釋去掉&#xff1a; 、 可以看到的是&#xff0c;這個時候又可以訪問了 那么我們就可以想&#xff0c;這個 <mvc:default-servlet-handler />它控制著我們頁面的訪問…

【leetcode】最長公共子路徑問題

滾動hash 滾動哈希&#xff08;rolling hash&#xff09;也叫 Rabin-Karp 字符串哈希算法&#xff0c;它是將某個字符串看成某個進制下的整數&#xff0c;并將其對應的十進制整數作為hash值。 滾動hash算法的推導 假設有一個長度為n的數組a[0],a[1],a[2],…a[n-1]&#xff0…

【Linux網絡】:套接字之UDP

一、UDP和TCP協議 TCP &#xff08;Transmission Control Protocol 傳輸控制協議&#xff09;的特點&#xff1a; 傳輸層協議有連接&#xff08;在正式通信前要先建立連接&#xff09;可靠傳輸&#xff08;在內部幫我們做可靠傳輸工作&#xff09;面向字節流 UDP &#xff08;U…

React19 useOptimistic 用法

用法 樂觀更新 發起異步請求時&#xff0c;先假設請求會成功立即更新 UI 給用戶反饋若請求最終失敗&#xff0c;再將 UI 恢復到之前的狀態 const [optimisticState, addOptimistic] useOptimistic(state, updateFn) 參數 state&#xff1a;實際值&#xff0c;可以是 useSta…

Deepseek-v3+cline+vscode java自動化編程

1、Deepseek DeepSeek 充值后&#xff0c;創建apikey 2、vscode Visual Studio Code - Code Editing. Redefined 3、下載插件cline 4、配置deepeseek-v3 的密鑰到cline 5、不可用 在開始的幾次調用能正常使用起來&#xff0c;用了幾次后&#xff0c;不能使用了&#xff0c;請求…

數據分析案例:環境數據分析

目錄 數據分析案例&#xff1a;環境數據分析1. 項目背景2. 數據加載與預處理2.1 數據說明2.2 讀取與清洗 3. 探索性數據分析&#xff08;EDA&#xff09;3.1 時序趨勢3.2 日內變化3.3 氣象與污染物相關性 4. 特征工程4.1 時間特征4.2 滯后與滾動統計4.3 目標變量 5. 模型構建與…

網絡原理 - 8

目錄 補充 網絡層 IP 協議 基本概念&#xff1a; 協議頭格式 地址管理 如何解決 IP 地址不夠用呢&#xff1f;&#xff1f;&#xff1f; 1. 動態分配 IP 地址&#xff1a; 2. NAT 機制&#xff08;網絡地址映射&#xff09; 3. IPv6 網段劃分 一些特殊的 IP 地址 …

向量檢索新選擇:FastGPT + OceanBase,快速構建RAG

隨著人工智能的快速發展&#xff0c;RAG&#xff08;Retrieval-Augmented Generation&#xff0c;檢索增強生成&#xff09;技術日益受到關注。向量數據庫作為 RAG 系統的核心基礎設施&#xff0c;堪稱 RAG 的“記憶中樞”&#xff0c;其性能直接關系到大模型生成內容的精準度與…

dify對接飛書云文檔,并且將圖片傳入飛書文檔

前面講了如何讓dify展示圖片&#xff0c;但是如果想讓智能體回答的帶圖片的內容生成個文檔該怎么弄呢&#xff1f;今天來實踐一下。 dify工具帶的有飛書云文檔&#xff0c;正好&#xff0c;咱們就利用飛書云文檔。 1、首先配置飛書云文檔的key跟secret 注意要開頭左側的權限&a…

Linux系統之設置開機啟動運行桌面環境

Linux 開機運行級別介紹與 Ubuntu 桌面環境配置指南 一、Linux 開機運行級別(Runlevel) 在傳統的 Linux 系統(如 SysV init 初始化系統)中,運行級別定義了系統啟動時加載的服務和資源。常見的運行級別如下: 運行級別模式用途0Halt(停機模式)關閉系統1Single User Mode…