2017-12-26 35 views
1

학교 프로젝트에서 http 서버를 구현해야만 기존 http 서버 아키텍처를 볼 수 있었고 작업자 다중 처리 모듈을 사용하게되었습니다.멀티 스레딩이 종종 멀티 프로세싱과 결합되는 이유는 무엇입니까?

이 모듈은 하이브리드 다중 스레드 다중 프로세스 서버를 구현합니다.이 서버는 각 요청 프로세스를 포크하고 각 포크 프로세스가 요청을 처리하는 자신의 스레드 풀을 생성합니다.

궁금한 점은 멀티 스레드 전용 프로그램에 비해 하이브리드 다중 프로세스 멀티 스레드 프로그램의 장점은 무엇입니까? 왜 단일 프로세스를 유지하고 더 큰 스레드 풀을 생성합니까?

답변

3

가용성.

프로그램에 초기 결함이있어 N 개의 M 스레드로 충돌하는 것보다 하나의 인스턴스가 M 개의 스레드로 충돌하는 것이 더 좋습니다. (N-1) * M 개의 다른 스레드가 계속 작동 할 수 있으며 충돌이 발생할 가능성을 줄일 수 있습니다.

또한 리소스 누출을 처리하는 기술로 배포됩니다. N 트랜잭션을 처리 한 후 서버 "exec"자체가 리소스를 정리합니다. 나는 Thompson & Ritchie가 exec에 대한 유스 케이스로 예견하지 않았 음을 확신한다 ....