PHP 버전 5.6
CodeIgniter 'CI_VERSION', '2.1.3'
100개 항목을 반복하는 PHP 프로그램(에서 실행)이 있습니다 .
Apache(Codeigniter를 통해)는 나에게500 오류그리고 실제로 무슨 일이 일어났는지에 대한 기록은 로그에 없습니다.
mySQL /var/log/mysql/error.log has
줄은 다음과 같습니다.
[Note] Aborted connection 899 to db: 'dbname' user: 'username' host: 'localhost' (Got an error reading communication packets)
/var/lib/mysql/ns1.log의 마지막 몇 줄 - 오류가 없습니다.
2019-07-26T02:08:10.254327Z 581 Connect username@localhost on dbname using Socket
2019-07-26T02:08:10.254499Z 581 Init DB dbname
2019-07-26T02:08:10.254607Z 581 Query SET NAMES utf8
2019-07-26T02:08:10.255229Z 581 Query SHOW TABLES FROM `dbname`
2019-07-26T02:08:10.257569Z 581 Query SELECT `value`
FROM (`multiscraper_settings`)
WHERE `key` = 'ts'
2019-07-26T02:08:10.257962Z 581 Query SELECT `value`
FROM (`multiscraper_settings`)
WHERE `key` = 'au'
2019-07-26T02:08:10.258304Z 581 Query SELECT `value`
FROM (`multiscraper_settings`)
WHERE `key` = 'au'
2019-07-26T02:08:10.261331Z 581 Quit
SQL 쿼리 오류가 없다고 확신합니다. 오류가 있는 경우 모든 로깅이 활성화되어 로그에 표시되기 때문입니다(이러한 오류가 발생할 때와 마찬가지로).
25개의 프로젝트를 일괄적으로 프로그램을 실행하면 500개의 오류 없이 100개의 프로젝트가 모두 성공적으로 완료됩니다. 여기에서 일부 변수가 상한선에 도달한 것 같습니다. 무제한으로 변경했기 때문에 이것은 최대 PHP 스크립트 실행 시간이 아닙니다.
이 문제의 원인이 무엇이라고 생각하시나요?
답변1
며칠 간의 연구 끝에 PHP 버전을 5.6에서 7.2로 변경하기로 결정했는데 100개의 프로젝트를 모두 문제 없이 처리하는 것 같았습니다.
실제로 왜 이런 일이 발생하는지 모르겠지만 PHP 5.6의 버그일 수도 있고 7.2에서 수정되었습니다.
업데이트: 네, 이제 강해 보이네요!
업데이트 2: 수십 번의 테스트를 거친 후에도 여전히 발생하지만 빈도는 줄어드는 것으로 나타났습니다. 예를 들어, 71번의 반복 후에 실패했습니다. 이전에는 반복 횟수가 35회를 넘지 않았기 때문에 확실히 더 강력해졌습니다.