2012-02-01から1ヶ月間の記事一覧

capistranoで今タスクを実行中のホスト名を取得する

問題 $ cap hoge ROLES=app HOSTS=app-01,app-02,app-03 としたときに、各ホストに、ホスト名をファイル名にしたファイルをtouchするようなタスク hoge を記述せよ。ただし、/etc/hostnameを参照してはならない。 こたえ task :hoge do run "touch $CAPISTRA…

ActionView::Templateのcompile済み中間コードをキャッシュする

まずRailsのviewについて説明する。Railsのviewはerbとかhamlとかで書く。この人間が書いたviewファイルはtemplateと呼ばれ、ActionView::Templateクラスで扱われる。一つのviewファイルが一つのTemplateオブジェクトになる。 このTemplateクラスはTemplate#…

unicornのタイムアウト時にもRailsのログをちゃんと出力させる

unicornはconfで timeout 20 とかやっとくと、20秒以上かかったらそのworkerが殺される。それはいい。問題はその殺され方にあって、タイムアウトしたunicorn workerはmasterにKILLシグナルで強制的に殺される。KILLで殺されてしまうと、worker側でtrapして安…