{"id":11782,"date":"2018-04-18T20:19:20","date_gmt":"2018-04-18T14:49:20","guid":{"rendered":"https:\/\/mobisoftinfotech.com\/resources\/?p=11782"},"modified":"2018-05-25T14:12:39","modified_gmt":"2018-05-25T08:42:39","slug":"understanding-db-connection-pools-essential-knowledge-for-web-developers","status":"publish","type":"post","link":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers","title":{"rendered":"Understanding DB Connection Pools: Essential Knowledge for Web Developers"},"content":{"rendered":"<h3>Why Do We Need DB Connection Pools?<\/h3>\n<p>Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines. In such scenario, obtaining a new DB connection is a potentially expensive task. This process of acquiring a new DB connection increases the latency of your pages and makes your web app slow.<\/p>\n<h3>DB Connection Pools Solve This Problem<\/h3>\n<p>In Java web applications DB connection pools are provided as libraries. The DB connection pool manager keeps a number of DB connections open in memory. When the data access code closes a connection, the connection pool manager doesn&#8217;t close the connection, instead, it returns it to the pool. When the next call requests a connection, it returns an unused connection from the pool, rather than creating a new one. This improves the latency of your application.<\/p>\n<h3>DB Connection Pool Configuration<\/h3>\n<p>Apart from essential connection properties such as DB username, password, host, port, etc., a Database connection pool typically has following 3 properties:<\/p>\n<ul>\n<li>Minimum Number of Connections: This is the number of connections the pool keeps in memory as soon as it is created. It will try to ensure that at least these many connections are available to your application.<\/li>\n<li>Maximum Number of Connections: This is the maximum number of connections the DB connection will keep in memory. Once your application reaches this numbers, further calls to obtain connections must wait till previous calls are done.<\/li>\n<li>Max Idle Number of Connections: As specified before, the connection pool keeps connections in memory. But if it finds that some connections are idle and it already has more than minimum number of connections then it tries to close these idle connections, so that some other program can use them.<\/li>\n<\/ul>\n<h3>Database Max Connections Setting<\/h3>\n<p><noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-11784\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture.png\" alt=\"Understanding DB Connection Pools-Architecture\" width=\"768\" height=\"343\" srcset=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture.png 768w, https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture-300x134.png 300w\" sizes=\"(max-width: 768px) 100vw, 768px\"><\/noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-11784 lazyload\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20768%20343%22%3E%3C%2Fsvg%3E\" alt=\"Understanding DB Connection Pools-Architecture\" width=\"768\" height=\"343\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20768%20343%22%3E%3C%2Fsvg%3E 768w\" sizes=\"(max-width: 768px) 100vw, 768px\" data-srcset=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture.png 768w, https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture-300x134.png 300w\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Architecture.png\"><\/p>\n<p>Most of the Database Servers have a configuration setting called as max connections. Since a DB server requires a specific amount of RAM to maintain each connection, the DB admins set the max connection setting as per the hardware available to the DB server.<\/p>\n<p>Usually, on production grade Database servers, this setting should be at least 100 connections, but in the days of virtualized hardware, it might be much lower than 100. You might come across such situation on cheap PaaS DB server hosting plans.<\/p>\n<p>You need to keep in mind that when you connect to the DB server from a tool like PgAdmin or MySQL WorkBench, it also takes up 1 connection.<\/p>\n<p>If your DB server finds that the number of connected clients has reached to this max connections setting, it starts to reject new connections. Sometimes, if the server is low on RAM, it might not be able to provide all the connections as specified in the max connection settings configuration parameter. So this possibility also should be taken into consideration, if your DB server starts throwing errors for new connections.<\/p>\n<h3>Precautions to Take While Configuring Connection Pools<\/h3>\n<p>Avoid using the unnecessarily large number for max connections setting in the connection pool configuration. In general, the number of max connections should be equal to the number of requests you expect the web server to perform each second. This will depend on how heavy your database logic is.<\/p>\n<p>For a new deployment, something around 15 as the value of max connections should be OK. After that, based on the load, you can change this setting accordingly.<\/p>\n<p>When you have multiple web servers serving behind a load balancer, then you must ensure that sum of max connections configuration property of all web servers should be less than max connections configuration property of the DB server.<\/p>\n<p>If you are using auto-scaling, then you should assume, the maximum number of servers are in operation and calculate your required total number of connections accordingly.<\/p>\n<p>If you have multiple WAR files on the same web app server, and all of those connect to the same DB server, then you need to consider summation of max connections required by all the WAR files.<\/p>\n<h3>Conclusion<\/h3>\n<p>Connection pools, if used properly can improve speed and latency of your web application. You must ensure that connection pool configuration is done in such a way that you never exceed the number of max connections as allowed by the DB server.<\/p>\n<p>You should ensure that your connection pool is destroyed properly when your web application stops or restarts. This way, it will release all the connections which can be made available by the DB server to other applications.<\/p>\n<p>Armed with this knowledge, you should be able to configure connection pools with confidence for your web application.<\/p>\n<div class=\"modern-author-card\">\n    <div class=\"author-card-content\">\n        <div class=\"author-info-section\">\n            <div class=\"author-avatar\">\n                <noscript><img decoding=\"async\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2022\/04\/Pritam1.jpg\" alt=\"Pritam Barhate\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"Pritam Barhate\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2022\/04\/Pritam1.jpg\" class=\" lazyload\">\n            <\/div>\n            <div class=\"author-details\">\n                <h3 class=\"author-name\">Pritam Barhate<\/h3>\n                <p class=\"author-title\">Head of Technology Innovation<\/p>\n                <a href=\"javascript:void(0);\" class=\"read-more-link read-more-btn\" onclick=\"toggleAuthorBio(this); return false;\">Read more <noscript><img decoding=\"async\" src=\"\/assets\/images\/blog\/Vector.png\" alt=\"expand\" class=\"read-more-arrow down-arrow\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"expand\" class=\"read-more-arrow down-arrow lazyload\" data-src=\"\/assets\/images\/blog\/Vector.png\"><\/a>\n                <div class=\"author-bio-expanded\">\n                    <p>Pritam Barhate, with an experience of 14+ years in technology, heads Technology Innovation at <a href=\"https:\/\/mobisoftinfotech.com\" target=\"_blank\" rel=\"noopener\">Mobisoft Infotech<\/a>. He has a rich experience in design and development. He has been a consultant for a variety of industries and startups. At Mobisoft Infotech, he primarily focuses on technology resources and develops the most advanced solutions.<\/p>\n                    <div class=\"author-social-links\">\n                        <div class=\"social-icon\">\n                            <a href=\"https:\/\/www.linkedin.com\/in\/pritam-barhate-90b93414\/\" target=\"_blank\" rel=\"nofollow noopener\"><i class=\"icon-sprite linkedin\"><\/i><\/a>\n                            <a href=\"https:\/\/twitter.com\/pritambarhate\" target=\"_blank\" rel=\"nofollow noopener\"><i class=\"icon-sprite twitter\"><\/i><\/a>\n                        <\/div>\n                    <\/div>\n                    <a href=\"javascript:void(0);\" class=\"read-more-link read-less-btn\" onclick=\"toggleAuthorBio(this); return false;\" style=\"display: none;\">Read less <noscript><img decoding=\"async\" src=\"\/assets\/images\/blog\/Vector.png\" alt=\"collapse\" class=\"read-more-arrow up-arrow\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"collapse\" class=\"read-more-arrow up-arrow lazyload\" data-src=\"\/assets\/images\/blog\/Vector.png\"><\/a>\n                <\/div>\n            <\/div>\n        <\/div>\n        <div class=\"share-section\">\n            <span class=\"share-label\">Share Article<\/span>\n            <div class=\"social-share-buttons\">\n                <a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fmobisoftinfotech.com%2Fresources%2Fblog%2Funderstanding-db-connection-pools-essential-knowledge-for-web-developers\" target=\"_blank\" class=\"share-btn facebook-share\"><i class=\"fa fa-facebook-f\"><\/i><\/a>\n                <a href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fmobisoftinfotech.com%2Fresources%2Fblog%2Funderstanding-db-connection-pools-essential-knowledge-for-web-developers\" target=\"_blank\" class=\"share-btn linkedin-share\"><i class=\"fa fa-linkedin\"><\/i><\/a>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Why Do We Need DB Connection Pools? Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines. In such scenario, obtaining a new DB connection is a potentially expensive task. This process [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":11793,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"yes","footnotes":""},"categories":[286],"tags":[784,663,207],"class_list":["post-11782","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-db-connection","tag-developer-guide","tag-web-server"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>DB Connection Pools: Essential Knowledge for Web Developers<\/title>\n<meta name=\"description\" content=\"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DB Connection Pools: Essential Knowledge for Web Developers\" \/>\n<meta property=\"og:description\" content=\"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\" \/>\n<meta property=\"og:site_name\" content=\"Mobisoft Infotech\" \/>\n<meta property=\"article:published_time\" content=\"2018-04-18T14:49:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-05-25T08:42:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"853\" \/>\n\t<meta property=\"og:image:height\" content=\"391\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Pritam Barhate\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pritam Barhate\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#article\",\"isPartOf\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\"},\"author\":{\"name\":\"Pritam Barhate\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee\"},\"headline\":\"Understanding DB Connection Pools: Essential Knowledge for Web Developers\",\"datePublished\":\"2018-04-18T14:49:20+00:00\",\"dateModified\":\"2018-05-25T08:42:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\"},\"wordCount\":780,\"image\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage\"},\"thumbnailUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png\",\"keywords\":[\"DB Connection\",\"Developer Guide\",\"Web server\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\",\"name\":\"DB Connection Pools: Essential Knowledge for Web Developers\",\"isPartOf\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage\"},\"image\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage\"},\"thumbnailUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png\",\"datePublished\":\"2018-04-18T14:49:20+00:00\",\"dateModified\":\"2018-05-25T08:42:39+00:00\",\"author\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee\"},\"description\":\"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.\",\"breadcrumb\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png\",\"contentUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png\",\"width\":853,\"height\":391,\"caption\":\"Understanding DB Connection Pools\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/mobisoftinfotech.com\/resources\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Understanding DB Connection Pools: Essential Knowledge for Web Developers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#website\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/\",\"name\":\"Mobisoft Infotech\",\"description\":\"Discover Mobility\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/mobisoftinfotech.com\/resources\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee\",\"name\":\"Pritam Barhate\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g\",\"caption\":\"Pritam Barhate\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"DB Connection Pools: Essential Knowledge for Web Developers","description":"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers","og_locale":"en_US","og_type":"article","og_title":"DB Connection Pools: Essential Knowledge for Web Developers","og_description":"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.","og_url":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers","og_site_name":"Mobisoft Infotech","article_published_time":"2018-04-18T14:49:20+00:00","article_modified_time":"2018-05-25T08:42:39+00:00","og_image":[{"width":853,"height":391,"url":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png","type":"image\/png"}],"author":"Pritam Barhate","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Pritam Barhate","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#article","isPartOf":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers"},"author":{"name":"Pritam Barhate","@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee"},"headline":"Understanding DB Connection Pools: Essential Knowledge for Web Developers","datePublished":"2018-04-18T14:49:20+00:00","dateModified":"2018-05-25T08:42:39+00:00","mainEntityOfPage":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers"},"wordCount":780,"image":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage"},"thumbnailUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png","keywords":["DB Connection","Developer Guide","Web server"],"articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers","url":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers","name":"DB Connection Pools: Essential Knowledge for Web Developers","isPartOf":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/#website"},"primaryImageOfPage":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage"},"image":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage"},"thumbnailUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png","datePublished":"2018-04-18T14:49:20+00:00","dateModified":"2018-05-25T08:42:39+00:00","author":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee"},"description":"Typical data-driven web apps need a Database (DB) connection to render almost every page or to serve every API call. For scalability reasons, Web Server and Database servers are hosted on different Machines.","breadcrumb":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#primaryimage","url":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png","contentUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2018\/04\/Understanding-DB-Connection-Pools-Banner1.png","width":853,"height":391,"caption":"Understanding DB Connection Pools"},{"@type":"BreadcrumbList","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/understanding-db-connection-pools-essential-knowledge-for-web-developers#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mobisoftinfotech.com\/resources\/"},{"@type":"ListItem","position":2,"name":"Understanding DB Connection Pools: Essential Knowledge for Web Developers"}]},{"@type":"WebSite","@id":"https:\/\/mobisoftinfotech.com\/resources\/#website","url":"https:\/\/mobisoftinfotech.com\/resources\/","name":"Mobisoft Infotech","description":"Discover Mobility","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mobisoftinfotech.com\/resources\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/fa762036b3364f26abeea146c01487ee","name":"Pritam Barhate","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e481c7ce54b3567ac70ddfc493523eefce0bdc3ee69fd2654f8f60a79e2f178?s=96&r=g","caption":"Pritam Barhate"}}]}},"_links":{"self":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/11782","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/comments?post=11782"}],"version-history":[{"count":4,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/11782\/revisions"}],"predecessor-version":[{"id":11791,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/11782\/revisions\/11791"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/media\/11793"}],"wp:attachment":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/media?parent=11782"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/categories?post=11782"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/tags?post=11782"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}