トップページphp
1001コメント432KB

【Ruby】Ruby on Rails Part9

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/02/19(金) 16:13:13ID:SpWtnpr8
■前
【Ruby】Ruby on Rails Part8
http://pc11.2ch.net/test/read.cgi/php/1252842574/

■参考サイト
<英語>
本家:http://www.rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails

<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
0681nobodyさん2010/06/29(火) 02:06:25ID:???
確認済みならRewriteLogしてるはず。

0682nobodyさん2010/06/29(火) 02:18:26ID:???
>>680
それはPassengerなしのApacheでも動作してるのか?
06836802010/06/29(火) 02:58:45ID:???
>>681,682
返信サンクスです。

<VirtualHost *:80>
ServerName hoge.hoge.com
DocumentRoot /var/www/hoge/public/
RailsEnv production
PassengerEnabled off
</VirtualHost>

とすると、.htaccessによるrewriteが効くようになり
http://hoge.hoge.com に携帯でアクセスすると http://hoge.hoge.com/mobile/
に飛ぶようになるので、rewrite自体には問題はないと思います。
PassegerEnable on にしたとたん、rewriteが発生しなくなります・・・
06846802010/06/29(火) 03:31:19ID:Ta1QVwxn
rewriteのログものせておきます。

-- PassengerEnabled off の場合(rewriteが走っている)
(3) [perdir /var/www/hoge/public/] applying pattern '^$' to uri ''
(2) [perdir /var/www/hoge/public/] rewrite '' -> '/m/'
(2) [perdir /var/www/hoge/public/] explicitly forcing redirect with http://hoge.hoge.com/m/
(1) [perdir /var/www/hoge/public/] escaping http://hoge.hoge.com/m/ for redirect
(1) [perdir /var/www/hoge/public/] redirect to http://hoge.hoge.com/m/ [REDIRECT/302]

-- PassengerEnabled on の場合(rewriteが走っていない)
(3) [perdir /var/www/hoge/public/] strip per-dir prefix: /var/www/hoge/public/index.html -> index.html
(3) [perdir /var/www/hoge/public/] applying pattern '^$' to uri 'index.html'
(1) [perdir /var/www/hoge/public/] pass through /var/www/hoge/public/index.html

0685nobodyさん2010/06/29(火) 08:52:07ID:???
>>680
「passenger mod_rewrite」ぐぐってみたが

マニュアルの和訳
> mod_rewriteとmod_alias
> Passengerはmod_rewriteとmod_aliasと衝突する。
> Railsアプリケーションを含むバーチャルホスト内でこれらのモジュールを併用する事は推奨できない。
> バーチャルホストの外ではうまく動くかもしれない。
> 標準で、PassengerはRailsホストのmod_rewriteルールを上書きする。
> Railsの標準では、.htaccessを使ってdispatch.cgiにリライトするルールが書かれており、
> これが非常に遅い処理であるため、「そのまま使える」という重要な目標のためにこのような対策を行っている。
> mod_aliasに関する説明がなされていないが、
> バーチャルホストのRailsアプリケーションと組み合わせたとき、大変な問題が発生するとの事。
> mod_rewriteを使いたい場合、RailsAllowModRewriteを使えばよい。
> ただし、先述の問題を回避するために、.htaccessを削除するかリライトルールを書き換える必要がある。

KOSHIGOE学習帳 - [Ruby] Passenger
http://w.koshigoe.jp/study/?%5BRuby%5D+Passenger


> RailsAllowModRewrite <on|off>
> このオプションを有効にすると、mod_rewriteを上書きしなくなる(後述)。デフォルトでoff。
> グローバル設定やバーチャルホスト設定で行う。
http://w.koshigoe.jp/study/?[Ruby]+Passenger#l24

公式の記述
Phusion Passenger users guide
http://www.modrails.com/documentation/Users%20guide.html#PassengerHighPerformance


公式としてはPassengerHighPerformance offでないとmod_rewriteうごかねーよってことだけど
0686nobodyさん2010/06/29(火) 08:53:42ID:???
悪い読み間違えてた
PassengerHighPerformance は offってあるのね
0687nobodyさん2010/06/29(火) 09:06:17ID:???
>>684
onにしたとたん走らなくなるなら、書いてある通り、仕様じゃないの?
最初はoffにしても動かないという話だったような。
06886802010/06/29(火) 09:24:37ID:???
色々レスありがとうございます
ずっとあれこれやっていますが、やはりダメです・・・

