Is “Tomcat 7 JDBC Connection Pool” good enough for production? And how is it compare to BoneCP?

不打扰是莪最后的温柔 提交于 2019-11-30 12:28:02

问题


Our site get roughly 1M pv/day, and we use Tomcat for sure.

I couldn't find much information about jdbc-pool, not sure if it's stable enough for production. Anyone got experience on it? and any configuration/tuning stuff for reference?

As someone mentioned, BoneCP might be another choice. But seems it's discontinued (so sad...). Would it be a better choice?

btw, HikariCP is too young, I would keep an eye on it as it's the latest/fastest CP so far I found.

Thanks for any advice.


回答1:


I'm one of the authors of HikariCP. That said, the "new" Tomcat pool is among the best we've tested. It has a lot of options, so if you plan to use it in production make sure you understand them to get a reliable configuration.

Do not confuse the new Tomcat pool with Apache DBCP, which I would avoid.

We are starting the process of abuse testing various pools, including HikariCP, with tests such as bouncing the DB underneath the pool and measuring the resulting recovery. Check out site for results in the coming weeks.

EDIT: Re: HikariCP being too young. Young though it may be it has had several billion transactions run through it. As with anything, I would suggest you try it in a pre-production environment before deployment. But the same goes for any pool you might choose.

UPDATE 2015-06-01: I want to revise my statement above somewhat, it seems that Apache Commons DBCP is active once again, and has taken over for the dedicated/forked Tomcat DBCP. The refactors in Commons DBCP appear at first glance to be significant, and positive. However, due to their magnitude and despite being under the old Commons DBCP banner, I would characterize the pool as less mature than HikariCP at this point.




回答2:


BoneCP is not discontinued, but consider it @Deprecated now that HikariCP is around; there's little point contributing significant resources to it now that something radically better is on the horizon. This is open-source, so let's all work collectively towards the best solution. Source: me (BoneCP author)




回答3:


Tomcat DBCP is production ready - its simply an evolution of commons DBCP.

DB conn pools are pretty simple beasts - I wouldnt regard its use as being particularly risky.




回答4:


That's what the company I'm working for is using and we haven't had any problem with it.

We've been more limited by our web server's connection to our various data servers than the speed of Tomcat's connection pool, so unless speed is very important, it's probably not something you should be concerned about. As far as reliability goes, it hasn't dropped a connection yet in any of our testing, nor have we heard about it happening on our production site.

I doubt you'll have a problem if you use Tomcat's connection pool.




回答5:


Where I work we have a couple of systems running on the Tomcat pool.

I must say that initially it was sort of a pain to get a good understanding of all the options it provides and how their values actually impact performance and reliability.

After performing an initial trial and error phase, I have to admit that the Tomcat connection pool fits our needs perfectly. It seems robust and also have not caused any performance problems whatsoever.

With that said, I will definitely give HikariCP a try in my next project



来源:https://stackoverflow.com/questions/20955875/is-tomcat-7-jdbc-connection-pool-good-enough-for-production-and-how-is-it-com

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!