Skip to main content
Log in

Building a Performance Efficient Core Banking System Based on the Microservices Architecture

  • Published:
Journal of Grid Computing Aims and scope Submit manuscript

Abstract

Core banking systems lie in the heart of any bank today as they embrace all services that are provided by banks to carry out their day-to-day business. Examples of these services can be customer management, transaction processing, payment processing, auditing, and statistical reporting. Software infrastructure in such core banking systems was built based on the monolith system architecture, which was a common practice in building distributed software systems earlier before the advent of cloud computing. Monolith architecture incorporates all core banking services into a single, fully integrated piece of software where the codebase can become overwhelmingly complex and incomprehensible over time. As a consequence, it becomes rather challenging to make bug fixes and feature additions in monolith core banking systems and serious maintenance costs can arise to adapt to new technologies. Microservices Architecture (MSA) has emerged in line with the developments in virtualization technologies and cloud computing (e.g., Kubernetes, Containerization) as a software engineering practice to overcome the problems that can be encountered in monolith software. In this paper, a system architecture for an MSA-based core banking system was proposed by particularly taking performance efficiency into account. The justification of this architecture was made through a real-world case study in a commercial bank having a large-scale legacy core banking monolith. Load tests were applied to both this legacy core banking monolith and the new MSA-based banking system that reflects our architectural proposal and average request throughputs and response times were analyzed in both systems to demonstrate how better the proposed architecture performs in comparison to its monolith counterpart concerning performance-efficiency.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Chen, R., Li, S., Li, Z.: From monolith to microservices: a dataflow-driven approach. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 466–475 (2017). https://doi.org/10.1109/APSEC.2017.53

    Chapter  Google Scholar 

  2. Richardson, C.: Microservices patterns, 1st edn. Manning Publications Co., Shelter Island (2019)

    Google Scholar 

  3. Fowler, M., Lewis, J.: Microservices - A definition of this new architectural term (2014). https://martinfowler.com/articles/microservices.html. Accessed March 2021

  4. Fritzsch, J., Bogner, J., Zimmermann, A., Wagner, S.: From monolith to microservices: A classification of refactoring approaches. In: Bruel, J.M., Mazzara, M., Meyer, B. (eds.) Software engineering aspects of continuous development and new paradigms of software production and deployment. DEVOPS 2018. Lecture notes in computer science, vol. 11350. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-06019-0_10

    Chapter  Google Scholar 

  5. 4 Microservices examples: Amazon, Netflix, Uber, and Etsy. https://blog.dreamfactory.com/microservices-examples/ (n.d.). Accessed March 2021

  6. Adopting microservices at Netflix: lessons for architectural design (n.d.). https://www.nginx.com/blog/microservices-at-netflix-architecturalbest-practices/. Accessed Jan 2021

  7. Airbnb’s 10 takeaways from moving to microservices. https://www.gov.za/sites/default/files/gcis_document/201911/42812gen593.pdf (n.d.). Accessed March 2021

  8. Core banking system, Gartner. https://www.gartner.com/en/information-technology/glossary/core-banking-systems (n.d.). Accessed March 2022

  9. Song, I., Vong, J.: Affective core-banking services for microfinance. In: Lee, R. (ed.) Computer and information science. Studies in computational intelligence, vol. 493. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-319-00804-2_7

    Chapter  Google Scholar 

  10. Haralayya, B.: Core banking technology and its top 6 implementation challenges. Journal of Advanced Research in Operational and Marketing Management. 4(1), 25–27 (2021)

    Google Scholar 

  11. Galazova, S.S., Magomaeva, L.R.: The transformation of traditional banking activity. Int. J. Econ. Business Admin. 7(Special issue 2), 41–51 (2019)

    Google Scholar 

  12. Navaratti, G.S., Calzolari, G., Mansilla-Fernandez, J.M.: Fintech and banking. Friends or foes? J. European Economy – Banks Regulation. Real Sect. 2017, 2 (2018)

  13. Siek, M., Sutanto, A.: Impact analysis of Fintech on banking industry. International Conference on Information Management and Technology (ICIMTech), pp. 356–361 (2019). https://doi.org/10.1109/ICIMTech.2019.8843778

  14. Bucchiarone, A., Dragoni, N., Dustdar, S., Larsen, S.T., Mazzara, M.: From monolithic to microservices: an experience report from the banking domain. IEEE Softw. 35(3), 50–55 (2018)

    Article  Google Scholar 

  15. Megargel, A., Shankararaman, V., Walker, D.K.: Migrating from monoliths to cloud-based microservices: a banking industry example. In: Ramachandran, M., Mahmood, Z. (eds.) Software engineering in the era of cloud computing. Computer communications and networks. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-33624-0_4

    Chapter  Google Scholar 

  16. Gil, D. G., & Díaz-Heredero, R.A.: A microservices experience in the banking industry. In Proceedings of the 12th European Conference on Software Architecture: Companion Proceedings (ECSA '18). Association for Computing Machinery, New York, Article 13, pp. 1–2 (2018). https://doi.org/10.1145/3241403.3241418

  17. Wang, X., Wang, S., Hao, Z., Zhang, X.: Research on the construction of regional credit bank platform based on microservices. In: 10th International Conference on Measuring Technology and Mechatronics Automation (ICMTMA), pp. 452–456 (2018). https://doi.org/10.1109/ICMTMA.2018.00116

    Chapter  Google Scholar 

  18. Yanagawa, E.: Microservices opportunity: Dawn of the open API era. Journal of Digital Banking. 3(3), 260–278 (2019)

    Google Scholar 

  19. Amaral, M., Polo, J., Carrera, D., Mohomed, I., Unuvar, M., Steinder, M.: Performance evaluation of microservices architectures using containers. In: 2015 IEEE 14th International Symposium on Network Computing and Applications (2015). https://doi.org/10.1109/nca.2015.49

    Chapter  Google Scholar 

  20. Tapia, F., Mora, M.Á., Fuertes, W., Aules, H., Flores, E., Toulkeridis, T.: From monolithic systems to microservices: a comparative study of performance. Appl. Sci. 10(17), 5797 (2020). https://doi.org/10.3390/app10175797

    Article  Google Scholar 

  21. Al-Debagy, O., Martinek, P.A.: Comparative review of microservices and monolithic architectures. In: Proceedings of the 2018 IEEE 18th International Symposium on Computational Intelligence and Informatics (CINTI), pp. 149–154, Budapest (2018)

  22. Akbulut, A., Perros, H.G.: Performance analysis of microservices design patterns. IEEE Internet Comput. 23, 19–27 (2019)

    Article  Google Scholar 

  23. Singh, V., Peddoju, S.K.: Container-based microservice architecture for cloud applications. In: Proceedings of the IEEE 2017 International Conference on Computing, Communication and Automation (ICCCA), pp. 847–852, Greater Noida (2017). https://doi.org/10.1109/CCAA.2017.8229914

  24. Balalaie, A., et al.: Microservices migration patterns. Softw. Pract. Exp. 48, 2019–2042 (2018). https://doi.org/10.1002/spe.2608

    Article  Google Scholar 

  25. Fritzsch, J., Bogner, J., Wagner, S., Zimmermann, A.: Microservices migration in industry: intentions, strategies, and challenges. (2019). https://doi.org/10.1109/ICSME.2019.00081

  26. Ponce, M.F., Márquez, G., Astudillo, H.: Migrating from a monolithic architecture to microservices: A rapid review. (2019). https://doi.org/10.1109/SCCC49216.2019.8966423

  27. Eski, S., Buzluca, F.: An automatic extraction approach: transition to microservices architecture from a monolithic application. In: In Proceedings of the 19th International Conference on Agile Software Development: Companion (XP '18). Association for Computing Machinery, New York, NY, USA, Article 25, pp. 1–6 (2018). https://doi.org/10.1145/3234152.3234195

    Chapter  Google Scholar 

  28. Fan, C.Y., Ma, S.P.: Migrating monolithic mobile application to microservice architecture: An experiment report. In: 2017 IEEE international conference on AI & mobile services (AIMS), pp. 109–112, Honolulu, HI (2017). https://doi.org/10.1109/AIMS.2017.23

  29. Gouigoux, J.P., Tamzalit, D.: From monolith to microservices: lessons learned on an industrial migration to a web oriented architecture. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), pp. 62–65 (2017)

    Chapter  Google Scholar 

  30. Escobar, D., Cardenas, D., Amarillo, R., Castro, E., Garces, K., Parra, C., Casallas, R.: Towards the understanding and evolution of monolithic applications as microservices. In: 2016 XLII Latin American Computing Conference (CLEI) (2016). https://doi.org/10.1109/clei.2016.7833410

    Chapter  Google Scholar 

  31. Kecskemeti, G., Marosi, A.C., Kertesz, A.: The ENTICE approach to decompose monolithic services into microservices. In: 2016 International Conference on High-Performance Computing & Simulation (HPCS) (2016). https://doi.org/10.1109/hpcsim.2016.7568389

    Chapter  Google Scholar 

  32. Mazlami, G., Cito, J., Leitner, P.: Extraction of microservices from monolithic software architectures. In: 2017 IEEE International Conference on Web Services (ICWS), pp. 524–531 (2017). https://doi.org/10.1109/ICWS.2017.61

    Chapter  Google Scholar 

  33. Software Deployment Meaning, DevOps and Security Glossary Terms. https://www.sumologic.com/glossary/software-deployment/ (n.d.). Accessed March 2022

  34. Vernon, V., Jaskula, T.: Strategic monoliths and microservices: driving innovation using purposeful architecture. Addison-Wesley Professional Publishing (2022)

    Google Scholar 

  35. Richardson, C.: Choosing a microservices deployment strategy. https://www.nginx.com/blog/deploying-microservices/. (2016). Accessed March 2022

  36. Indrasiri, K., Siriwardena, P.: Microservices for the enterprise: designing, developing, and deploying. Apress Publishing (2018). https://doi.org/10.1007/978-1-4842-3858-5

  37. Containers, IBM. https://www.ibm.com/cloud/learn/containers (n.d.). Accessed March, 2022

  38. Docker Container Technology. https://www.docker.com/ (n.d.). Accessed March 2022

  39. Pod Manager Tool (Podman). https://podman.io/ (n.d.). Accessed March 2022

  40. What is Kubernetes? https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/ (n.d.). Accessed March 2022

  41. Marathon – container orchestration platform for Mesos and DC/OS. https://mesosphere.github.io/marathon/ (n.d.). Accessed March 2022

  42. Newman, S.: Building microservices: designing fine-grained systems, 1st edn. O'Reilly Media (2015)

    Google Scholar 

  43. Burns, B., Villalba, E., Strebel, D., Evenson, L.: Kubernetes best practices: blueprints for building successful applications on Kubernetes. O’Reilly Media (2019)

    Google Scholar 

  44. CNCF – Cloud native computing foundation. https://www.cncf.io/ (n.d.). Accessed March 2022

  45. APISIX – An open source API gateway to manage microservices. https://www.apisix.apache.org/ (n.d.). Accessed March 2022

  46. Apache Kafka message bus: Open-source distributed event streaming platform. https://kafka.apache.org/ (n.d). Accessed March 2022

  47. Elasticsearch service sink connector for moving data from Kafka message bus to elastic search. https://docs.confluent.io/kafka-connect-elasticsearch/current/overview.html (n.d.). Accessed March 2022

  48. Elasticsearch – A distributed, free and open search and analytics engine. https://www.elastic.co/ (n.d.). Accessed March 2022

  49. Fielding RT Architectural styles and the design of network-based software architectures. University of California, Irvine (2000). https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

  50. gRPC: A high-performance, open-source universal RPC framework. https://grpc.io/ (n.d.). Accessed March 2022

  51. The Ion hypermedia type - an intuitive JSON-based hypermedia type for REST. https://ionspec.org/ (n.d.). Accessed March 2022

  52. ASP.NET Core updates in .NET 7 Preview 4. (n.d.)

  53. Madden, N.: API Security in Action. Manning Publishing (2020)

    Google Scholar 

  54. Sriwardena, P.: Microservices Security in Action: Design secure network and API endpoint security for Microservices applications, with examples, using Java, Kubernetes, and Istio. Manning Publishing (2020)

    Google Scholar 

  55. Open Authentication protocol (OAuth) based access-token lifetime. https://www.oauth.com/oauth2-servers/access-tokens/access-token-lifetime (n.d.). Accessed March 2022

  56. Keycloak: Open source identity and access management. https://www.keycloak.org/ (n.d.). Accessed March 2022

  57. Keycloak user storage provider (Service Provider Interface - SPI) https://www.keycloak.org/docs/latest/server_development/#_user-storage-spi (n.d.). Accessed March 2022

  58. Open policy agent: policy-based control for cloud-native environments. https://www.openpolicyagent.org/ (n.d.). Accessed March 2022

  59. Rego: A high-level declarative language to author fine-grained policies. https://www.openpolicyagent.org/docs/latest/policy-testing/ (n.d.). Accessed March 2022

  60. Serilog: diagnostic logging library for .NET https://serilog.net/ (n.d.). Accessed March 2022

  61. FluentD: open source data collector. https://www.fluentd.org/ (n.d.). Accessed March 2022

  62. HashiCorp vault: manage secrets & protect sensitive data. https://www.vaultproject.io/ (n.d.). Accessed March 2022

  63. HashiCorp Consul: service identities. https://www.vaultproject.io/ (n.d.). Accessed March 2022

  64. Yilmaz, O.: Configuration and secret management with consul template on Kubernetes. https://medium.com/trendyol-tech/configuration-and-secret-management-with-consul-template-on-kubernetes-dcc4c6695142 (2020). Accessed March 2022

  65. Rancher - A complete software stack that addresses the operational and security challenges of managing multiple Kubernetes clusters. https://rancher.com/why-rancher (n.d.). Accessed March 2022

  66. JMeter: An open-source to load test tool for functional behavior and measuring performance. https://jmeter.apache.org/ (n.d.). Accessed March 2022

  67. Istio: A Service mesh infrastructure for Kubernetes platform to transparently add capabilities like observability, traffic management, and security, without requiring any change in the microservices code. https://istio.io/latest/about/service-mesh/ (n.d.). Accessed March 2022

  68. Richardson, C.: Pattern: SAGA. https://microservices.io/patterns/data/saga.html. Accessed March 2022

Download references

Acknowledgements

The work that is presented in this paper is supported by the Turkish Scientific and Technological Research Council (TÜBİTAK) in the context of a base research project with Project number 5210012.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fatih Başçiftçi.

Ethics declarations

Conflict of interest

The authors of this manuscript confirm that there are no conflicts of interest regarding its publication.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Aydemir, F., Başçiftçi, F. Building a Performance Efficient Core Banking System Based on the Microservices Architecture. J Grid Computing 20, 37 (2022). https://doi.org/10.1007/s10723-022-09624-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10723-022-09624-z

Keywords

Navigation