[storm] Disconnecting and Connecting a Storm Store Manually
Jeremy Roberts
jerbear at incrediblepear.com
Fri Oct 3 04:18:59 BST 2008
Hi all,
First off, I'm having a great time using and learning about Storm, so
thankyou to all involved!
I'm using Storm v 0.12 against a MySQL 5 DB in a large-ish project that
is to be deployed using a mod_python / Apache prefork app server model
(multiple stores in use in the app, many app servers involved, and many
child worker processes configured for each app server) and have
discovered that this is a recipe for quite a few database connections
being held open simultaneously due to the way a Storm store keeps a
database connection for re-use, and the default mysqld wait_time
configuration setting of 8 hours.
I'm currently exploring the possibilities for reducing the number of
connections open simultaneously to the DB server, and was wondering if
there is any best practice (or even sighting in the wild) for using a
Storm Store in a request -> connect-to-db -> get results ->
disconnect-from-db type model, although my current rough take on Storm's
design so far makes this approach seem anathema to me frankly.
I've looked at Store.close() / Connection.close(), and all of the
rollback and disconnection checking contributed by James Henstridge, and
remain stymied.
As far as I can tell, one can close a Store down easily enough, which
will wipe the underlying Connection's raw_connection, but there is no
exposed way to start one back up.
Am I missing something obvious, or am I possibly faced with reaching in
through the Store and all the way down to the Store's Connection's
Database's raw connection?
Thanks!
-Jer
More information about the storm
mailing list