과거 난해하고 너무나도 다양한 Ruby on Rails 어플리케이션 배포 환경 때문에 골치를 아파했던 개발자들에게 반가운 소식이 들려왔다. 일명 Apache의 mod_rails로 불리우는 Passenger가 공식 발표된 것.

Passenger의 설치는 너무나 간단해서, 아래처럼 Passenger gem 설치 후 설치 스크립트를 돌려주면 작업이 완료된다.

$ sudo gem install passenger
$ passenger-install-apache2-module

스크립트를 돌려서 컴파일링을 마치면 Apache 설정 파일에 추가해야 할 몇 가지 설정 사항들을 보여주는데, apache module 추가 관련 설정과 virtual host 용 설정 사항을 참고해서 자신의 사용 환경에 맞게 수정해서 httpd.conf 파일에 복사해 넣는다. 이렇게 해서, Apache를 재시동하면 바로 Rails Application을 손쉽게 Apache 위에 얹어놓고 돌려볼 수 있게 된다. 이렇게 설치는 너무나 간단하지만, 자세한 설치 과정을 담은 screencast도 제공하고 있다.

반가운 것은, 성능면에서 Mongrel 보다도 뛰어나서 거의 Thin에서 돌리는 것과 비슷한 성능을 보여준다는 것. 그리고, 아직 공식 배포는 이루어지지 않고 있지만, Ruby Enterprise Edition과 함께 돌리면 덤으로 33%의 메모리 절약을 기대할 수도 있다니, 이제 배포 환경 때문에 과거 골치를 썩혀왔던 걱정을 많이 덜게 되면서, 앞으로 Rails 어플리케이션의 채택율에도 더 가속도가 붙을 듯.

참고로, Rails 어플리케이션을 재시동하는 방법은 두 가지가 있는데, 하나는 물론 Apache를 재시동해도 되지만, 더 간편한 방법으로 Rails 어플리케이션이 위치하는 root 디렉토리 밑에 tem/restart.txt 파일을 추가하거나 수정해 주면 된단다. 이 작업은 터미널에서 다음과 같이 해주면 손쉬워진다:

$ touch /my_web_app/tmp/restart.txt

아직 다른 Ruby 웹 프레임워크에 대한 지원 계획은 미정이라니, 당장은 Rails만이 가지는 장점으로 남아 있을 듯.

관련된 주제의 글

“Passenger- Apache 웹 서버를 위한 손쉬운 Rails 어플리케이션 배포 환경”에 달린 2개의 댓글

안그래도 배포문제로 머리가 아팠는데.. 좋은 소식이군요..

마침 찾아보니.. 외국 호스팅 사이트에서는 mod_rails로 돌릴 수 있도록 지원을 하는군요..벌써… http://www.hostingrails.com

여기에 호스팅을 해서 한번 배포를 해봐야겠습니다..

좋은 정보 보고 갑니다. ^^