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...
Published in: | International Journal on Informatics Visualization |
---|---|
Main Author: | |
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 |