title: Database Pooling when to use it and when not
body: <p>I've been researching the whole web about database pooling, but I still don't understand few things which I hope to find answer here from more experienced developers.</p>
  
  <p>My understanding of database pooling is that when there are multiple clients connecting to the database, it makes sense to keep the connection in a "cache" and use that to connect to the database faster. 
  What I fail to understand is how that would help if let's say I have a server that connects to the database and keeps the connection open. When a client requests data from an endpoint, the server will use the same connection to retrieve the data. How would pooling help in that case? </p>
  
  <p>I'm sure I'm missing something in the understanding of pooling. It would make sense if multiple instances of the same database exist and therefore it's decided in the pool which database to connect to using the cached credentials. Is it what happens there? </p>
  
  <p>Also could you give me a scenario where database pooling should be used and when not?</p>
  
  <p>Thanks for clarifying any doubt of mine.</p>