RailsAllowModRewrite on

をいれても、rewriteは発生せず
とにかく PassengerEnabled off にした場合だけ rewriteが聞く感じです

685さんのレスや、
ttp://underrails.seesaa.net/article/122286387.html
の記事を読む限り、動いてくれても良さそうなのですが。。。

/var/www/hoge のトップディレクトリのURLパターンのみ、PassengerEnabled offにし、
/var/www/hoge/users (railsアプリのuserコントローラ)や、サブディレクトリでは
PassengerEnabled on にする、というアプローチは可能でしょうか

<Directroy /var/www/hoge/public/>
PassengerEnabled off
</Directroy>
とか
<Location />
PassengerEnabled off
</Directroy>

を使うと、全てPassengerの対象外になってしまい
全てのrailsコントローラが動作しなくなってしまいます。
どちらかというとapacheの質問になってしまいますが…
06896802010/06/29(火) 09:53:13ID:???
自己レスですが一応、以下のようにしたところ、うまくいくようになりました。
100%うまくいっているかどうかは自身がありませんが…

みなさん、レスありがとうございました。


<VirtualHost *:80>

Options Indexes FollowSymlinks ExecCGI
ServerName hoge.hoge.com
DocumentRoot /var/www/hoge/public/
RailsEnv production

PassengerEnabled off
RailsAllowModRewrite on
PassengerHighPerformance off

<Directory /var/www/hoge/public/ >
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo)
RewriteRule ^$ /m/ [R]
</Directory>

<Location ~ "^/.+" >
PassengerEnabled on
</Location>

</VirtualHost>
0690nobodyさん2010/06/29(火) 16:41:16ID:jZ0uql/v
Padrino: A Webapp Framework Wrapped Around Sinatra
http://www.rubyinside.com/padrino-sinatra-webapp-framework-3198.html
0691nobodyさん2010/06/30(水) 17:03:33ID:z+oq0KsY
Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)〜ログの科学的な分析と、Twitterの「ダークモード」 − Publickey
http://b.hatena.ne.jp/entry/www.publickey1.jp/blog/10/twittertwitter.html
0692nobodyさん2010/06/30(水) 17:08:44ID:z+oq0KsY
掲載料金は100万回の露出保証で20万円から。2500万回の露出保証だと単価は下がり250万円
http://www.nikkei.com/tech/business/article/g=96958A9C93819499E1E2E2E19B8DE1E2E2E6E0E2E3E2E2E2E2E2E2E2;df=3;p=9694E1E2E2E6E0E2E3E2E2E5E7E6
0693nobodyさん2010/07/01(木) 15:45:47ID:NcLY7s4Z
Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)〜Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」 − Publickey
http://b.hatena.ne.jp/entry/www.publickey1.jp/blog/10/twittertwitterunicornkestrelflock_db.html
Rails ServerのMongrelとUnicornを比較すると、Mongrelは、スーパーマーケットのレジに並ぶたくさんの列があるが、どの列の処理ががどれだけかかるか知らされないままに並ばせられるようなものなのに対し、
Unicornは処理してくれる番が自動的に割り振られる長い列の中で待っているようなものだ。
0694nobodyさん2010/07/01(木) 18:25:41ID:wNXa1RdM
すみません。インストールで詰んでます。。Windows7です

