Geoffrey Talvola wrote:
>Karl Putland wrote:
>
>>The one thing that I never figured out was how to use DBPool
>>in a fasion
>>that actually allowed the pool to exits once and keep the pool of
>>connections.
>>This was my motication to write my own pooling mechanism.
>>I see now that you store is as an instance variable somewhere in a
>>module that gets
>>used in the application. This was not obvious. It would be more
>>obvious if the
>>DBPool used it's own class variables or module variables to store the
>>pool eg.
>>ConnectionPool stores the pool in a class variable with locks
>>around the
>>pool
>>creation. All instances of ConnectionPool in my case share the same
>>physical
>>pool of connections.
>>
>
>Doesn't that limit you to a single ConnectionPool? What if you want
>multiple pools for different databases?
>
>Also, my intuition tells me that if I have 3 different instances of
>ConnectionPool, then they are really 3 different pools. I wouldn't expect
>them to share the pool.
>
>I personally think that shared global resources like a connection pool are
>best modeled in Python using module-level variables. I agree that DbPool's
>documentation could be beefed up, but I think the idea is right.
>
>- Geoff
>
Yes, but that's all I needed.
It would be trivial to change ConnectionPool to store the pool in an
instance variable.
It would then exibit the same behavior as DBPool.
Just so I understand it, where do you initialize the pool?
In a module that gets imported? eg.
#myutils.py
someConnectionPool = ConnectionPool(blah)
Then from other places,
#SomeServlet.py
from myutils import someConnectionPool
def getData:
conn = someConnectionPool.get()
cur = conn.cursor()
result = cur.execute(someSQL)
cur.close()
conn.commit()
someConnectionPool.put(conn)
return result
Would the construction of the pool in myutils.py need to be thread
protected?
--Karl
_______________________________________________________________
Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
_______________________________________________
Webware-discuss mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/webware-discuss