우분투 nginx php-fpm오류 (php7.4)
본문
<?php
// 서버의 CPU 코어 수 가져오기
$cpu_cores = shell_exec("nproc --all");
$cpu_cores = (int)trim($cpu_cores);
echo "CPU 코어 수: " . $cpu_cores . " (nproc --all 명령어 사용)\n";
// 서버의 메모리 용량 (MB) 가져오기
$memory_info = shell_exec("free -m");
preg_match('/Mem:\s+(\d+)\s+/', $memory_info, $matches);
$memory_mb = (int)$matches[1];
echo "서버 메모리 용량: " . $memory_mb . "MB (free -m 명령어 사용)\n";
// 네트워크 속도 측정 (예: eth0 인터페이스 사용)
$network_info = shell_exec("cat /sys/class/net/eth0/speed");
$network_speed_mbps = (int)trim($network_info);
echo "네트워크 속도: " . $network_speed_mbps . "Mbps (eth0 인터페이스 속도)\n";
// 한 사용자당 필요한 리소스 (CPU 코어, 메모리, 네트워크 대역폭)
$cpu_per_user = 0.25; // 한 사용자당 0.25 코어 필요
$memory_per_user = 0.5 * 1024; // 한 사용자당 0.5 GB 필요 (MB로 변환)
$network_per_user_mbps = 1; // 한 사용자당 1 Mbps 필요
// 최대 접속 가능 인원 수 계산
$max_users_cpu = floor($cpu_cores / $cpu_per_user);
$max_users_memory = floor($memory_mb / $memory_per_user);
$max_users_network = floor($network_speed_mbps / $network_per_user_mbps);
// 계산 과정 출력
echo "최대 접속 가능 인원 수 계산:\n";
echo "- CPU 기준: " . $max_users_cpu . "명 (계산: " . $cpu_cores . " / " . $cpu_per_user . ")\n";
echo "- 메모리 기준: " . $max_users_memory . "명 (계산: " . $memory_mb . " / " . $memory_per_user . ")\n";
echo "- 네트워크 기준: " . $max_users_network . "명 (계산: " . $network_speed_mbps . " / " . $network_per_user_mbps . ")\n";
// 최소값을 선택하여 최종 접속 가능 인원 수 결정
$max_users = min($max_users_cpu, $max_users_memory, $max_users_network);
echo "최종 동시 접속 가능 인원 수: " . $max_users . "명\n";
// 종합적으로 계산 결과 출력
echo "종합 계산 결과:\n";
echo "최대 동시 접속 가능 인원 수는 CPU, 메모리, 네트워크 자원을 기준으로 계산되었습니다.\n";
echo "CPU 기준: " . $max_users_cpu . "명, 메모리 기준: " . $max_users_memory . "명, 네트워크 기준: " . $max_users_network . "명\n";
echo "결과적으로, " . $max_users . "명이 동시에 접속할 수 있습니다.\n";
// 결과 출력 및 10초마다 반복
while (true) {
// 현재 시간 출력
echo date("Y-m-d H:i:s") . " - 현재 동시 접속 가능 인원 수: " . $max_users . "명\n";
// 10초 대기
sleep(10);
}
?>실행 후 서버의 모든 페이지에서 504 에러가 떠서 sudo systemctl restart nginx를 했지만 여전히 서버애서는 504 에러를 뱉었다.
여러번 시도했지만 해결되지 않자 서버를 재시작 하려고 했으나, ps aux | grep php 를 했는데 php-fpm관련 무언가가 빨간불이 들어와있었다. 솔직히 빨간색 글자가 뭘 의미하는진 모르겠지만 경고하는 것이라는 것을 본능적으로 느껴 급하게 sudo systemctl restart php7.4-fpm를 시도하니 문제 없이 바로 사이트에 접속이 되었다. 참고 하시라~
(나는 php7.4를 써서 php7.4-fpm이라 한 것이다 )
등록된 댓글이 없습니다.