Windows 服務

一、什麼是 Windows 服務

Windows 服務是一種在背景執行、負責特定工作的程式,主要特性如下:

  1. 沒有圖形介面,和一般桌面 EXE 程式不同;
  2. 開機自動啟動,可跟隨作業系統執行,不需要使用者登入;
  3. 常駐背景,在幕後持續提供功能;
  4. 偵錯方式特殊:正式環境透過服務管理員執行,開發階段可使用命令列啟動與停止。

使用場景

適合需要長時間背景執行、排程執行、不需要人為互動的任務:

  • 排程工作(定時資料蒐集、定時同步、爬取網路資訊)
  • 背景監聽服務(Socket 服務、訊息消費程式)
  • 系統常駐代理、監控程式

開發痛點

Windows 服務本身的程式邏輯並不複雜,但操作不當很容易產生問題:

  • 沒有主控台視窗,日誌排查與偵錯相當麻煩
  • 以系統帳號執行(本機系統/本機服務),權限、工作目錄、網路存取都和一般使用者程式有差異;
  • 處理不好很容易發生啟動失敗、程式閃退、功能異常。

很多日常使用的桌面程式,背後都會有一支 Windows 服務在背景運作。

二、查看電腦中的 Windows 服務

  1. 快捷鍵 Win + R,輸入 services.msc 按下 Enter,直接打開【服務(本機)】管理工具;
  2. 這個介面可以看到本機所有已安裝的服務,包含資訊:
    • 服務名稱、描述、目前執行狀態
    • 啟動類型:自動/手動/已停用/自動(延遲啟動)
    • 登入身分:執行帳號(本機系統、本機服務、網路服務等)

我們自己開發的程式打包註冊之後,就會顯示在這個清單裡。

1. 服務啟停常用指令(管理員 CMD / PowerShell)

# 啟動服務
net start 服務名稱
# 停止服務
net stop 服務名稱Code language: PHP (php)

簡單來說,Windows 服務是一種特殊程式。它既不是主控台程式,也不是網站程式,更不是一般桌面程式。它在背景執行,沒有任何介面,連主控台視窗都沒有,默默在後台提供服務。可以跟作業系統一起開機啟動,執行效能很好。

Windows 服務

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *