안녕하세요
올해도 일본에서 외국인노동자 하고있습니다.
프로젝트 개발중에 curl 을 사용하여 데이터를 처리해야 할일이생겼는데요
서버1 에서curl 로 서버2의php를 콜하여 서버2의 데이터베이스를 검색해서 서버1로 돌려주는 로직을 구현하고있습니다.
여기서 기초가 부족한 제가 어려움을 겪고있는데요
통신시간이 길어지면 서버2에서 연결을 강제로 끊어버리는것 같습니다.
외부에서 내 서버로 http 프로토콜을 통하여 요청이 들어왔을때 이연결의 유효한 시간 또는 이시간을 관리하는 설정자는
어디서 설정하나요?
CURL 통신시에 타임아웃 옵션을 줄 수 있습니다.
- PHP내장함수 사용시
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
php.ini 설정에 max_execution_time = 30 으로 기본 30초단위로 되어있습니다. 실행 시간을 올리시거나
set_time_limit(60); 함수로 늘릴수도 있습니다. 단위는 초 단위 입니다.
다만 php 설정이 아닌 DB에서 time out 때리는 경우도 있으니 php 설정 먼저 하시고나서 DB time out 시간을 체크해 보세요.