# Mod\_Rails Released - Post your Thoughts

**URL:** <https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893>\
**Category:** rubyonrails-talk\
**Created:** [April 11, 2008, 7:22pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893 "2008-04-11T19:22:05Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![ChessMess](https://avatars.discourse-cdn.com/v4/letter/c/0ea827/32.png) [@ChessMess](https://discuss.rubyonrails.org/u/ChessMess)\
**Post date:** [April 11, 2008, 7:22pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/1 "2008-04-11T19:22:05Z")

</div>

[http://modrails.com/](http://modrails.com/)

Mod\_Rails is out, so what do you think?

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 11, 2008, 7:26pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/2 "2008-04-11T19:26:38Z")

</div>

ChessMess wrote:

> [http://modrails.com/](http://modrails.com/)
> 
> Mod\_Rails is out, so what do you think?

I think that I might give it a try out.

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 11, 2008, 9:23pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/3 "2008-04-11T21:23:38Z")

</div>

Let's see:

- Faster than mongrel, on par with thin - Thoroughly tested and profiled for stability - Two lines of installation and a small snippet of code in apache config - Free to use and completely open source

I would say this is an exciting day for rails.

---

<div class="post-metadata">

**Author:** ![Sam\_G](https://avatars.discourse-cdn.com/v4/letter/s/f9ae1b/32.png) [@Sam\_G](https://discuss.rubyonrails.org/u/Sam_G)\
**Post date:** [April 11, 2008, 9:42pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/4 "2008-04-11T21:42:58Z")

</div>

So far so good. I like not having to deal with cleaning up after mongrel.

I have to reconfigure my capistrano scripts to reflect this, but i like what I see.

ChessMess wrote:

---

<div class="post-metadata">

**Author:** ![DyingToLearn](https://avatars.discourse-cdn.com/v4/letter/d/3d9bf3/32.png) [@DyingToLearn](https://discuss.rubyonrails.org/u/DyingToLearn)\
**Post date:** [April 12, 2008, 12:41am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/5 "2008-04-12T00:41:00Z")

</div>

This looks great. Would one ever use this in a development/testing environment?

Thanks

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 12, 2008, 1:55am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/6 "2008-04-12T01:55:25Z")

</div>

ChessMess wrote:

> [http://modrails.com/](http://modrails.com/)
> 
> Mod\_Rails is out, so what do you think?

I added a .htaccess file to my app root containing:

\<IfModule mod\_rewrite.c\> &nbsp;&nbsp;&nbsp;RewriteEngine on &nbsp;&nbsp;&nbsp;RewriteRule ^$ public/ [L] &nbsp;&nbsp;&nbsp;RewriteRule (.\*) public/$1 [L] \</IfModule\>

So now i can drag and drop the whole app into the folder without pointing the root to the public folder (one extra step less).

I really like it.

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 12, 2008, 12:16pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/7 "2008-04-12T12:16:36Z")

</div>

Great day for Ruby on Rails.

We do not have a single reason now to envy PHP or Asp.Net, when it comes to deployment.

I am full of cheers...

lets see, what rubinius does with with such inspiration.

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 12, 2008, 2:40pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/8 "2008-04-12T14:40:37Z")

</div>

John Harrison wrote:

> I added a .htaccess file to my app root containing:
> 
> \<IfModule mod\_rewrite.c\> &nbsp;&nbsp;&nbsp;RewriteEngine on &nbsp;&nbsp;&nbsp;RewriteRule ^$ public/ [L] &nbsp;&nbsp;&nbsp;RewriteRule (.\*) public/$1 [L] \</IfModule\>
> 
> So now i can drag and drop the whole app into the folder without pointing the root to the public folder (one extra step less).
> 
> I really like it.

John,

Would you mind explaining what you mean? If you still have to set up a virtual host in your apache config, what step are you saving since you have to define DocumentRoot? If you are talking about being able to use the same domain and have the Rails app appear "under" it, such as

www.mydomain.com/my\_rails\_app

wouldn't that require something like a prefix in the app so your generated routes would be correct? I'm thinking of the situation where you have to apps living next to each other like

www.mydomain.com/rails\_app\_1 www.mydomain.com/rails\_app\_2

and how you'd need a prefix in both apps for the routes to work.

I might be missing something, though. I'd really like to be able to have many apps live under one domain easily.

Thanks, Phillip

---

<div class="post-metadata">

**Author:** ![Bill\_Walton](https://avatars.discourse-cdn.com/v4/letter/b/f07891/32.png) [@Bill\_Walton](https://discuss.rubyonrails.org/u/Bill_Walton)\
**Post date:** [April 12, 2008, 3:54pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/9 "2008-04-12T15:54:18Z")

</div>

Exceptional! Any chance we'll see a Windows executable, maybe packageable with Instant Rails?

Best regards, Bill

---

<div class="post-metadata">

**Author:** ![Felipe\_Knaesel\_Koch](https://avatars.discourse-cdn.com/v4/letter/f/48db29/32.png) [@Felipe\_Knaesel\_Koch](https://discuss.rubyonrails.org/u/Felipe_Knaesel_Koch)\
**Post date:** [April 12, 2008, 9:14pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/10 "2008-04-12T21:14:01Z")

</div>

I think this is one of the best things to happen to RoR lately.

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 13, 2008, 10:39am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/11 "2008-04-13T10:39:42Z")

</div>

We have been testing mod\_rails over the past 48 hours or so and have it installed on our most recent shared server for clients to use. Thus far we're skeptical if it will be more stable than a Mongrel cluster in a shared environment but it certainly works as expected; upload your files and you're done (and it's speedy, too).

Testing with a fresh install of redmine-0.6 on RHEL5 w/ Apache 2.2.8, Mongrel 1.1.4, ruby 1.8.6 PL114, passenger 1.0.1 we've noticed a few things:

1) The app fired up in a Mongrel instance uses 35MB RES.

2) The app fired up with mod\_rails loads an ApplicationSpawner (40MB RES), a rails instance (39MB RES), and a FrameworkSpawner (25MB RES). The FrameworkSpawner only seems to run if you have Rails gems frozen in the app.

3) If the app hasn't been hit within the RailsPoolIdleTime the ApplicationSpawner/RailsInstance/FrameworkSpawner all die away. The next hit takes a few seconds for these to load again (remind you of something?).

