• ブログ
  • 写真
  • キーワード
  • ブックマーク
  • ログイン

Title

« 愚か者死すべし: 本: 原 リョウ | mongrelに戻しました »
  • webサーバ Thin を使ってみる 2008-01-07 23:07:49

     Mongrelより速いというウワサのThinというwebサーバを会社の同僚の方に教えてもらいました。実際に計測してみるとmongrelより速いそうです。mongrelの開発者がグレてしまったので、Thinを使ってみるのもいいかもしれません。ちょっと試してみました。

     まずはインストール。

    sudo gem install thin
    

     あとはRAILS_ROOTに移動して、

    thin start
    

    でOKです。超簡単(デフォルトのポート番号は3000です)。もちろん、RAILS_ENVやポート番号も指定できるしデーモンとして起動することもできます。

    thin -p4000 -e production -d
    

    みたいな感じ。デーモンとして起動したときは

    thin stop
    

    で停止できます。

    いちいち手で入力するのが面倒なので、複数プロセスで起動するthin_clusterを作ってみました。

    #!/usr/bin/ruby
    require 'yaml'
    
    CONFIG_FILE = "config/thin_cluster.yml"
    def error
      puts "thin_cluster config|start|stop [options]"
      exit
    end
    
    error if ARGV.size < 1
    
    mode = ARGV.shift
    case mode
    when "config"
      config = {:env => "development", :port => 3000, :servers => 1}
    
      if i = ARGV.index("-e")
        config[:env] = ARGV[i + 1]
      end
      if i = ARGV.index("-p")
        config[:port] = ARGV[i + 1].to_i
      end
      if i = ARGV.index("-N")
        config[:servers] = ARGV[i + 1].to_i
      end
      YAML.dump(config, File.open(CONFIG_FILE, "w"))
    when "start"
      config = YAML.load_file(CONFIG_FILE)
      config[:servers].times do |i|
        `thin -e #{config[:env]} -p #{config[:port] + i} -P "tmp/pids/thin.#{config[:port] + i}.pid" -d start`
      end
    when "stop"
      config = YAML.load_file(CONFIG_FILE)
      config[:servers].times do |i|
        `thin -P "tmp/pids/thin.#{config[:port] + i}.pid" stop`
      end
    else
      error
    end
    

    thinコマンドをそのまま呼んでるだけの超手抜きですが、まあ自分が使うだけだしこれでいいや。さっそく、kaeruspoonとmilookとかえるイメージをthin_clusterで動かしてみます。しばらく様子を見よう。

    追記
    続きが「Thinサーバーをまた使ってみる」にあります。

    Commentコメント(3) Pageリンク元(202) Append
  • プログラミングErlang
    作者/アーティスト: 榊原一矢
    メディア: 単行本(ソフトカバー)
    人間失格 (新潮文庫 (た-2-5))
    メディア: 文庫
« 愚か者死すべし: 本: 原 リョウ | mongrelに戻しました »

Twitterでのひとりごと

  • コードギアスはもうなんだかどうでもいい感じのお話になっている(09/07 22:37)
  • ターミナルを見た。いまいちかな。(09/06 23:58)
  • アップルから帰ってきました(09/05 23:00)
  • パナップを食べた。会社のパナップのほとんどをぼくが食べている気がする。(09/05 12:54)
  • photohito 見てたらカメラがほしくなってきた。http://photohito.com/(09/04 22:49)
  • 交通警察24時をやっているらしい。見たいなあ(09/04 20:42)
  • 超不毛な作業をしたので、自分へのご褒美にパナップを食べている(09/04 20:14)

プロフィール

おおいしつかさ

Amazon商品の一覧

人気の記事ベスト10

  • 1.apache+mod_proxy_balancer+mongrelでRailsを動かす方法
  • 2.Perlでevalを使ってみる
  • 3.バージョン管理をsubversionからgitに移行してみた
  • 4.tokyobikeのドロップハンドル化
  • 5.URLなど、長い英字を折り返して表示する方法
  • 6.ubuntu8.04でデュアルディスプレイを使う
  • 7.restful_authenticationを使ってみた
  • 8.Rspecでコントローラのspecファイルを書く
  • 9.Amazonの商品を手軽に扱えるプラグイン、AmazonResourcesをつくりました
  • 10.RailsとPostfixで受信メールを処理する方法

コメント

  • 武石(人に喜ばれること)
  • おおいしつかさ(googleからの本当のメール)
  • 武石(googleからの本当のメール)
  • ユル(日本酒と魚があれば何もいらない)
  • おおいしつかさ(日本酒と魚があれば何もいらない)
  • 武石(しつこい)(日本酒と魚があれば何もいらない)
  • 武石(日本酒と魚があれば何もいらない)

過去の記事

2006年
12月
2007年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年
1月 2月 3月 4月 5月 6月 7月 8月 9月

キーワード一覧

ActionScript AmazonResources git javascript kaeruspoon milook NSR Objective-C Rails Ruby Ruby on Rails subversion Thin tokyobike ubuntu VAIO VAIO typeZ Waves Xen ぐりぐり カンタロー スノボー ドトール ドライブ バイク プログラミング ユルさん 執筆 日本酒 模型 真中洋嗣 自転車

Youtube

ニコニコ動画