On Wed, Sep 15, 2010 at 5:08 PM, Joshua Partogi <joshua.part...@gmail.com> wrote: > Hi Nick, > > Thank you for the response. You mentioned that database connection > pool is created according to demand. What does that mean? Does it mean > if there are more users it will open more connection thus create more > connection pool?
Yes. What I meant to say is that the pool starts out empty and only grows as connections are needed up to the maximum pool size. If you are running non-thread-safe Rails with a request mutex, chances are that you won't create more than one connection. /Nick > > Thanks heaps in advance. > > Kind regards, > Joshua > > On Sep 6, 4:32 am, Nick Sieger <nicksie...@gmail.com> wrote: >> On Sun, Sep 5, 2010 at 8:57 AM, Joshua Partogi <joshua.part...@gmail.com> >> wrote: >> > Hi all, >> >> > I am interested to learn more about connection pooling in rails. Is there >> > any good articles about this? I want to know specifically how is connection >> > pooling in rails works. Does rails open one connection to the database for >> > every user that is connected or does every user share the same database >> > connection? Does different app server handles connection pooling >> > differently >> > [i.e passenger, unicorn, mongrel, thin] ? Or does app server doesn't really >> > care about this? >> >> > Thank you very much in advance for your help and insights. >> >> Hi Joshua, >> >> Here are some facts about connection pooling that should answer your >> questions: >> >> * Connection pooling is handled inside of ActiveRecord, so all >> application servers should behave basically the same. >> >> * The database connection pool starts out empty and creates >> connections over time according to demand. The maximum size of this >> pool defaults to 5 and is configured in database.yml. >> >> * Requests and users share connections from this pool. A request >> checks out a connection the first time it needs to access the database >> and then checks the connection back in at the end of the request. >> >> * If you use Rails.threadsafe! mode, then multiple threads might be >> accessing multiple connections at the same time, so depending on the >> request load you might have multiple threads contending for a few >> connections. >> >> /Nick > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-t...@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-t...@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.