1.ActiveScriptRuby 1.8.7(p299)をインストール
2.RDoc1.8.msiをインストール
3.管理者権限でruby consoleを起動
4.gemのバージョンは1.3.7で、gem install rails --include-dependencies
5.とすると下記のエラーが出ます。
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
too many connection resets (http://rubygems.org/gems/activeresource-2.3.8.gem)

エラーの内容でググって、ファイヤーウォールを切ってみたり、
時間を置いて再挑戦してみても毎回同じエラーが出ます。

状況を判断する情報が不足しているかも知れませんが、
どう対処すればよいか教えて頂けないでしょうか?
0695nobodyさん2010/07/01(木) 18:45:29ID:NcLY7s4Z
Rails can also be downloaded as stand-alone packages.
http://rubyforge.org/frs/download.php/63167/rails-2.3.4.gem
http://rubyforge.org/frs/?group_id=307
06966942010/07/01(木) 19:05:49ID:???
>>695
手動インストールを試していませんでした。
教えて頂いたリンク先からrails 2.3.4をインストールできました。

助かりました。ありがとうございました。
0697nobodyさん2010/07/01(木) 21:52:35ID:???
rails 2.3.5を使用しています。
ActiveRecordを使用してデータベースの複数のテーブルから情報を取り出しています。
validateで入力エラーチェックをさせエラーの場合再入力を求めようとしています。
一度controllerに渡してしまった値を、データベースから取り出した状態と同じ型にしたいのですが簡単に出来る方法はありませんか?
データひとつひとつにModel.new(params[:data])みたいなことをしないといけないのでしょうか?
0698nobodyさん2010/07/01(木) 21:59:56ID:akp3EIN0

http://weblog.rubyonrails.org/2010/5/25/ruby-on-rails-2-3-8-released

http://weblog.rubyonrails.org/2010/6/8/rails-3-0-beta-4-now-rc-in-days
0699nobodyさん2010/07/01(木) 22:30:10ID:???
>>697

1. DBからARのインスタンスを作る
2. クライアントに渡す
3. クライアントから送られてきたデータで保存用ARインスタンスをつくり、validate
4a. validなら保存して終了
4b. invalidな場合、validな属性は残し、invalidだった属性には元の値をいれて2.に戻る

こういう流れ?
0700nobodyさん2010/07/01(木) 22:57:18ID:???
1. DBからARのインスタンスを作る
2. クライアントに渡す
3. クライアントから送られてきたデータで保存用ARインスタンスをつくり、validate
4a. validなら保存して終了
4b. invalidな場合、クライアントから送られてきたデータ全てをクライアントに渡し直す

こういう流れです
クライアントはDBからのARインスタンスを受け取る形にしている為、4b.から同じ形で戻したいと思ってます
0701nobodyさん2010/07/01(木) 23:21:10ID:???
ひとつ聞きたいのだが、
スキャフォールドにバリデートを仕込んだプログラムを動かしたことあるか?
0702nobodyさん2010/07/01(木) 23:44:44ID:???
@example = Example.new
@example(params[:data])

begin
@example.save!
rescue
respond_to do |format|
format.html { render(:action => :new) }
end
else
respond_to do |format|
format.html { redirect_to(examples_path)}
end
end

このような簡単な物なら動かしたことあります
今回は上記例で言うとvalid(@example.saveが成功)の時に他のテーブルに詳細情報のsaveを行うという処理です
複数の配列で渡される詳細情報の一行ごとにわざわざModel.new(params[:data])みたいなことをしないといけないのかと思ったので質問しました
0703nobodyさん2010/07/02(金) 01:56:06ID:???
そういうのはビジネスロジックを入れ込んだモデルを
自作してやるのがいいと思う
すべてを単純なActiveRecordの使い方で解決できるわけじゃないよ
詳細情報のテーブルがあるなら、たぶんトランザクションを使わなきゃだろうし
0704nobodyさん2010/07/02(金) 10:31:57ID:???
> 複数の配列で渡される詳細情報の一行ごとにわざわざModel.new(params[:data])みたいなことをしないといけないのかと思ったので質問しました

やんなきゃダメに決まってるだろ
0705nobodyさん2010/07/02(金) 11:44:58ID:???
Model.new(params[:data])
これが一番早そうに見えるけどなー

確認画面つくりたい、とかそういうことなのかな
0706nobodyさん2010/07/02(金) 13:16:13ID:???
>>697
>>一度controllerに渡してしまった値を、データベースから取り出した状態と同じ型にしたいのですが簡単に出来る方法はありませんか?

@hoge.reload! unless @hoge.new_record?

でいいんじゃないかな
07077062010/07/02(金) 13:20:03ID:sGfCCO6j
ごめ reload! でなくて reload ね
0708nobodyさん2010/07/04(日) 14:29:11ID:XskYE57I
[rtc2009]日本最大のRailsサイト、クックパッドのものづくり / 楽天市場を取り巻く状況と開発, 2009/10/24 楽天テクノロジーカンファレンス2009 ---- 日本最大のRa...

http://www.ustream.tv/recorded/2412795
0709nobodyさん2010/07/05(月) 01:14:01ID:jDnqYSFv
http://d.hatena.ne.jp/asin/4873113679
0710nobodyさん2010/07/07(水) 23:56:49ID:???
DBがmysqlの場合、rootでパスワードなしでrailsからのアクセスを許可する場合は、database.yml に
どのように記述すればよいのでしょうか

username や password の項目をカラにしたり消したりしても、必ず mysql -u -p 状態でアクセスしているようなのです。
0711nobodyさん2010/07/08(木) 00:13:24ID:9GZuVBBR
>>710
そんなことはないよ、ウチはこれできちんと動いているので
adapter: mysql
database: testapp
username: root
host: localhost
pool: 5
timeout: 5000
0712nobodyさん2010/07/08(木) 04:13:31ID:iwaCqQlB

今では、ビッダーズについては、バックエンドはもうRailsでサクっと作っていこうという方向になっています。
広告のシステムもどんどん改善して、フェーズ3や4をやっていますし、それ以外の部分もRailsで書き直しています。
Rubyはシンプルに作れるし、自動テストが作りやすいのも良いですね。

http://www.dena.jp/recruit/sp/engineer/interview/hanabe.html
0713nobodyさん2010/07/08(木) 06:19:40ID:iwaCqQlB

工数を約3割削減
楽天、Railsを使ってマイページを刷新
http://www.atmarkit.co.jp/news/200712/18/rakuten.html
0714nobodyさん2010/07/08(木) 08:02:45ID:???
>>710
rootのpasswordなしなら
usernameはrootにはしろよw
0715nobodyさん2010/07/08(木) 08:19:40ID:iwaCqQlB
リクルート メディアテクノロジーラボ
「Railsサイト安定運用の心構え 〜8つのサービスから学ぶ」
http://b.hatena.ne.jp/entry/www.nicovideo.jp/watch/sm8258661
http://gihyo.jp/news/report/01/rubykaigi2009/0002?page=4
0716nobodyさん2010/07/08(木) 09:46:22ID:iwaCqQlB

クックパッド
http://blog.kushii.net/archives/1350951.html

http://www.red-mount.com/blogs/show/ruby_on_rails_cookpad
07177002010/07/08(木) 15:37:43ID:???
>>701
の通りにしても、logには以下のように出てしまいます。

Status: 500 Internal Server Error
Access denied for user 'root'@'localhost' (using password: NO)

やむえず、暫定的にパスワード付きのmysqlアカウント作って運用しようとしていますが・・・
困りました…
0718nobodyさん2010/07/08(木) 19:37:06ID:iwaCqQlB
Twitter検索急増中【ループス斉藤徹】 : TechWave 
http://techwave.jp/archives/51475780.html
Twitter共同創業者のBiz Stone氏は,Twitterの一日あたりの検索回数が8億回に達したとコメントした。

Odeo内で始めた小さなプロジェクトが「Twitter」だ。
Ruby on Railsを使って2週間で最初の動くバージョンを作り上げたという。
http://www.atmarkit.co.jp/news/200711/16/twitter.html
0719nobodyさん2010/07/08(木) 22:08:09ID:???
mysqlが同じマシン上で動いてるわけじゃないんだろ?
Access deniedで当たり前
0720nobodyさん2010/07/08(木) 22:17:33ID:???
>>719
それが同じマシンなんです・・・
普通に mysql -u root ってやればPASSなしで mysqlにつながる・・・
0721nobodyさん2010/07/08(木) 22:57:39ID:???
localhostでちゃんとつながるんだろうな
OSやRuby・Rails・mysqlのバージョン、設定内容くらいは書けよ
ユーザーはroot、パスワードなしなら問題ないだろ
db名を晒すのがいやなら、そこだけ変えとけ
0722nobodyさん2010/07/09(金) 02:00:28ID:zqSlFWRR

>>710
http://www.wikiplus.jp/dev/howto_jph_placeholder.html
YAML形式はインデント(半角スペースの数)に意味がある形式ですので、
インデントとして使用しているスペースの数に注意してください。


0723nobodyさん2010/07/09(金) 08:29:43ID:JiG4FQlx

ついに月次訪問者でツイッターがmixiを抜いた!
さらにツイート数で米国を逆転か?:in the looop:ITmedia オルタナティブ・ブログ
http://blogs.itmedia.co.jp/saito/2010/06/post-4bfd.html
http://techwave.jp/archives/51473193.html
http://techwave.jp/archives/51476110.html

Twitter検索急増中【ループス斉藤徹】 : TechWave 
http://techwave.jp/archives/51475780.html
Twitter共同創業者のBiz Stone氏は,
Twitterの一日あたりの検索回数が8億回に達したとコメントした。

ウィリアム氏がOdeo内で始めた小さなプロジェクトが「Twitter」だ。
Ruby on Railsを使って2週間で最初の動くバージョンを作り上げたという。
http://www.atmarkit.co.jp/news/200711/16/twitter.html
0724nobodyさん2010/07/09(金) 09:02:40ID:zqSlFWRR

【Python】Webフレームワーク Djangoスレ Part1
1 :nobodyさん:2006/08/27(日) 02:20:54 ID:yog4uW4e
http://pc11.2ch.net/test/read.cgi/php/1156612854/l50

【Ruby】Ruby on Rails Part9
1 :nobodyさん:2010/02/19(金) 16:13:13 ID:SpWtnpr8
http://pc11.2ch.net/test/read.cgi/php/1266563593/l50

【Perlフレームワーク】Catalystを語る人
1 :nobodyさん:2007/01/10(水) 14:19:45 ID:54lQQlHb
http://pc11.2ch.net/test/read.cgi/php/1168406385/
0725nobodyさん2010/07/09(金) 13:24:40ID:???
またかよ
0726nobodyさん2010/07/09(金) 13:35:27ID:???
上のやつって人力BOT?
0727nobodyさん2010/07/09(金) 21:05:21ID:???
以下のような形で、いくつかのModelに関する あるnamed_scopeだけを共通化しようとしています。

include Pom
class Hoge < ActiveRecord::Base

end


module Pom
def self.included(base)
base.extend ClassMethods
end
module ClassMethods
ActiveRecord::Base.class_eval do
named_scope :moe
end
end
end

このコードにり、とりあえず Hoge.moe と出来るようになるのですが、
全く関係の無い他のモデル User などでも、一度 Hoge.moe をやってしまうと
User.moe などが定義されてしまいます。
要は、サブクラスHogeが継承した ActiveRecordだけでなく、全体の ActiveRecord に
影響が出ているわけです。
何とか、include Pom をした モデルのみ、該当 named_scope が定義される、
という風に出来ないでしょうか。
0728nobodyさん2010/07/09(金) 21:38:32ID:???
とりあえず、これは出来るよね。
module Pom
  def self.included(base)
    base.class_eval do
      named_scope: moe, ...
    end
  end
end

0729nobodyさん2010/07/09(金) 21:56:54ID:???
>>728

出来ました。ありがとうございます!
一つ間違いがあって、

include Pom
class Hoge
end

ではダメで、

class Hoge
include Pom
end

とするべきだったのですね。
(上のだと、当然 named_scopeなんて見つからない、というエラーになる)

お騒がせしました。
0730名無しさん@そうだ選挙に行こう2010/07/10(土) 11:09:01ID:???
参考リンクBOTさん、リンクだけじゃなくて話題もふれw
0731名無しさん@そうだ選挙に行こう2010/07/10(土) 11:15:20ID:???
>>717
みんな指摘してるけど、

もっと根本的なところを

・プロジェクトディレクトリ(RAILS_ROOT)でrake routesコマンドがエラーなしで動くか
・プロジェクトディレクトリ(RAILS_ROOT)でruby script/runner "puts 'aho'" がエラーなしで動くか
・そもそもsqlite3では動くか

環境はできるだけ書こう。バージョンごとの不具合や環境特有の問題も多々ある
例えば、以前Win32だとRubyのMySQLと動いているMySQLのバージョンが合わないということがあったな
ただ、そのときAccess deniedだったかはわからんが
0732名無しさん@そうだ選挙に行こう2010/07/11(日) 10:43:05ID:nMFWMmUK

In this first MEAP release of Rails 3 in Action

Rails 3 in Action
Yehuda Katz and Ryan A. Bigg
http://www.manning.com/katz/

http://www.manning.com/katz/R3iA_MEAP_01.pdf
0733nobodyさん2010/07/12(月) 17:41:39ID:???
railsで開発しているとURL(特にGETで取得したページ)が、滅茶苦茶汚くなるのですが、
これは何とかならないのでしょうか。データベースのカラム名がそのまま出ているのが・・・
0734nobodyさん2010/07/12(月) 17:55:53ID:???
いまどういうURLでそれをどうしたいんだよ
0735nobodyさん2010/07/12(月) 21:53:06ID:???
うちのはDBのテーブルともカラムとも似ても似つかない名前になってるが。
デフォルトで楽をするか自分が気に入るように定義するか、だけ。
0736nobodyさん2010/07/12(月) 23:50:58ID:???
>>733の言っていることがさっぱりわからなかった件
0737nobodyさん2010/07/13(火) 00:20:02ID:TRacpP/q
Rails2.0のRouting(config/routes.rb)の記述方式についてのまとめ。 ? RAILS PRESS

http://railspress.matake.jp/rails20%E3%81%AErouting%EF%BC%88configroutesrb%EF%BC%89%E3%81%AE%E8%A8%98%E8%BF%B0%E6%96%B9%E5%BC%8F%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E3%81%BE%E3%81%A8%E3%82%81%E3%80%82
0738nobodyさん2010/07/13(火) 00:20:27ID:???
scaffoldしまくってるんじゃないの?w
DBのテーブルだけ作りたかったら、script/generate modelだけすればいいし、
コントローラーだけとか、viewだけとかも作れるよ
0739nobodyさん2010/07/13(火) 01:20:21ID:???
>>738
あまりにもあさっての方向すぎて全くわからない
たぶんいじりたての学生だろうけど
0740nobodyさん2010/07/13(火) 21:52:57ID:???
ruby1.9で本番サービスを運用されている方いますか?
なんつーのか、注意しないといけない点やら、独自パッチ当てたりしないといけなかったりで、
ほとんど使い物にならなくないですか
0741nobodyさん2010/07/13(火) 23:39:52ID:???
具体性が全くないから同意も反論もできないのだが
Railsのバージョンすらわからないし
passengerを使ってるのかそのほかのソフトを使ってるのかとかも

おれは一応1.9.1で運用してるけどね
0742nobodyさん2010/07/14(水) 01:28:35ID:???
>>741
railsのバージョンによって1.9で動いたり動かなかったりするわけですね
07437412010/07/14(水) 01:50:58ID:???
>>742
はい
0744nobodyさん2010/07/14(水) 04:11:53ID:1s3A3DlC
http://www.find-job.net/list/j36257.html?from=41
0745nobodyさん2010/07/14(水) 16:30:45ID:???
>>740
はい
0746nobodyさん2010/07/15(木) 03:28:37ID:???
クックパッド様はいろいろ試行錯誤した結果、mongrelが一番良いと判断したんですね。
分かります。
0747nobodyさん2010/07/15(木) 04:27:46ID:???
今ならUnicornがいいんだっけ
0748nobodyさん2010/07/15(木) 08:19:19ID:???
>>747
マジですか?

がんがってmongrel_cluster+god覚えたのに・・・
0749nobodyさん2010/07/15(木) 10:26:56ID:???
検索したらでてきた

> ■ Rails アプリのデプロイについてCommentsAdd Star
>
> 何が最適なのか僕の見解です
> 普通の Rails アプリの場合
>
> nginx -> unix domain socket -> unicorn
>
> デプロイ時のダウンタイムも少なければハードウェアリソースの消費も少ない。特に理由が無ければこれでいいんじゃないか。
> 大容量の静的ファイルを多数配信することがある場合
>
> nginx -> Passenger
>
> コネクションを沢山張りたいという用途ではこっちの方がいい気がする。 unicorn を使ってスタティックなファイルを置いてあるところだけ直接 nginx で捌くというのもいいけど、設定が複雑になる。 Passenger で捌ける限りは Passenger を使うのが楽。
> お前が白痴の場合
>
> thin や mongrel を使う。

Rails アプリのデプロイについて - 口内炎延焼
http://d.hatena.ne.jp/ssig33/20100710/1278722672
0750nobodyさん2010/07/15(木) 10:32:23ID:???
おい、段落の改行がきえてるし、コピペミスってるじゃねーか誤解をあたえるぞ、それ

> ■ Rails アプリのデプロイについてCommentsAdd Star
>
> 何が最適なのか僕の見解です
>
> 普通の Rails アプリの場合
>
>   nginx -> unix domain socket -> unicorn
>
>   デプロイ時のダウンタイムも少なければハードウェアリソースの消費も少ない。
>   特に理由が無ければこれでいいんじゃないか。
>
> 大容量の静的ファイルを多数配信することがある場合
>
>   nginx -> Passenger
>
>   コネクションを沢山張りたいという用途ではこっちの方がいい気がする。
>   unicorn を使ってスタティックなファイルを置いてあるところだけ直接 nginx で
>   捌くというのもいいけど、設定が複雑になる。
>   Passenger で捌ける限りは Passenger を使うのが楽。
>
> お前が白痴の場合
>
>   thin や mongrel を使う。

Rails アプリのデプロイについて - 口内炎延焼
http://d.hatena.ne.jp/ssig33/20100710/1278722672
0751nobodyさん2010/07/15(木) 11:26:20ID:???
mongrel って開発者が嫌になってメンテも辞めてるんだよな
apacheの機能があれこれ使える分、passenger一択の気はする
0752nobodyさん2010/07/15(木) 11:34:04ID:???
cookpadって技術力がないことで有名なところじゃん
0753nobodyさん2010/07/15(木) 11:43:22ID:???
技術力無くても上場できるってことか。希望を持てるな
0754nobodyさん2010/07/15(木) 11:47:24ID:???
上でURL挙げてるはてなのブログ、相当いっちゃってるな
0755nobodyさん2010/07/15(木) 12:09:26ID:???
cookpad技術力がないってのは間違いかと
ruby,railsに関する限り、日本では一番だと思う
未だにmongrel使ってるのは、mongrel以外の選択肢がない時代からずっと
サービス提供してるからってだけだと思う
0756nobodyさん2010/07/15(木) 12:16:26ID:???
家庭の主婦を相手にすると儲かるということか
0757nobodyさん2010/07/15(木) 12:21:45ID:???
しかし、COOKPADは直リンク禁止メールの時みたいに、
技術的に簡単に解決できる事ですら簡単に解決できない会社なので、
技術力を疑われるのは当然かと。
0758nobodyさん2010/07/15(木) 12:23:45ID:???
これだったかな?直リン禁止メール
http://tech.bayashi.jp/archives/entry/web-service/2009/002796.html
0759nobodyさん2010/07/15(木) 12:32:35ID:???
>>755
社員乙
0760nobodyさん2010/07/15(木) 13:55:13ID:???
twitter様はunicornだよね。
天下のtwitter様が使ってるなら間違いないんだろう。
0761nobodyさん2010/07/15(木) 13:58:13ID:???
twitterはちゃんとアクセスを捌ききれていないように思えるがw
0762nobodyさん2010/07/16(金) 04:36:33ID:???
元々エンタプライズ向けじゃないしなあ。
最初rorで作ってみたけど立ち行かなく成ったのかjavaで作り直す案件結構出て来てるよ。
0763nobodyさん2010/07/16(金) 04:46:06ID:zioZ8gpO

>>732

http://conta.cc/bglfGL Save 40% on all Manning books!

http://twitter.com/ManningBooks/status/18621527498
0764nobodyさん2010/07/16(金) 10:54:40ID:AY0Kcvev

ValuePress!のサーバー群のうち1台を紹介(ハードウェア編) ? yusukeooki blog
http://blog.yusukeooki.com/?p=678
0765nobodyさん2010/07/16(金) 12:59:13ID:vzTUPAqO
http://pc11.2ch.net/test/read.cgi/hosting/1277530892/l50
http://twitter.com/kunihirotanaka
http://blog.livedoor.jp/scarletwing/archives/65460127.html
0766nobodyさん2010/07/17(土) 11:31:40ID:???
>>757
よくわからん。
refererで該当サイトからのアクセスはトップに飛ばすとか、
新聞社みたいなことするってことか?
0767nobodyさん2010/07/17(土) 12:50:51ID:Qn1GNQWg
>>766
「特定ドメインのRefferにmatchする場合はimg src画像を差し替える」
http://b.hatena.ne.jp/otsune/20091020#bookmark-16845957


http://recipe.bayashi.net/
0768nobodyさん2010/07/17(土) 12:59:53ID:???
全然関係ないではないか
0769nobodyさん2010/07/17(土) 16:27:23ID:???
>>767
クックパッドの意図は無断リンク禁止ではない - 最終防衛ライン2
http://d.hatena.ne.jp/lastline/20091020/1256018685


を受けてのotsuneのブクマコメントか

> # otsune otsune id:tailtameさん。「特定ドメインのRefferにmatchする場合はimg src画像を差し替える」ぐらいは
> サーバー側でものすごい低コストで出来るんだから、負荷で困ってたらまず対策するのが先じゃないかな?
> 「空気読め」は通じない 2009/10/20


商用サイトでの直リンは、「リンクの仕方やページの内容によっては断ることがある」

COOKPADレシピは「直リンOK」 ネットの“誤解”でリンクポリシー表記を修正 - ITmedia News
http://www.itmedia.co.jp/news/articles/0910/20/news108.html

結局、cookpad側の真意が結局わからないw

気に入らないサービスに技術的に対処するより、(誤解されたが)警告メール出す方がコストかからない
というのはわからんでもない

エスカレートして図書館クローラーで逮捕されたみたいに、
技術的対処したりプロバイダ経由で警告送ったりするより、被害届出すほうがコストかからないみたいになるのはいやだがw
0770nobodyさん2010/07/17(土) 22:20:30ID:???
2ch的には、rails用の最強のappサーバはunicornに決定しますた。
0771nobodyさん2010/07/18(日) 04:47:17ID:1+I1LH1o
http://pc11.2ch.net/test/read.cgi/hosting/1279299197/l50
http://pc11.2ch.net/test/read.cgi/hosting/1277530892/l50
http://pc11.2ch.net/test/read.cgi/hosting/1270458457/l50
0772nobodyさん2010/07/18(日) 08:08:45ID:NTuT6cO8
>>757
会社の規模を考えると、サーバー管理者はまた専門にいるだろうから
おそらく社内をグルグル回ってApacheの設定を弄ってもらうより
メール1通で済むならその方が楽と判断したのでしょう

あれくらいの規模になると、おきないおきないとか思って弄っても、何処かしら問題を起こすものなので
自分の責任でシステム弄って障害起こしてごめんなさいするくらいなら
原始的だけどこういう方法の方が安全でしょう
っていうか、コンセンサスって作るのめんどうくせぇ! うがぁぁぁ!
0773nobodyさん2010/07/18(日) 08:18:28ID:1+I1LH1o



ワールドカップ閉幕:Twitter史上、最も注目を集めるイベントとなった
http://jp.techcrunch.com/archives/20100716twitter-the-world-cup-final-was-our-most-tweeted-event-ever/
ワールドカップの決勝は史上かつてないほどの盛り上がりを見せた。
ゲームの最後15分間は毎秒2,000以上のツイートが発せられ、
スペインが決勝点を入れた際には秒間3,051ものツイートが流れることとなった。

決勝戦の際、172ヶ国の人が27の異なる言語でツイートしていた。
決勝ゴールの瞬間、81ヶ国の人が23ヶ国語でツイートしていた。

RORのままアーキテクチャの変更で10000%高速化したとな。
ttp://b.hatena.ne.jp/entry/highscalability.com/scaling-twitter-making-twitter-10000-percent-faster

ミニブログの Twitterのstats(統計)データ。
http://kaworu.jpn.org/kaworu/2008-01-16-2.php
- 350,000を超えるユーザ。
- 秒間600リクエスト
- 平均毎秒200-300コネクション。最大時は秒間800コネクション
- MySQLは秒間2,400リクエストを処理する
- 180のRailsインスタンスがある。MongrelのWebサーバを使っている。
- 1つのMySQLサーバ(1つの大きな 8コアのサーバ)と1つのスレーブ。スレーブは、統計とレポートのための読み込み専用(リードオンリー)。
- 雑用処理をするための30+のプロセス
- 8台のSun X4100s
- Railsでのリクエストの処理時間は200 msec
- データベースにかかる時間の平均は、50-100 msec
- 16GBの memcached

0774nobodyさん2010/07/18(日) 08:28:54ID:???
2年半前のデータを挙げるとか、手動ボットなら相当頭悪いな
0775nobodyさん2010/07/18(日) 09:56:38ID:???
memcachedに16GBも使えるなんて
どんだけブルジョアなんだよ。
0776nobodyさん2010/07/18(日) 15:24:36ID:???
2008年のころのTwitter規模なら16GBとmemcachedでうすむのかー

などとポジティブにレスする
0777nobodyさん2010/07/18(日) 15:36:44ID:???
16GBのmemcached一台だけ???
0778nobodyさん2010/07/18(日) 16:01:40ID:???
twitterは入り口がnginxじゃなくてapacheなんだ。
0779nobodyさん2010/07/18(日) 22:21:33ID:???
24時間365日運用しているシステムをRailsで作れるの?
実績が心配だよな。
0780nobodyさん2010/07/18(日) 23:07:21ID:???
今更実績とか
■ このスレッドは過去ログ倉庫に格納されています