Re: Connection pooling and with statement

From: Frank Broniewski <brfr(at)metrico(dot)lu>
To: psycopg(at)postgresql(dot)org
Subject: Re: Connection pooling and with statement
Date: 2013-08-23 14:45:02
Message-ID: 5217756E.2090003@metrico.lu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: psycopg

Jules, Sam,

thanks for your answers so far. I'm running Apache with mod_wsgi and I
am using Bottle [1] as the Web Framework. I guess I could attach the
pool to something global within Bottle, but I will have to check the
docs for that.

Concerning the more general connection pools like pgpool and pg_bouncer;
I will definitely check them out. This is already for quite some time on
my todo-list ...

Frank

[1] bottlepy.org

Am 2013-08-23 16:19, schrieb Julian:
> Hi Frank,
> Application level connection pooling isn't a bad thing and can bring
> some performance improvements in combination with a general connection
> pool (pgpool).
> Depending on what framework you are using, and how it is setup, it is
> possible to share the connection pool between threads, what wsgi
> framework are you using? (if any).
>
> regards, Jules.
> On 23/08/13 20:03, Frank Broniewski wrote:
>> Hi,
>>
>> I want to use psycopg2 in a WSGI environment. There you can have a
>> (configurable) number of processes and threads created that would be
>> accessing the database. Now I wonder what might be the best practice
>> to implement the pool. I don't think it is practicable to create the
>> pool in the WSGI application since this would create a number of pools
>> for each process and/or threads.
>>
>> Or is the pool class simply not suitable for such a task?
>>
>> Another question that occured to me is how I use the with statement
>> with the pool class:
>>
>> I can do:
>> with pool.getconn() as conn:
>> with conn.cursor() as cursor:
>> # do stuff
>>
>> Where do I need to call pool.putconn(conn)? How does the with
>> statement affect the connection? Is the with statement suitable for
>> connection pooling at all?
>>
>> Many thanks,
>>
>> Frank
>>
>>
>
>
>

--
Frank BRONIEWSKI

METRICO s.à r.l.
géomètres
technologies d'information géographique
rue des Romains 36
L-5433 NIEDERDONVEN

tél.: +352 26 74 94 - 28
fax.: +352 26 74 94 99
http://www.metrico.lu

In response to

Browse psycopg by date

  From Date Subject
Next Message Frank Broniewski 2013-08-27 07:13:23 Re: Connection pooling and with statement
Previous Message Julian 2013-08-23 14:19:58 Re: Connection pooling and with statement