간단히 말해서 나는 아주 새로운 PHP 코더이며, 코드에서 성능을 향상시킬뿐만 아니라 그 성가신 메모리 누출을 막는 최선의 방법으로 나를 안내 할 수 있는지 궁금합니다. 내 호스트는 APC 등이 설치되어 있지 않으므로 모두 손으로 코딩해야합니다. -_-메모리 누수를 막고 성능을 향상시키는 모범 사례
답변
일반적인 메모리 누출 (객체 또는 문자열 삭제를 잊어 버린 것처럼 생각하지 않음) PHP에서는 일반적이지만 리소스 누출은 일반적으로 발생합니다. 나는 문제를 했어 :
데이터베이스 연결 - 당신이 정말로 등/
pg_close
/mysql_close
를 호출해야합니다. 당신이 연결이 끝났을 때. 필자는 PHP 연결 풀링이이 문제를 완화한다고 생각하지만 (그러나 자체적으로 문제가있을 수 있음).이미지 - 이미지를 열거 나 만들 때 gd2 확장 프로그램을 사용하는 경우
image_destroy
이 필요합니다. 그렇지 않으면 영원히 메모리를 차지할 것이기 때문입니다. 이미지는 데이터 크기면에서 큰 경향이 있습니다.
스크립트가 순수 CGI (HTTP 서버 모듈 없음)로 실행되는 경우 스크립트가 종료 될 때 효과적으로 정리됩니다. 그러나 스크립트 실행 중에 메모리 문제가 여전히 남아있을 수 있습니다. 특히 단일 스크립트 실행에서 많은 조작을 수행하는 경우가 흔하지 않은 이미지의 경우 특히 그렇습니다.
일반적으로 PHP 스크립트는 메모리를 누설 할 수 없습니다. PHP 런타임은 스크립트의 모든 메모리를 관리합니다. 스크립트 자체는 메모리가 누출 될 수 있지만 PHP 프로세스가 끝나면 다시 사용됩니다. PHP는 주로 HTTP 요청을 처리하는 데 주로 사용되기 때문에 일반적으로 매우 짧은 시간 동안 실행되기 때문에 약간의 메모리가 누출되는 경우에는 문제가되지 않습니다. 따라서 http가 아닌 작업을 위해 PHP를 사용하면 메모리 누수가 정말로 걱정되어야합니다. 성능은 메모리 사용보다 더 중요한 관심사 여야합니다. 코드를 프로파일 링하려면 xdebug과 같은 도구를 사용하십시오.
- 1. 데이터베이스 성능을 테스트하는 방법 모범 사례
- 2. PHP 성능을 향상시키는 방법?
- 3. Trac의 성능을 향상시키는 방법
- 4. 쿼리 성능을 향상시키는 방법
- 5. jQuery의 성능을 향상시키는 방법
- 6. jquery에서 성능을 향상시키는 방법
- 7. Asp.Net에서 응용 프로그램 성능을 향상시키는 가장 좋은 방법은 무엇입니까?
- 8. 코 루틴이 성능을 향상시키는 방법
- 9. Android 에뮬레이터의 성능을 향상시키는 방법
- 10. 오라클 SP의 성능을 향상시키는 방법 -
- 11. 응용 프로그램의 성능을 향상시키는 방법
- 12. 데이터베이스 성능을 향상시키는 방법은 무엇입니까?
- 13. mysql 쿼리의 성능을 향상시키는 방법?
- 14. 네트워크에서 MYSQL 성능을 향상시키는 방법
- 15. 레일 3의 성능을 향상시키는 방법
- 16. iPhone 성능 최적화 모범 사례
- 17. 인스트루먼트는 메모리 누수를 지적합니다!
- 18. SiftDescriptorExtractor가 메모리 누수를 일으킴
- 19. WPF에서 메모리 누수를 추적하십시오
- 20. 모범 사례
- 21. 모범 사례?
- 22. 모범 사례 및 도구 asp.net mvc에서 웹 서버의 성능을 향상시키기위한?
- 23. 유틸리티 클래스의 모범 사례?
- 24. WPF 응용 프로그램의 성능을 향상시키는 방법
- 25. 모범 사례 또는 불량 사례
- 26. 통합 테스트 모범 사례
- 27. Excel 작성 및 채우기의 성능을 향상시키는 방법
- 28. Hudson CI API의 성능을 향상시키는 방법은 무엇입니까?
- 29. Android 앱의 성능을 향상시키는 방법은 무엇입니까?
- 30. Magento 성능을 향상시키는 가장 좋은 단계는 무엇입니까?
xdebug를 사용하고 싶지만 내 호스트가 추가 설치를 허용하지 않는다고 언급했지만 감사드립니다. –
xdebug를 프로덕션 환경에 설치하지 않겠습니다. 개발자 컴퓨터에 설치하십시오. – troelskn
스크립트가 종료 된 후 메모리가 회수되지 않는 프로세스에서 누출을 관찰하고 있습니다. PHP는 물론, 가장 가능성이 높습니다. –