Phusion Passenger (mod_rails)

2008.07.24 19:38 from ruby
퓨전 패신저(Phusion Passenger)는 아파치 웹서버에서 레일스 애플리케이션을 비롯한 루비 웹서비스를 연결하는 아파치 모듈이다. 다른 아파치 모듈 스타일들과 비슷한 이름형식으로는 mod_rails로도 불렸던것 같다. 나는 아파치 대신 nginx를 사용하기 때문에, 이 모듈에 대해 큰 관심을 두지 않았다. 단지, 아파치와 레일스 애플리케이션을 연결해서 쓰기에 아주 좋을 것 같다는 생각만 했을뿐.

그런데, 마침 내가 다른사람과 공동으로 사용하는 호스팅 서버에 설치해 볼 기회가 생겼다. 어차피 공동 호스팅이라서,

Apache - Nginx - mongrel_cluster

의 구조로 사용했었다. 웹서버레이어가 두겹인게 마음에 들지 않았지만, 나만 사용하는 웹서버레이어를 하나 더 두고 마음껏 사용했던 것이지. 오늘 해당 서버에서 nginx를 거치지 않고, 바로 아파치에서 퓨전 패신저 모듈로 레일스 애플리케이션을 연결해 보았다.

모듈 설치도 아주 간단하고 친절했으며, 설정값을 어떻게 지정해야하는지도 자세히 안내되어, 빠르게 연결해 볼 수 있었다. 너무도 간단하게 레일스 애플리케이션을 연결했고, 몽그렐 클러스터를 띄우거나 재시작하는 별도의 작업 없이, 퓨전패신저 모듈이 알아서 관리해주는 점이 마음에 들었다.

이 모듈의 구조를 간단히 설명하는 문서를 읽어보았는데, 아주 잘 만든거 같아 호감이 더해졌다. PHP가 FastCGI모듈로 사용되는 방식으로 구현했다고 한다. 설치/운영이 간단하다는 점과, 레일스 프로세스와 아파치의 워커 프로세스가 별도의 메모리 주소공간을 사용한다는 점이 매우 마음에 든다. 아파치 웹서버와 레일스(또는 Rack기반의 루비 웹서비스)애플리케이션을 구동한다면 아주 매력적인 솔루션이라고 생각한다.

누가, nginx용 모듈로도 만들어 주면 안되겠니? ^^;
Posted by hatemogi 트랙백 0 : 댓글 0

티스토리 툴바