Redmine access delay

Server/CentOS 2012. 6. 21. 00:09

Passenger 를 사용할 경우, redmine 페이지에 처음 접속할 때 약 5초가량의 딜레이가 발생한다.
기본적으로, Phusion Passenger는 웹 어플리케이션에 첫 방문자가 접속할 때까지 아무 인스턴스도 시작하지 않는다.
그래서 redmine에 첫 방문자가 방문했을 때 Passenger 가 어플리케이션을 시작하며 딜레이가 발생하는 것이다.

 

PassengerPoolIdleTime 의 기본값인 300초 동안 Idle이 발생하면 메모리 절약을 위해 어플리케이션은 종료된다.
그리되면 페이지를 이동했을 때 또 딜레이가 발생하게 된다.

 

이를 방지하려면 아파치가 실행시에 Passenger를 이용한 redmine을 실행시켜 놓아야 하며,
Idle 현상 역시 PassengerPoolIdleTime 값을 넉넉하게 설정하던지, 0으로 변경한다.

 

 

# vi /usr/local/httpd/conf/extra/httpd-vhosts.conf

 

<VirtualHost *:80>
    DocumentRoot "/home/oops/red/public"
    ServerName red.oops4u.com
    <Directory /home/oops/red/public>
        AllowOverride all
        Options -MultiViews
    </Directory>
</VirtualHost>

 

PassengerPreStart http://red.oops4u.com/
PassengerPoolIdleTime 0

 

 

 

/usr/bin/env: ruby: No such file or directory

 

env 에 PATH가 지정되어 있음에도 불구하고,

httpd.conf 파일에 PassengerRuby /usr/local/ruby/bin/ruby 를 지정했음에도 불구하고,

error_log 에서 위 error 를 발견한다면,

ruby 파일을 찾지 못해 PassengerPreStart 가 작동하지 않는 것이다.

/usr/bin 디렉토리에 심볼링 링크를 만들어 주고 아파치를 재가동한다.

 

# ln -s /usr/local/ruby/bin/ruby /usr/bin/ruby


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,