{"id":616,"date":"2014-04-10T00:39:39","date_gmt":"2014-04-10T00:39:39","guid":{"rendered":"http:\/\/choudhury.com\/blog\/?p=616"},"modified":"2020-01-28T00:14:40","modified_gmt":"2020-01-28T00:14:40","slug":"bonecp","status":"publish","type":"post","link":"https:\/\/choudhury.com\/blog\/2014\/04\/10\/bonecp\/","title":{"rendered":"BoneCP"},"content":{"rendered":"<p><strong>** Update:\u00a0 BoneCP is no longer maintained **\u00a0<\/strong> Instead, <a href=\"_wp_link_placeholder\" data-wplink-edit=\"true\"><strong>HikariCP<\/strong> <\/a>been proven to be a rock solid successor (and is default connection pool for Spring Boot)<\/p>\n<p>Recently switched to over from using the default connection pool provided by tomcat 7 (which is a re-repackage of DBCP) to BoneCP. Why did we switch? noticed that connection pool wasn&#8217;t performing as well as we wanted, under heavy load, the synchronzied blocks that DBCP uses is a performance bottleneck.<\/p>\n<p>Updating tomcat to use BoneCP datasource is answered in this <a title=\"Using BoneCP as Tomcat Datasource\" href=\"http:\/\/stackoverflow.com\/questions\/9905871\/using-bonecp-as-tomcat-5-5-datasource\">stackoverflow post<\/a>.<\/p>\n<p>Set the &#8220;type&#8221; to the BoneCPDataSource (we take advantage of the fact, tomcat supports javax.sql.DataSource out of the box) and the &#8220;factory&#8221; needs to the Tomcat provideded BeanFactory implemenation.<\/p>\n<div class=\"codecolorer-container java default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"java codecolorer\">&nbsp;<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>** Update:\u00a0 BoneCP is no longer maintained **\u00a0 Instead, HikariCP been proven to be a rock solid successor (and is default connection pool for Spring Boot) Recently switched to over from using the default connection pool provided by tomcat 7 (which is a re-repackage of DBCP) to BoneCP. Why did we switch? noticed that connection &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/choudhury.com\/blog\/2014\/04\/10\/bonecp\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;BoneCP&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-616","post","type-post","status-publish","format-standard","hentry","category-java"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/posts\/616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/comments?post=616"}],"version-history":[{"count":30,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions"}],"predecessor-version":[{"id":795,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/posts\/616\/revisions\/795"}],"wp:attachment":[{"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/media?parent=616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/categories?post=616"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/choudhury.com\/blog\/wp-json\/wp\/v2\/tags?post=616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}