2
유일한 작업은 이미지 처리를 실행하는 웹 서버입니다.
웹 서버의 이미지 처리는 동일한 XML 설정 파일 (최대 2MB)을로드합니다. 이미지 처리 응용 프로그램 (C++)와 MPM의 prefork의와 FastCGI를 (fcgi_mod)와로드가 많은 웹 서버에 FastCGI를 사용하는 모범 사례
- 웹 서버는 아파치 (2.2.16)입니다 :
나는 다음과 아키텍처를 사용하는 모든 요청에 대해 XML 파일 로딩 시간을 저장합니다. - : (()
{
FCGX_InitRequest
동안 (사실)
{
FCGX_Accept_r
요청thread_func을 이미지) 처리 및 FCGX_FPrintF/FCGX_PutStr
FCGX_r
}
이 모델의 약점}
호출 이미지 처리 응용 프로그램은 XML 파일을로드하고 N 스레드와 각 스레드 실행 급부상
하나는 FCGX_Accept_r 및 FCGX_Finish_r 호출 사이하면서 각각의 아파치 프로세스의 최대 하나 개의 스레드가 작업을 할 것입니다. 그럴 가치가 스레드 프로세스 (단일 스레드)에만 있지만 MaxClients를 높이려면?
은 사전에 감사합니다 :) 당신이 fastcgi 모듈을 사용할 수 있습니다
당 하나 개 이상의 스레드를 할 수 있습니다. 나는 아파치 웹 서버 프로세스 당 하나 이상의 스레드를 생성 할 수있다. 문제는 코드 실행이 FCGX_Accept_r과 FCGX_Finish_r 호출 사이에있는 동안 가치가 있는지입니다. – Valentine
각 스레드가 하나의 요청을 받아서이 요청을 처리 할 수 있습니다. 예 – kinnou02
각 웹 서버에서 10 개의 스레드가있는 5 개의 웹 서버 프로세스가 있고 50 개의 요청이 동시에 처리 될 수 있습니까? – Valentine