RadarURL

조회 수 9088 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

VC6 : Apache 용
VC9 : IIS 용

[Thread Safe 와 Non Thread Safe]

우선 윈도우용 PHP는 항상 Thread Safe 버전으로 나왔었습니다.
이유는 윈도우가 멀티쓰레드 방식인데 PHP 는 멀티프로세스 방식으로 개발 되었기 때문이죠.
참고로 리눅스나 유닉스는 원래 멀티프로세스 방식이었기에 문제가 되지 않았습니다.

PHP를 IIS와 연동하기 위해 CGI 또는 ISAPI 방식으로 연동을 합니다.
그런데 PHP와 관련된 모듈들이 대부분 멀티프로세스 방식으로 개발 되었기 때문에
멀티쓰레드 방식으로 개발된 ISAPI 로 연동하였을 경우 서버가 다운되는 현상이 나타났습니다.

그래서 안정적인 방법으로 CGI 방식을 사용하긴 하지만 이 것 역시 퍼포먼스 측면에서 너무 느리다는게 문제가 되었죠.
이 퍼포먼스 문제를 개선한 것이 Non Thread Safe 버전이라고 생각하시면 되겠습니다...^^

 

윈도우는 멀티스레드 방식
리눅스는 멀티프로세스 방식

멀티스레드 환경에는 Non Thread Safe 버전
멀티프로세스 환경에는 Thread Safe 버전

MPM prefork는 멀티프로세스
MPM worker는 멀티스레드

스레드 안전 - 멀티스레드 환경하에 하나의 자원에 여러 스레드가 동시에 접근해도 프로그램의 실행에 문제가 없음을 뜻함

그럼 결론적으로 아래와 같은 조합이라 생각할 수 있겠죠? ^^a

Windows + IIS(ISAPI) : VC9 Thread Safe 버전
Windows + IIS(CGI or FastCGI) : VC9 Non Thread Safe 버전
Windows + Apache(MPM worker) : VC6 Thread Safe 버전
Windows + Apache(MPM prefork) : VC6 Non Thread Safe 버전

 
Warning
제품 환경에서 아파치 2 쓰레드 MPM 사용을 권하지 않습니다. 아파치 2.0과 2.2 기본 MPM인 perfork MPM을 사용하십시오. 이유는 관련 FAQ 아파치2 쓰레드 MPM 사용하기를 읽어보십시오.

출처 : http://php.net/manual/kr/install.windows.apache2.php
?

공부 게시판

공부에 도움되는 글을 올려주세요.

  1. [공지] 공부 게시판 입니다.

    Date2003.08.18 By처누 Views928098
    read more
  2. [오라클] RAC(Real Application Cluster)이란?

    Date2023.05.01 Category데이터베이스 ByJaeSoo Views95
    Read More
  3. 데이터베이스 튜닝 (DB Tuning)

    Date2023.04.27 Category데이터베이스 ByJaeSoo Views346
    Read More
  4. BCV (Business Continuance Volume)

    Date2023.04.14 Category데이터베이스 ByJaeSoo Views70
    Read More
  5. MySQL Dump / Import (덤프 / 임포트)

    Date2016.10.10 Category데이터베이스 ByJaeSoo Views229
    Read More
  6. mysql이 cpu를 많이 점유하고, DB와의 연결상태가 좋지 않을때

    Date2016.07.05 Category데이터베이스 ByJaeSoo Views338
    Read More
  7. [Oracle] Lock 확인 및 Lock 해제

    Date2016.03.28 Category데이터베이스 ByJaeSoo Views642
    Read More
  8. Mysql slow-query를 이용한 로그 분석

    Date2015.03.17 Category데이터베이스 ByJaeSoo Views697
    Read More
  9. Mysql 데몬 문제 해결 방안 (cpulimit)

    Date2015.03.17 Category데이터베이스 ByJaeSoo Views911
    Read More
  10. mysql 5.5.x my.cnf 참고

    Date2015.03.16 Category데이터베이스 ByJaeSoo Views673
    Read More
  11. Mysql Slow query log 등록

    Date2015.03.16 Category데이터베이스 ByJaeSoo Views785
    Read More
  12. MYSQL 성능 향상 정리

    Date2015.03.16 Category데이터베이스 ByJaeSoo Views627
    Read More
  13. MySQL Query Cache 사용법

    Date2015.03.16 Category데이터베이스 ByJaeSoo Views708
    Read More
  14. Mysql 에서 Got a packet bigger than 'max_allowed_packet' bytes 오류

    Date2014.12.25 Category데이터베이스 ByJaeSoo Views925
    Read More
  15. MySQL 내부 변수 max_allowed_packet

    Date2014.12.25 Category데이터베이스 ByJaeSoo Views585
    Read More
  16. Mysql binary log 정리, 삭제 주기 설정

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views1158
    Read More
  17. MySQL 로그 파일 관리 2 - 로그 파일 남기기

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views1238
    Read More
  18. MySQL 로그 파일 관리 1 - 설정

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views1155
    Read More
  19. MySQL Binary Log 지우는 방법

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views1222
    Read More
  20. MySQL 설치/사용시 발생 에러 유형별 대처방법

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views6890
    Read More
  21. Mysql 데이터 폴더의 mysql-bin.xxx 파일들 관련 삭제 및 초기화 방법

    Date2014.11.17 Category데이터베이스 ByJaeSoo Views1115
    Read More
Board Pagination Prev 1 2 3 4 5 Next
/ 5


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너