At this point for shared clients we're still recommending Mongrel clusters over mod\_rails (Mongrels on average take less memory out of your quota and are 'always on') but are happy to offer both. Let me know if you'd like to see any further details on the above or have any other questions.

Cheers, ~William [http://www.hostingrails.com](http://www.hostingrails.com)[http://www.hostingrails.com/mod\_rails\_hosting](http://www.hostingrails.com/mod_rails_hosting)

---

<div class="post-metadata">

**Author:** ![DyingToLearn](https://avatars.discourse-cdn.com/v4/letter/d/3d9bf3/32.png) [@DyingToLearn](https://discuss.rubyonrails.org/u/DyingToLearn)\
**Post date:** [April 13, 2008, 8:19pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/12 "2008-04-13T20:19:44Z")

</div>

@William,

What about those with many different rails apps, all with low volume? So for example, if I had 10 apps, (each with \<5 visits per day) I would need 10 mongrels. Using you example numbers, that is 350MB. However, if I used mod\_rails, and I had the same 350MB available, would it share the available memory between only the running apps? That would (in theory) make the running apps faster, after the initial slow requets.

Thanks, Paul

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 14, 2008, 5:16am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/13 "2008-04-14T05:16:38Z")

</div>

Hi Paul, with \<5 visits per day per app I don't think you'd see much of a functional difference overall between mod\_rails and mod\_fcgid; the former may be more stable (hopefully) but the ladder takes much less memory, is widely supported, and is therefore much less expensive. Mod\_rails was built for speed, stability, and robustness with ease of deployment, but as of passenger-1.0.1 our tests have shown that for an app with a steady stream of visitors this comes at the cost of requiring more memory than the two most common methods of hosting Rails in a shared environment combined. At the end of the day, it appears that if all goes well mod\_rails will be for those who won't mind paying a lot of RAM for a bit more performance and deployment freedom.

~William [http://www.hostingrails.com](http://www.hostingrails.com)

DyingToLearn wrote:

---

<div class="post-metadata">

**Author:** ![Andrew7](https://avatars.discourse-cdn.com/v4/letter/a/d6d6ee/32.png) [@Andrew7](https://discuss.rubyonrails.org/u/Andrew7)\
**Post date:** [April 14, 2008, 5:46am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/14 "2008-04-14T05:46:30Z")

</div>

Just installed Passenger, and I love it. Works flawlessly with all of my Rails apps. However, when pointing my browser to all of my apps, it takes a while to load (around 30 seconds) but then it's really fast after that. Is this normal, do I need to make any optimizations, or is it just because of my sluggish iBook?

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 14, 2008, 6:43am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/15 "2008-04-14T06:43:59Z")

</div>

Install and setup was easy. Production logs indicate rails performance is faster.

Main problem I have right now is that static content (images, js files) seem to be taking 2 to 3 longer to download than when I was using Apache/Mongrel (measured using firebug's net tab).

Anyone else seeing an issue with static content download speed?

---

<div class="post-metadata">

**Author:** ![Pratik1](https://avatars.discourse-cdn.com/v4/letter/p/6bbea6/32.png) [@Pratik1](https://discuss.rubyonrails.org/u/Pratik1)\
**Post date:** [April 14, 2008, 11:26am UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/16 "2008-04-14T11:26:19Z")

</div>

William,

Could you have a look at [http://groups.google.com/group/phusion-passenger/browse\_thread/thread/e6dc620227ed7b4c](http://groups.google.com/group/phusion-passenger/browse_thread/thread/e6dc620227ed7b4c) and repeat your experiment ?

Passenger is designed to work best with GC enabled ruby patch [http://izumi.plan99.net/blog/index.php/2008/01/14/making-ruby’s-garbage-collector-copy-on-write-friendly-part-7](http://izumi.plan99.net/blog/index.php/2008/01/14/making-ruby%E2%80%99s-garbage-collector-copy-on-write-friendly-part-7) from the memory point of view. I'll need to convince Hongli/Ninh to make that information a bit more clear 🙂

With GC patch, each rails application can share the framework code in memory and that results in huge memory savings.

-Pratik

---

<div class="post-metadata">

**Author:** ![Hongli\_Lai1](https://avatars.discourse-cdn.com/v4/letter/h/eb8c5e/32.png) [@Hongli\_Lai1](https://discuss.rubyonrails.org/u/Hongli_Lai1)\
**Post date:** [April 14, 2008, 12:41pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/17 "2008-04-14T12:41:48Z")

</div>

> William,
> 
> Could you have a look athttp://groups.google.com/group/phusion-passenger/browse\_thread/thread… and repeat your experiment ?

Hi.

Thanks for explanation this Pratik. I wanted to say the same thing but you beat me to it. 🙂

> Passenger is designed to work best with GC enabled ruby patchhttp://izumi.plan99.net/blog/index.php/2008/01/14/making-ruby%E2%80%9... from the memory point of view. I'll need to convince Hongli/Ninh to make that information a bit more clear 🙂
> 
> With GC patch, each rails application can share the framework code in memory and that results in huge memory savings.
> 
> -Pratik

We're going to publish this work as "Ruby Enterprise Edition". Because of the amount of work that had to be put into Passenger's release, we haven't had the time to do that yet. Please watch www.rubyenterpriseedition.com (or our blog) for updates.

Regards, Hongli Lai (phusion.nl)

---

<div class="post-metadata">

**Author:** ![machdudas](https://avatars.discourse-cdn.com/v4/letter/m/bbe5ce/32.png) [@machdudas](https://discuss.rubyonrails.org/u/machdudas)\
**Post date:** [April 14, 2008, 4:17pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/18 "2008-04-14T16:17:49Z")

</div>

Mod Rails ist just great, the only problem i currently have is how to setup basic authentication so that you have to log in to get to the application?

If I try the following: \<Directory "/var/rails/mdd/current/public"\> &nbsp;&nbsp;Options FollowSymLinks &nbsp;&nbsp;AllowOverride None &nbsp;&nbsp;Order allow,deny &nbsp;&nbsp;Allow from all &nbsp;&nbsp;AuthName "Login" &nbsp;&nbsp;AuthType Basic &nbsp;&nbsp;AuthUserFile /var/rails/mdd/.htpasswd &nbsp;&nbsp;Require user mdd \</Directory\>

Then only my static assets are password protected.

How can i solve this?

TIA Andy

---

<div class="post-metadata">

**Author:** ![Jeremy\_McAnally](https://avatars.discourse-cdn.com/v4/letter/j/c89c15/32.png) [@Jeremy\_McAnally](https://discuss.rubyonrails.org/u/Jeremy_McAnally)\
**Post date:** [April 14, 2008, 6:57pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/19 "2008-04-14T18:57:43Z")

</div>

It shares code even if I vendor Rails?

--Jeremy

---

<div class="post-metadata">

**Author:** ![11175](https://avatars.discourse-cdn.com/v4/letter/1/8edcca/32.png) [@11175](https://discuss.rubyonrails.org/u/11175)\
**Post date:** [April 14, 2008, 7:13pm UTC](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893/20 "2008-04-14T19:13:38Z")

</div>

The first thought when i read about mod\_rails was: "woooooooooooow ,cooool", but the i read the William Li's post, and then it became a "mmm...seems cool..." How much does mod\_rails require instead of mongrel? I've to setup a server with apache and 3-4 rails apps, would be better going with mongrel or mod\_rails ? and, does happen frequently that the processes are killed and then it takes "a lot" to restart (fcgi like ☹)? Thanks

[Next page](https://discuss.rubyonrails.org/t/mod-rails-released-post-your-thoughts/27893.md?page=2)
