commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin A. Burton" <>
Subject Re: jcl blog post
Date Wed, 16 Feb 2005 06:57:07 GMT
Craig McClanahan wrote:

>On Tue, 15 Feb 2005 22:50:51 -0600, Vic <> wrote:
>>oops :-[
>>Wrong link, this is it:
>>It talks about Commons logging, since i'ts open season.
>There's lots of ways to shoot yourself in the foot the same way ...
>you don't need JCL to do that ... pretty much any implementation of
>the factory design pattern should be looked at with suspicion.
>By the way ... if you use [chain] you should *really* pay attention to
>the Javadocs for CatalogFactory.clear() ;-)
You know I have a similar little story about Commons DBCP.

Its evil.. pure evil! ;)

I actually rewrote it from scratch because I needed a good connection 
pool implementation and DBCP just wasn't cutting it but it was 85% there.

So one weekend I gutted the core and wrote my own pool implementation 
and increased performance significantly.

The key part for me was that for SOME reason in my highly multithreaded 
app it would bleed connections. After about 48 hours our app wouldn't 
have any more connections and all my threads would sit there sleeping 
waiting for connections that would never come.

Anyway... I called my newborn connection pool BDCP (basic database 
connection pool).

Its about 1/5 the size of DBCP and a LOT easier to maintain.

Anyway... I was considering OSSing it here in the future but didn't know 
how to approach it with commons-dbcp folks...



Use Rojo (RSS/Atom aggregator).  Visit Ask me for an 
invite!  Also see #rojo if you want to chat.

Rojo is Hiring! -

If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
Kevin A. Burton, Location - San Francisco, CA
       AIM/YIM - sfburtonator,  Web -
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message