<code>class Test { public static function test1(){} public static function test2(){} ... } </code>
PHP 코드를 실행할 때 정적 메서드는 포함 여부에 관계없이 검사됩니다. 이는 너무 비효율적이므로 사용해서는 안 됩니다.
include 'Test.php'
클래스를 스캔하고 정적 메소드를 메모리에 로드하겠습니다. 이때 모든 메소드는 메모리에 로드되어야 합니다.
2
이 true가 아닌 경우 Test::test1();
메서드를 호출할 때 메모리에 로드해야 합니까? 이때 로드하면 현재 메서드만 로드해야 합니까, 아니면 현재 클래스의 모든 정적 메서드를 로드해야 합니까?
여기 Nginx와 Php-fpm 프로세스와 스레드에 대해 이야기한 마스터가 있습니다: https://segmentfault.com/q/10...
이런 경우 하나의 Php-fpm 프로세스가 하나의 클라이언트를 서비스하지만, 동시성이 너무 높으면 프로세스가 많아지는 것 아닌가요? 프로세스 통신 측면에서 보면 서로 다른 클라이언트의 요청은 서로 다른 프로세스에 속하며 서로 영향을 주어서는 안 됩니다. 그러나 클라이언트에 여러 요청이 있는 경우에는 해당 문서를 읽어보세요. 블로킹 단일 스레드 모델이므로 각 요청은 실행을 시작하기 전에 마지막 요청이 완료될 때까지 기다려야 합니다. 이때 정적 메서드의 캐시가 지워질까요, 아니면 계속 저장되어야 합니까? 선택을 취소하면 정적 메서드를 공유하면 안 됩니다.