티스토리 뷰
PHP Supervisor는 PHP 프로세스를 관리하고 모니터링하는 데 사용하는 도구입니다. 이 도구는 백그라운드에서 실행되는 PHP 프로세스나 웹 서버 등 여러 프로세스를 관리하는 데 유용합니다.
1. Supervisor 설치
PHP Supervisor는 실제로 Supervisor라는 프로세스 관리 툴을 기반으로 하기 때문에, Supervisor를 먼저 설치해야 합니다. 이 툴은 여러 프로세스를 쉽게 관리하고 자동화할 수 있게 해줍니다.
1.1. Supervisor 설치
우분투와 같은 리눅스 시스템에서 Supervisor를 설치하려면 다음 명령어를 실행합니다.
sudo apt update
sudo apt install supervisor
설치가 완료되면 Supervisor 서비스가 자동으로 시작됩니다.
2. Supervisor 설정
PHP 프로세스를 관리하기 위해서는 Supervisor의 설정 파일을 생성하고 PHP 프로세스를 그 안에 정의해야 합니다.
2.1. PHP-FPM 설정 예시
PHP-FPM(PHP FastCGI Process Manager)을 Supervisor로 관리하려면 다음과 같은 설정 파일을 추가해야 합니다.
- Supervisor 설정 디렉토리로 이동합니다.
cd /etc/supervisor/conf.d/
- 새로운 설정 파일을 생성합니다.
sudo nano php-fpm.conf
- 설정 파일에 다음 내용을 추가합니다.
[program:php-fpm]
command=/usr/sbin/php-fpm7.4 -F
autostart=true
autorestart=true
stderr_logfile=/var/log/php-fpm.err.log
stdout_logfile=/var/log/php-fpm.out.log
user=www-data
여기서 command 부분은 시스템에 설치된 PHP-FPM 버전에 맞게 수정해야 합니다. 예를 들어, PHP 7.4 버전이 설치되어 있으면 php-fpm7.4로 설정하고, 버전이 다르면 그에 맞게 수정합니다.
2.2. PHP 프로세스 시작/정지
Supervisor 설정을 추가한 후에는 Supervisor를 다시 읽고, 새로운 프로그램을 시작해야 합니다.
- Supervisor 설정 파일을 다시 읽고 적용합니다.
sudo supervisorctl reread
sudo supervisorctl update
- PHP 프로세스를 시작합니다.
sudo supervisorctl start php-fpm
- 상태를 확인하려면:
sudo supervisorctl status php-fpm
3. Supervisor 시작 및 종료
Supervisor는 시스템 시작 시 자동으로 실행되며, 이를 제어하려면 다음 명령어를 사용합니다:
- Supervisor 서비스 시작:
sudo service supervisor start
- Supervisor 서비스 종료:
sudo service supervisor stop
4. PHP 프로세스 로그 확인
Supervisor는 PHP 프로세스를 관리할 때 로그 파일을 기록합니다. 설정에서 지정한 경로(/var/log/php-fpm.err.log, /var/log/php-fpm.out.log)를 확인하여 PHP 프로세스의 상태를 추적할 수 있습니다.
'배움 > PHP' 카테고리의 다른 글
Laravel 11 비동기 구현 (0) | 2025.05.27 |
---|---|
Laravel JWT 구현 (0) | 2025.05.26 |
Laravel11 브로드캐스팅 PrivateChannel , reverb 사용 예시 (0) | 2025.05.19 |
Laravel 11 테스트 코드 작성 샘플 (0) | 2025.05.14 |
Laravel 11 Validator::make (0) | 2025.05.13 |
- Total
- Today
- Yesterday
- curl_multi_init
- flask
- WSL2
- researcher
- jp:a
- laravel 12
- facades
- swagger
- ob_get_contents
- laravel 11
- 비동기
- wsl
- Laravel
- 명령어
- mysql
- privatechannel
- array_combine
- 설정
- 설치
- PYTHON
- #php
- createfromformat
- #collect
- strict_types
- call_user_func
- php
- uniqid
- ubuntu
- laravel 테스트
- reflectionclass
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |