php 3

php-fpm 슬로우로그 찍는법

php-fpm 기반의 웹 서비스에서 응답속도가 저하되는 현상이 발생 하는 경우 DBMS의 SQL 응답속도 저하 (Slow Query) 네트워크 지연 서버 리소스 점유율 (CPU, RAM 등) Disk 입출력 문제 등이 있다. 서버 리소스나 네트워크에 별 다른 문제가 없고, Slow Query 로그에도 별다른 이상징후가 없다면, 로직 상의 문제일 가능성이 크다. 개발환경이라면 debug를 활용 수 있겠지만, 실 서비스 중인 서버에는 적용할 수 없는 방법이다. 이 때는 php-fpm의 slowlog를 찍어서 확인하는 방법이 있다. php-fpm.conf 파일을 열어보면 아래와 같은 설정을 확인할 수 있다. 보통 etc/php/ fpm폴더에 있음. request_slowlog_timeout = 30s slow..

php 2021.01.05

php break, return, exit 구분

break = 루프 탈출 - for, foreach, while 등 여러 번 반복되는 루프의 경우에 해당됨 - 루프 이후에 등장하는 코드를 계속 실행함 - if문은 반복문이 아니라 조건 충족시 1번만 실행되는 코드이므로 해당없음 return = 함수 탈출 또는 인클루드 탈출 - 함수 안에서 쓰면 함수 실행을 종료하고, 그 함수를 호출했던 지점으로 돌아가서 계속 실행함 - 함수 밖에서 쓰면 현재 파일을 인클루드했던 파일로 돌아가서 계속 실행함 - 함수 밖인데 인클루드한 것도 없으면 그냥 종료됨, 즉 exit과 동일한 효과가 됨 exit, die = 무조건 종료 - 말 그대로 프로그램이 죽어버림 정리. break는 루프(for, while, foreach)에서만 사용, 해당 루프가 끝나고 밑으로 흐름. re..

php 2020.09.03

php array_multisort

들어가기전 기본적인 배열 정렬들 sort() - 배열정렬. 1,2,3처럼 오르차순으로 정렬. (ASC) rsort() - 배열을 역순으로 정렬, reverse의 약자 r. (DESC) asort() - Associative Arrays([키 => 내용])을 내용 기준으로 오름차순으로 정렬합니다. (ASC) ksort() - Associative 배열에서 asort가 내용을 기준으로 했다면 ksort는 키 값을 기준으로 정렬. (ASC) arsort() - Associative 배열에서 내용 기준, 역순으로 정렬합니다. (DESC) krsort() - Associative 배열에서 키 값 기준, 역순으로 정렬합니다. (DESC) array_multisort() 다차원배열 정렬 시간 없는 개발자들을 위해 굵..

php 2020.08.31