Node.js project architecture with shared dependencies for microservices

dc.citation.epage58
dc.citation.issue3
dc.citation.journalTitleВимірювальна техніка та метрологія
dc.citation.spage53
dc.contributor.affiliationLviv Polytechnic National University
dc.contributor.authorChaplia, Oleh
dc.contributor.authorKlym, Halyna
dc.coverage.placenameЛьвів
dc.coverage.placenameLviv
dc.date.accessioned2024-03-11T09:15:11Z
dc.date.available2024-03-11T09:15:11Z
dc.date.created2023-02-28
dc.date.issued2023-02-28
dc.description.abstractMicroservices is an architectural style in software development that involves constructing a big solution using small, self-contained services. A set of services are connected via well-defined APIs and work together like a coherent system. The application of microservices architecture spans a wide range of domains, e. g., healthcare, finance, government, military, gaming, and entertainment. This article analyzes existing project architecture approaches for Node.js, and improves scalable project architecture for Node.js using shared dependencies. The proposed project architecture with shared module dependencies is explicitly created for Node.js microservice. Also, the article shows the results obtained from a test project that was created based on the proposed architecture.
dc.format.extent53-58
dc.format.pages6
dc.identifier.citationChaplia O. Node.js project architecture with shared dependencies for microservices / Oleh Chaplia, Halyna Klym // Measuring Equipment and Metrology. — Lviv : Lviv Politechnic Publishing House, 2023. — Vol 84. — No 3. — P. 53–58.
dc.identifier.citationenChaplia O. Node.js project architecture with shared dependencies for microservices / Oleh Chaplia, Halyna Klym // Measuring Equipment and Metrology. — Lviv : Lviv Politechnic Publishing House, 2023. — Vol 84. — No 3. — P. 53–58.
dc.identifier.doidoi.org/10.23939/istcmtm2023.03.053
dc.identifier.urihttps://ena.lpnu.ua/handle/ntb/61434
dc.language.isoen
dc.publisherВидавництво Львівської політехніки
dc.publisherLviv Politechnic Publishing House
dc.relation.ispartofВимірювальна техніка та метрологія, 3 (84), 2023
dc.relation.ispartofMeasuring Equipment and Metrology, 3 (84), 2023
dc.relation.references[1] A. S. Abdelfattah, T. Cerny, Roadmap to Reasoning in Microservice Systems: A Rapid Review [J]. Applied Sciences, 13(3), 1838 (2023). DOI: 10.3390/app13031838, https://www.mdpi.com/2076-3417/13/3/1838
dc.relation.references[2] G. Blinowski, A. Ojdowska, A. Przybyłek, Monolithic vs. Microservice Architecture: A Performance and Scalability Evaluation [J]. IEEE Access, 10, 20357–20374 (2022). DOI: 10.1109/ACCESS.2022.3152803, https://ieeexplore.ieee.org/abstract/document/9717259
dc.relation.references[3] M. E. Gortney et al., Visualizing Microservice Architecture in the Dynamic Perspective: A Systematic Mapping Study [J]. IEEE Access, 10, 119999–120012 (2022). DOI: 10.1109/ACCESS.2022.3221130, https://ieeexplore.ieee.org/abstract/document/9944666
dc.relation.references[4] A. Baabad, H. B. Zulzalil, S. Hassan, S. B. Baharom, Software Architecture Degradation in Open Source Software: A Systematic Literature Review [J]. IEEE Access, 8, 173681–173709 (2020). DOI: 10.1109/ACCESS.2020.3024671, https://ieeexplore.ieee.org/document/9200327
dc.relation.references[5] H. Shah, Node.Js challenges in implementation [J], Global Journal of Computer Science and Technology, 17(2), 76 (2017). https://computerresearch.org/index.php/computer/article/download/1735/1719
dc.relation.references[6] Aniche,M., Bavota, G., Treude, C. et al. Code smells forModel-View-Controller architectures [J]. Empir Software Eng., 23, 2121–2157 (2018). DOI: 10.1007/s10664-017-9540-2, https://link.springer.com/article/10.1007/s10664-017-9540-2
dc.relation.references[7] F. Kaimer, P. Brune, Return of the JS: Towards a Node. js-Based Software Architecture for Combined CMS/CRM Applications [J]. Procedia Computer Science, 141, 454–459 (2018). DOI: 10.1016/j.procs.2018.10.143, https://www.sciencedirect.com/science/article/pii/S1877050918317927
dc.relation.references[8] A. Sunardi, Suharjito,MVC Architecture: A Comparative Study Between Laravel Framework and Slim Framework in Freelancer Project Monitoring System Web Based [J]. Procedia Computer Science, 157, 134–141 (2019). DOI: 10.1016/j.procs.2019. 08.150, https://www.sciencedirect.com/science/article/pii/S1877050919310683
dc.relation.references[9] K. Farias, L. Lazzari, Event-driven Architecture and REST Architectural Style: An Exploratory Study on Modularity [J]. Journal of Applied Research and Technology, 21(3), 338–351 (2023). DOI: 10.22201/icat.24486736e.2023.21.3.1764, https://jart.icat.unam.mx/index.php/jart/article/view/1764
dc.relation.references[10] R. G. Kula, A. Ouni, D.M. German, K. Inoue, On the impact of micro-packages: An empirical study of the npm JavAscript ecosystem, arXiv preprint, arXiv:1709.04638 (2017). DOI: 10.48550/arXiv.1709.04638, https://arxiv.org/abs/1709.04638
dc.relation.referencesen[1] A. S. Abdelfattah, T. Cerny, Roadmap to Reasoning in Microservice Systems: A Rapid Review [J]. Applied Sciences, 13(3), 1838 (2023). DOI: 10.3390/app13031838, https://www.mdpi.com/2076-3417/13/3/1838
dc.relation.referencesen[2] G. Blinowski, A. Ojdowska, A. Przybyłek, Monolithic vs. Microservice Architecture: A Performance and Scalability Evaluation [J]. IEEE Access, 10, 20357–20374 (2022). DOI: 10.1109/ACCESS.2022.3152803, https://ieeexplore.ieee.org/abstract/document/9717259
dc.relation.referencesen[3] M. E. Gortney et al., Visualizing Microservice Architecture in the Dynamic Perspective: A Systematic Mapping Study [J]. IEEE Access, 10, 119999–120012 (2022). DOI: 10.1109/ACCESS.2022.3221130, https://ieeexplore.ieee.org/abstract/document/9944666
dc.relation.referencesen[4] A. Baabad, H. B. Zulzalil, S. Hassan, S. B. Baharom, Software Architecture Degradation in Open Source Software: A Systematic Literature Review [J]. IEEE Access, 8, 173681–173709 (2020). DOI: 10.1109/ACCESS.2020.3024671, https://ieeexplore.ieee.org/document/9200327
dc.relation.referencesen[5] H. Shah, Node.Js challenges in implementation [J], Global Journal of Computer Science and Technology, 17(2), 76 (2017). https://computerresearch.org/index.php/computer/article/download/1735/1719
dc.relation.referencesen[6] Aniche,M., Bavota, G., Treude, C. et al. Code smells forModel-View-Controller architectures [J]. Empir Software Eng., 23, 2121–2157 (2018). DOI: 10.1007/s10664-017-9540-2, https://link.springer.com/article/10.1007/s10664-017-9540-2
dc.relation.referencesen[7] F. Kaimer, P. Brune, Return of the JS: Towards a Node. js-Based Software Architecture for Combined CMS/CRM Applications [J]. Procedia Computer Science, 141, 454–459 (2018). DOI: 10.1016/j.procs.2018.10.143, https://www.sciencedirect.com/science/article/pii/S1877050918317927
dc.relation.referencesen[8] A. Sunardi, Suharjito,MVC Architecture: A Comparative Study Between Laravel Framework and Slim Framework in Freelancer Project Monitoring System Web Based [J]. Procedia Computer Science, 157, 134–141 (2019). DOI: 10.1016/j.procs.2019. 08.150, https://www.sciencedirect.com/science/article/pii/S1877050919310683
dc.relation.referencesen[9] K. Farias, L. Lazzari, Event-driven Architecture and REST Architectural Style: An Exploratory Study on Modularity [J]. Journal of Applied Research and Technology, 21(3), 338–351 (2023). DOI: 10.22201/icat.24486736e.2023.21.3.1764, https://jart.icat.unam.mx/index.php/jart/article/view/1764
dc.relation.referencesen[10] R. G. Kula, A. Ouni, D.M. German, K. Inoue, On the impact of micro-packages: An empirical study of the npm JavAscript ecosystem, arXiv preprint, arXiv:1709.04638 (2017). DOI: 10.48550/arXiv.1709.04638, https://arxiv.org/abs/1709.04638
dc.relation.urihttps://www.mdpi.com/2076-3417/13/3/1838
dc.relation.urihttps://ieeexplore.ieee.org/abstract/document/9717259
dc.relation.urihttps://ieeexplore.ieee.org/abstract/document/9944666
dc.relation.urihttps://ieeexplore.ieee.org/document/9200327
dc.relation.urihttps://computerresearch.org/index.php/computer/article/download/1735/1719
dc.relation.urihttps://link.springer.com/article/10.1007/s10664-017-9540-2
dc.relation.urihttps://www.sciencedirect.com/science/article/pii/S1877050918317927
dc.relation.urihttps://www.sciencedirect.com/science/article/pii/S1877050919310683
dc.relation.urihttps://jart.icat.unam.mx/index.php/jart/article/view/1764
dc.relation.urihttps://arxiv.org/abs/1709.04638
dc.rights.holder© Національний університет “Львівська політехніка”, 2023
dc.subjectCloud Computing
dc.subjectMicroservices
dc.subjectNodeJS
dc.subjectProject Architecture
dc.subjectSource Code
dc.subjectAPI Services
dc.titleNode.js project architecture with shared dependencies for microservices
dc.typeArticle

Files

Original bundle

Now showing 1 - 2 of 2
Thumbnail Image
Name:
2023v84n3_Chaplia_O-Node_js_project_architecture_53-58.pdf
Size:
270.96 KB
Format:
Adobe Portable Document Format
Thumbnail Image
Name:
2023v84n3_Chaplia_O-Node_js_project_architecture_53-58__COVER.png
Size:
507.11 KB
Format:
Portable Network Graphics

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.75 KB
Format:
Plain Text
Description: