> 백엔드 개발 > 파이썬 튜토리얼 > Python 스크립트를 Windows 서비스로 실행할 수 있습니까?

Python 스크립트를 Windows 서비스로 실행할 수 있습니까?

Mary-Kate Olsen
풀어 주다: 2024-12-04 09:44:14
원래의
201명이 탐색했습니다.

Can Python Scripts Be Run as Windows Services?

Python 스크립트를 Windows 서비스로 실행

Python으로 서비스 기반 시스템을 개발하는 과정에서 이것이 가능한지에 대한 의문이 제기됩니다. Python 스크립트를 Windows 서비스로 실행합니다. 이 기사에서는 이 질문을 다루고 포괄적인 답변을 제공합니다.

실제로 ActivePython에 포함된 pythoncom 라이브러리를 활용하거나 pywin32 확장을 통해 Python 프로그램을 Windows 서비스로 호스팅하는 것이 가능합니다. 이 프로세스를 설명하려면 기본 서비스에 대한 다음 코드 뼈대를 고려하십시오.

import win32serviceutil
import win32service
import win32event
import servicemanager
import socket

class AppServerSvc (win32serviceutil.ServiceFramework):
    _svc_name_ = "TestService"
    _svc_display_name_ = "Test Service"

    def __init__(self,args):
        win32serviceutil.ServiceFramework.__init__(self,args)
        self.hWaitStop = win32event.CreateEvent(None,0,0,None)
        socket.setdefaulttimeout(60)

    def SvcStop(self):
        self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)
        win32event.SetEvent(self.hWaitStop)

    def SvcDoRun(self):
        servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,
                              servicemanager.PYS_SERVICE_STARTED,
                              (self._svc_name_,''))
        self.main()

    def main(self):
        pass

if __name__ == '__main__':
    win32serviceutil.HandleCommandLine(AppServerSvc)
로그인 후 복사

main() 함수에 사용자 정의 코드를 삽입합니다. 일반적으로 에 설정된 플래그를 모니터링하여 중단할 수 있는 무한 루프를 배포합니다. SvcStop 방법.

또한 Windows는 서비스 관리자를 통해 서비스 존재에 대한 경고를 받습니다. 서비스 콘솔(services.msc) 또는 sc 명령줄 도구와 같은 기본 Windows 유틸리티를 사용하여 이를 모니터링하고 관리할 수 있습니다. 시작/중지 스크립트를 위한 Unix의 /etc/init.d 디렉토리와 유사하게 Windows는 서비스 관리를 위해 scm(서비스 제어 관리자)을 사용합니다. sc 유틸리티를 활용하면 서비스 생성, 시작, 중지, 구성 등 서비스에 대한 다양한 작업을 수행할 수 있습니다.

위 내용은 Python 스크립트를 Windows 서비스로 실행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