rails:3547
From: Akira Matsuda <ronnie@d...>
Date: Sat, 29 Jan 2011 08:52:03 +0900
Subject: [rails:3547] Re: ActiveResource経由でサイズの大きなファイルを送るときの問題
松田といいます。 2011/1/28 y koshiyama <koshiyama.fb@g...>: > ActiveResourceに関して質問させて下さい。 > 現在、以下の環境でWebアプリケーションを開発しています。 > ■jruby1.5.6 > ■rails2.3.5 > また、発生する通信の概要は以下の通りです。 > クライアントPC ←→ Webサーバ1 ←(ActiveResource経由)→Webサーバ2 ←→ DB > このとき、ActiveResource経由でファイルの送受信処理が発生するのですが、 > 数MB程度のファイルを送受信すると、(ActiveResourceインスタンス).saveを実行したところで処理が重くなります。 > 具体的にはメモリを数百メガバイト消費し始め、数分間処理が戻ってきません。 > これはActiveResourceの仕様なのでしょうか? 頂いた情報だけではなんとも言えないのですが、直感的にはXMLが怪しそうな気がします。 が、AResのXMLの実装は確かにだいぶ富豪気味ではあるのですが、そこまで実用に耐えないほどではないはずです。 たとえば以下のようにもう少し問題を切り分けていただくことは可能ですか? ・「saveを実行したところで」と書かれていますが、newしただけではメモリはそんなに食わないのでしょうか? ・「数分間処理が戻ってきません」ということはCPUもイッちゃってる感じですか?だとしたらどのメソッド呼び出しででしょうか? ・JRubyをお使いとのことですが、XMLバックエンドは何が使われているのでしょうか? ・CRubyでも同じ問題が発生しますか? ・同じXMLをファイルで保存しておいてconsole等でHash.from_xml してみたらメモリ消費量はどうでしょうか? ・ファイルサイズは同じぐらいでnode数は極端に少ないXMLを食わせてみたらどうなりますか? -- Akira Matsuda<ronnie@d...> -- ML: rails@r... 使い方: http://QuickML.com/
@ 3546 2011-01-28 02:33 [koshiyama.fb@g... ] ActiveResource経由でサイズの大きなファイルを送るときの問題 -> 3547 2011-01-29 00:52 ┗[ronnie@d... ] @ 3549 2011-01-31 11:03 ┗[koshiyama.fb@g... ]