본문 바로가기

PHP

[PHP 환경구성] PHP의 TS / NTS 변경 방법.

반응형

PHP의 TS / NTS 변경 방법.

PHP 에 TS / NTS 모드가 있다.

TS : Thread Safe

NTS : Non Thread Safe​

 

TS 모드는 멀티 쓰레드 모드를 말하고 NTS 는 다중 프로세스 모드를 말하는데,

 

확장 모듈을 개발할때 운용하는 장비의 모드와 동일한 환경에서 개발을 해야 정상적으로 확장모듈(.so) 의 로드가 가능하다.

 

 

PHP 의 TS / NTS 를 설정 하기 위해선 PHP 를 설치할때의 옵션이 아닌

apache2 의 mpm 이라는 모드에 따라 설정이 달라진다.

 

MPM(Multi Processing Module : 다중 처리 모듈)

 

 

mpm 모듈엔 prefork worker 방식 두가지가 있는데

apache2 에선 prefork 가 default 로 잡혀있으며 worker 을 사용하기 위해선

confogure 를 할때 --with-mpm=worker 옵션을 줘야한다.

 

prefork 방식을 사용하고자 한다면 옵션을 주지 않아도 된다.

 

prefork 방식이 NTS 모드를 말하고

worker 방식이 TS 모드를 말한다.

 

 

apache2 를 설치할때 mpm 옵션에 worker 를 주지 않았다면 PHP 역시 NTS 모드로 자동으로 설치가 진행되며,

worker 옵션을 줬을 경우엔 PHP 가 TS 모드로 설치가 된다.

 

 

apache2 , PHP 모두 설치가 완료 한뒤 php -vi 명령어를 통해 php 가 TS / NTS 중 어떤 환경으로 설치가 됐는지 확인이 가능하다.

 

NTS.

Zend Extension Build => API220100525, NTS

PHP Extension Build => API20100525, NTS

 

TS.

Zend Extension Build => API220100525, TS

PHP Extension Build => API20100525, TS

반응형