• ブログ
  • ふぉとす
  • キーワード
  • ブックマーク
  • 写真
  • ログイン

Title

« Double Arrayの勉強中 | 今週の休日の過ごし方 »
  • Thinサーバーをまた使ってみる 2008-01-24 00:09:44

     Rubyで書かれたwebサーバ Thinも、いつの間にかバージョン0.5.4になっていたので、また試してみることにします。以前、試してみたとき(「webサーバ Thin を使ってみる」)は、HTTPヘッダがおかしなことになって、cookieがうまく働かなかったりしましたが、今回は修正されているみたい。また試してみることにします。
     関係ないけど、Thinのコードネームはおもしろいね。今回はFlying Mustardだそうです。

     spider-manさんがすでに試されていますが、Thinにクラスタ機能が実装されました。が、まだちょっと使いにくそう。なので、以前作ったthin_clusterを改良してみました。

    #!/usr/bin/ruby
    require 'yaml'
    
    CONFIG_FILE = "config/thin_cluster.yml"
    KEY = {"e" => :env, "p" => :port, "s" => :servers}
    
    def error
      puts "thin_cluster config|start|stop [options]"
      exit
    end
    
    error if ARGV.size < 1
    case ARGV.shift
    when "config"
      config = {:env => "development", :port => 3000, :servers => 1}
    
      work = nil
      ARGV.each do |argv|
        if argv =~ /^\-([eps])(.*)$/
          work = nil
          if $2 && !$2.empty?
            config[KEY[$1]] = $2
          else
            work = $1
          end
        elsif work
          config[KEY[work]] = argv
          work = nil
        end
      end
      YAML.dump(config, File.open(CONFIG_FILE, "w"))
    when "start"
      config = YAML.load_file(CONFIG_FILE)
      `thin -e #{config[:env]} -p #{config[:port]} -s #{config[:servers]} -d start`
    when "stop"
      config = YAML.load_file(CONFIG_FILE)
      `thin -p #{config[:port]} -s #{config[:servers]} stop`
    else
      error
    end
    

     ソースを見れば一目瞭然だろうけど念のため使い方。すべてRAILS_ROOTで実行します。
     まずは設定。

      thin_cluster config -p3000 -e production -s 2
    

    一度設定しておけば、起動するときは

      thin_cluster start
    

    停止するときは

      thin_cluster stop
    

    でOKです。

    Commentコメント(1) Pageリンク元(79) Append 342
  • 目薬αで殺菌します (講談社ノベルス モF- 43)
    メディア: 新書
    涼宮ハルヒの退屈 (角川スニーカー文庫)
    メディア: 文庫
« Double Arrayの勉強中 | 今週の休日の過ごし方 »

プロフィール

おおいしつかさ

Amazon商品の一覧

人気の記事ベスト10

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

コメント

  • ユル(プログラマが若隠居をしたら)
  • ユル(風邪ひいた)
  • ユル(バイクがへたくそになっていた)
  • おおいしつかさ(便利になって不便になる)
  • 武石(便利になって不便になる)
  • ユル(劇場版 天元突破グレンラガン)
  • ユル(フラニーとゾーイー (新潮文庫): サリンジャー, 野崎 孝: 本)

過去の記事

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月 10月 11月

キーワード一覧

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

Youtube

ニコニコ動画