백엔드 개발 PHP 튜토리얼 PHP에서 싱글톤 백그라운드 프로세스를 만드는 방법 소개

PHP에서 싱글톤 백그라운드 프로세스를 만드는 방법 소개

Aug 13, 2017 am 11:30 AM
php 방법 프로세스

이 글은 주로 PHP에서 단일 인스턴스 백그라운드 프로세스를 생성하는 방법을 소개하며, PHP의 시작, 생성, 판단, 중지 및 기타 프로세스 관련 작업 기술을 포함하여 도움이 필요한 친구들이 참고할 수 있습니다.

이 글의 예는 다음과 같습니다. PHP 프로세스 메소드에서 단일 인스턴스 백그라운드 프로세스를 만드는 이야기. 참조용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

다음 명령문을 통해 PHP 백그라운드 프로세스를 시작할 수 있습니다.


$command = " php script.php ";
$pid = exec("nohup $command > /dev/null 2>&1 & echo $!");
로그인 후 복사

nohup은 이 프로세스가 생성된 사용자와 독립적이며 데몬에서 실행될 수 있음을 의미합니다. 방법.

싱글톤으로 실행하기 위해 이 백그라운드 프로세스가 필요한 경우 다음 방법을 사용하여 프로세스가 실행 중인지 기록/판단할 수 있습니다.


//query the database for process id
$query = "SELECT pid FROM `daemons` WHERE `pid` = '2013' LIMIT 1";
$result = mysql_query($query);
$pid = mysql_result($result, 0, 'pid');
//check if the process is running
exec("ps $pid", $pState);
if((count($pState) >= 2) && !empty($pid))
{
echo "RUNNING";
}
else
{
echo "INACTIVE";
}
로그인 후 복사

PID를 파일에 쓸 수도 있지만, 파일에 있는 경우 분산 작업 환경에서는 데이터베이스에 저장하는 것이 좋습니다

백그라운드 프로세스 중지:


//check if the process from the database is running
exec("ps $pid", $pState);
if((count($pState) >= 2))
{
//if the process is running, kill it
exec("kill $pid");
//update database row with an empty process id
}
로그인 후 복사

위 내용은 PHP에서 싱글톤 백그라운드 프로세스를 만드는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

CakePHP 날짜 및 시간

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

CakePHP 프로젝트 구성

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

CakePHP 파일 업로드

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

CakePHP 라우팅

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP 토론

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법

CakePHP 빠른 가이드 CakePHP 빠른 가이드 Sep 10, 2024 pm 05:27 PM

CakePHP 빠른 가이드

See all articles