cFos Personal Net에서 FastCGI를 사용하는 방법
FastCGI는 CGI보다 개선 된 기능입니다. 일반 CGI 스크립트를 실행하면 많은 오버 헤드가 있습니다. 새 프로세스를 작성하고 스크립트 인터프리터를 시작해야하며 스크립트를 최소한 구문 분석해야합니다.
FastCGI는 이러한 오버 헤드를 상당 부분 제거합니다. FastCGI 스크립트 또는 앱은 한 번만 시작된 다음 특별한 FastCGI 메시지를 통해 웹 서버와 통신합니다. 이 스크립트에 대한 HTTP 스크립트 요청 및 응답은 이러한 메시지를 사용합니다. 프로세스는 메모리에 무한정 유지되며 스크립트는 한 번만 구문 분석해야합니다. 이를 통해 오버 헤드가 훨씬 적은 스크립트 실행이 가능합니다.
cFos Personal Net의 경우 Javascript 프로그램 (및 가장 빠른 Javascript 엔진 중 하나)에 Node.js를 사용할 수도 있습니다.
cFos Personal Net 용 Node.js로 FastCGI를 설치하는 단계는 다음과 같습니다.
cFos Personal Net 설치 및 실행
Node.js 설치
"npm i node-fastcgi" (또는 "npm i -global node-fastcgi")를 실행하여 노드 모듈 node-fastcgi를 설치하십시오.
cFos Personal Net pub/fcgi 디렉토리에서 샘플 스크립트 fcgi_test.fcgi 수정
브라우저에서 http://localhost/pub/fcgi/fcgi_test.fcgi.
cFos Personal Net은 FastCGI 역할 "Responder" 지원합니다. 즉, FastCGI 앱 / 스크립트는 HTTP 요청을 처리하기 위해 호출됩니다. 요청 된 파일 이름 당 하나의 FastCGI 스크립트가 시작되고 요청이 하나의 연결을 통해 멀티플렉싱되는 구성 만 지원합니다. FastCGI 스크립트는 일반 CGI 스크립트와 매우 유사하게 작동하므로 일반적으로 웹 서버와의 통신에 STDIN / STDOUT을 사용합니다. 따라서이 구성이 가장 적합합니다.
자신의 FastCGI 스크립트 (예 : Node.js)를 쉽게 개발할 수 있도록 스크립트 오류가 브라우저로 리디렉션됩니다. 또한 : 스크립트를 개발할 때 스크립트를 변경할 때 웹 서버를 다시 시작할 필요가 없습니다. 스크립트 인터프리터의 프로세스를 종료하십시오. cFos Personal Net은 다음 요청에서 필요할 때 스크립트의 새 버전을 다시로드합니다.
참고 문헌
FastCGI 사양
https://github.com/fast-cgi/spec/blob/master/spec.md
Wikipedia의 FastCGI
https://en.wikipedia.org/wiki/FastCGI
Node.js
https://nodejs.org/en/
FastCGI 용 Node.js 모듈
https://www.npmjs.com/package/node-fastcgi
cFos Personal Net 설명서
cFos Personal Net 설명서
FastCGI 스크립트
cFos Personal Net의 FastCGI 스크립팅 기능 설명서