Re: [Cppcms-users] DB connection pooling
Brought to you by:
artyom-beilis
From: Lee E. <lee...@gm...> - 2012-10-23 16:29:47
|
I have not used cppDB yet - aside from some testing - but if you look at its API, it comes with a pool class, just hold an instance of that pool in your app, and use it whenever you need a connection you can pass a shared_ptr around for it - or just store it in a single place. but this is not part of the cppcms framework itself, and i have no idea how the pool will handle multiple threads requesting a connection at the same time - perhaps Artyom could answer that On Mon, Oct 22, 2012 at 3:47 PM, Shiv Shankar Dayal < shi...@gm...> wrote: > Agreed. So where do I put my DB connection pool? As mentioned in > documentation "The CppCMS service has a simple design of a single event > loop and a thread pool that handles actual user application responses." > this means on outer side there is an event-based design and internally > there is a thread pool. Therefore I draw a conclusion that I need a thread > based pool and once the application is mounted and a factory object is > created right where I hit first db query I should use one connection from > pool. > > > On Mon, Oct 22, 2012 at 6:30 PM, Lee Elenbaas <lee...@gm...>wrote: > >> I fail to see the connection between the application being asynchronious >> and the DB connections being pooled >> >> if you need to do several things with the same DB at the same time (or >> simply in different threads) >> you need several DB connections - you can choose to pool them - and this >> way reuse them >> >> both synchronious and asynchronious applications can handle multiple >> threads - so both need some way of using db connections - and a pool is one >> good way to do that >> >> On Mon, Oct 22, 2012 at 2:22 PM, Shiv Shankar Dayal < >> shi...@gm...> wrote: >> >>> Hi, >>> >>> Consider the following piece of documentation >>> >>> If the application that handles it is a synchronous application, its >>> execution is passed to the *thread pool*. The user application prepares >>> the response and sends it synchronously to the client and the context is >>> destroyed, completing the "requst/response" cycle. >>> >>> If the application is asynchronous, the HTTP Context remains inside the >>> event loop's thread and it is handled by the asynchronous application. This >>> application may decide to complete the response immediately or postpone it >>> by implementing, for example, long polling. >>> and following code >>> >>> 1. int main(int argc,char ** argv) >>> 2. { >>> 3. try { >>> 4. cppcms::service srv(argc,argv); >>> 5. srv.applications_pool().mount( >>> 6. cppcms::applications_factory<hello>() >>> 7. ); >>> >>> now as it is also written that applications are asynchronous what is the >>> need of more that one database connection. Is it the case that one >>> persistent connection will suffice? >>> -- >>> Best regards, >>> Shiv Shankar Dayal >>> >>> >>> ------------------------------------------------------------------------------ >>> Everyone hates slow websites. So do we. >>> Make your web apps faster with AppDynamics >>> Download AppDynamics Lite for free today: >>> http://p.sf.net/sfu/appdyn_sfd2d_oct >>> _______________________________________________ >>> Cppcms-users mailing list >>> Cpp...@li... >>> https://lists.sourceforge.net/lists/listinfo/cppcms-users >>> >>> >> >> >> -- >> -- >> lee >> Lee Elenbaas >> lee...@gm... >> >> >> >> ------------------------------------------------------------------------------ >> Everyone hates slow websites. So do we. >> Make your web apps faster with AppDynamics >> Download AppDynamics Lite for free today: >> http://p.sf.net/sfu/appdyn_sfd2d_oct >> _______________________________________________ >> Cppcms-users mailing list >> Cpp...@li... >> https://lists.sourceforge.net/lists/listinfo/cppcms-users >> >> > > > -- > Best regards, > Shiv Shankar Dayal > > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_sfd2d_oct > _______________________________________________ > Cppcms-users mailing list > Cpp...@li... > https://lists.sourceforge.net/lists/listinfo/cppcms-users > > -- -- lee Lee Elenbaas lee...@gm... |