A Study of Database Connection Pool in Microservice Architecture

The growing number of the Internet presents a higher requirement for backend application systems to be designed to handle thousands of user traffic concurrently. Microservice architecture is also in a rising trend which allows each service to scale horizontally by its throughput, and load helps scal...

Full description

Bibliographic Details
Published in:International Journal on Informatics Visualization
Main Author: Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
Format: Article
Language:English
Published: Politeknik Negeri Padang 2022
Online Access:https://www.scopus.com/inward/record.uri?eid=2-s2.0-85137251946&doi=10.30630%2fjoiv.6.2-2.1094&partnerID=40&md5=2a7fe2d2f13fe6f11083222112b3a107
id 2-s2.0-85137251946
spelling 2-s2.0-85137251946
Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
A Study of Database Connection Pool in Microservice Architecture
2022
International Journal on Informatics Visualization
6
2
10.30630/joiv.6.2-2.1094
https://www.scopus.com/inward/record.uri?eid=2-s2.0-85137251946&doi=10.30630%2fjoiv.6.2-2.1094&partnerID=40&md5=2a7fe2d2f13fe6f11083222112b3a107
The growing number of the Internet presents a higher requirement for backend application systems to be designed to handle thousands of user traffic concurrently. Microservice architecture is also in a rising trend which allows each service to scale horizontally by its throughput, and load helps scale the system efficiently without waste of resources like in the traditional monolithic application system. Among the many strategies to optimize delivery, the database connection pool helps backend systems to access databases efficiently by reusing database connections, thus eliminating the computationally expensive need to open and close connections with new requests. Additionally, database connection pools can help improve applications' connection reliability. This paper aims to determine the most suitable maximum amount of database connections in a microservice setting, where multiple instances of the service are used for scalability and high availability purposes of the system. To tackle the scalability issue and achieve the high availability of our services, we propose running multiple instances of each of our services in production, especially for services that we anticipate would be hit the most during runtime. This allows load balancing of request load between multiple instances and having backup instances to serve HTTP requests when one of the instances is down. The result obtained in this experiment shows that five database connections give the best result in microservice settings as described in our methodology. © 2022, Politeknik Negeri Padang. All rights reserved.
Politeknik Negeri Padang
25499904
English
Article
All Open Access; Gold Open Access
author Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
spellingShingle Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
A Study of Database Connection Pool in Microservice Architecture
author_facet Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
author_sort Sobri N.A.N.; Abas M.A.H.; Yassin I.M.; Ali M.S.A.M.; Md Tahir N.; Zabidi A.; Rizman Z.I.
title A Study of Database Connection Pool in Microservice Architecture
title_short A Study of Database Connection Pool in Microservice Architecture
title_full A Study of Database Connection Pool in Microservice Architecture
title_fullStr A Study of Database Connection Pool in Microservice Architecture
title_full_unstemmed A Study of Database Connection Pool in Microservice Architecture
title_sort A Study of Database Connection Pool in Microservice Architecture
publishDate 2022
container_title International Journal on Informatics Visualization
container_volume 6
container_issue 2
doi_str_mv 10.30630/joiv.6.2-2.1094
url https://www.scopus.com/inward/record.uri?eid=2-s2.0-85137251946&doi=10.30630%2fjoiv.6.2-2.1094&partnerID=40&md5=2a7fe2d2f13fe6f11083222112b3a107
description The growing number of the Internet presents a higher requirement for backend application systems to be designed to handle thousands of user traffic concurrently. Microservice architecture is also in a rising trend which allows each service to scale horizontally by its throughput, and load helps scale the system efficiently without waste of resources like in the traditional monolithic application system. Among the many strategies to optimize delivery, the database connection pool helps backend systems to access databases efficiently by reusing database connections, thus eliminating the computationally expensive need to open and close connections with new requests. Additionally, database connection pools can help improve applications' connection reliability. This paper aims to determine the most suitable maximum amount of database connections in a microservice setting, where multiple instances of the service are used for scalability and high availability purposes of the system. To tackle the scalability issue and achieve the high availability of our services, we propose running multiple instances of each of our services in production, especially for services that we anticipate would be hit the most during runtime. This allows load balancing of request load between multiple instances and having backup instances to serve HTTP requests when one of the instances is down. The result obtained in this experiment shows that five database connections give the best result in microservice settings as described in our methodology. © 2022, Politeknik Negeri Padang. All rights reserved.
publisher Politeknik Negeri Padang
issn 25499904
language English
format Article
accesstype All Open Access; Gold Open Access
record_format scopus
collection Scopus
_version_ 1809677892438720512