[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

slow ruby execution on FreeBSD

Guy Speier

4/21/2007 6:57:00 AM

Howdy,

Total green-horn here. A few weeks ago, a test website we were bulding (on
freebsd with mysql) slowed waaaay down.

I **believe** I have the problem narrowed down to this line of code in
/vendor/rails/railties/lib/initializer.rb:
configuration.frameworks.each { |framework| require(framework.to_s) }

I Say I think I've got it narrowed doen to this line of code, because I have
it flanked by puts "AAA" and puts "BBB", and whenever I execute:
config/environment.rb
there is a ~6 second pause between AAA and BBB to STDOUT.

Like I've said (and I'm sure you would have realized by now), I am a total
greenhorn here, but:
1) Is this pause to be expected, or have I stumbled upon the issue?
2) What does this line (configuration.frameworks.each { |framework|
require(framework.to_s) }) mean? Can someone point me to the next file/line
to look?
3) Any ideas?

I really appreciate it!
Guy



4 Answers

Tim Hunter

4/21/2007 12:36:00 PM

0

Guy Speier wrote:
> Howdy,
> Total green-horn here. A few weeks ago, a test website we were
> bulding (on freebsd with mysql) slowed waaaay down.
> I **believe** I have the problem narrowed down to this line of code in
> /vendor/rails/railties/lib/initializer.rb:
> configuration.frameworks.each { |framework| require(framework.to_s) }
You're probably going to get better advice on the Rails list:
http://www.rubyonrails.org...

Good luck!

Brian Candler

4/21/2007 12:37:00 PM

0

On Sat, Apr 21, 2007 at 03:56:38PM +0900, Guy Speier wrote:
> I **believe** I have the problem narrowed down to this line of code in
> /vendor/rails/railties/lib/initializer.rb:
> configuration.frameworks.each { |framework| require(framework.to_s) }
>
> I Say I think I've got it narrowed doen to this line of code, because I
> have it flanked by puts "AAA" and puts "BBB", and whenever I execute:
> config/environment.rb
> there is a ~6 second pause between AAA and BBB to STDOUT.

Rails does indeed have a long startup time. But normally it doesn't matter,
because the same instance should remain around to handle subsequent
requests.

So it sounds like you've broken something else, such that either Rails can't
start at all, or it starts, handles one (or a few) requests, and then
terminates.

Debugging this would depend on exactly how you're running rails, e.g. under
fastcgi, or under mongrel, or webrick. I suggest you go to the Rails google
group for advice, since this is the Ruby Language list, not the Rails group.

Regards,

Brian.

P.S. Don't run rails as a normal CGI. This will *guarantee* a 6-second
startup overhead for every page request.

Guy Speier

4/21/2007 1:11:00 PM

0

Thanks Brian,

I will check out the rails side.

Can you tell me (or point me to a faq) what the difference between rails &
ruby is? Also, I think this is running fastcgi, but how would I know for
sure?

thanks,
Guy

Brian Candler writes:

> On Sat, Apr 21, 2007 at 03:56:38PM +0900, Guy Speier wrote:
>> I **believe** I have the problem narrowed down to this line of code in
>> /vendor/rails/railties/lib/initializer.rb:
>> configuration.frameworks.each { |framework| require(framework.to_s) }
>>
>> I Say I think I've got it narrowed doen to this line of code, because I
>> have it flanked by puts "AAA" and puts "BBB", and whenever I execute:
>> config/environment.rb
>> there is a ~6 second pause between AAA and BBB to STDOUT.
>
> Rails does indeed have a long startup time. But normally it doesn't matter,
> because the same instance should remain around to handle subsequent
> requests.
>
> So it sounds like you've broken something else, such that either Rails can't
> start at all, or it starts, handles one (or a few) requests, and then
> terminates.
>
> Debugging this would depend on exactly how you're running rails, e.g. under
> fastcgi, or under mongrel, or webrick. I suggest you go to the Rails google
> group for advice, since this is the Ruby Language list, not the Rails group.
>
> Regards,
>
> Brian.
>
> P.S. Don't run rails as a normal CGI. This will *guarantee* a 6-second
> startup overhead for every page request.
>



Phillip Gawlowski

4/21/2007 1:20:00 PM

0

Guy Speier wrote:
> Thanks Brian,
> I will check out the rails side.
> Can you tell me (or point me to a faq) what the difference between rails
> & ruby is?

Rails is a framework for website creation, written in the Ruby scripting
language.

> Also, I think this is running fastcgi, but how would I know
> for sure?

Shot into the dark: Check your webserver configuration?

--
Phillip "CynicalRyan" Gawlowski
http://cynicalryan....
http://clothred.rub...

Rule of Open-Source Programming #15:

If you like it, let the author know. If you hate it, let the author
know why.