AUTOMATED DEPLOYMENT OF A SOFTWARE ENVIRONMENT FOR MICROSERVICES IN A RAPIDLY CHANGING TECHNOLOGY STACK

Authors

DOI:

https://doi.org/10.30837/ITSSI.2021.18.023

Keywords:

deployment of the environment, microservice architecture, distributed infrastructure, technological stack, saving resources and money

Abstract

The article is devoted to the development and substantiation of practical recommendations regarding the formation of a mechanism for deploying a software environment for creating and executing microservices in a rapidly changing technological stack. The subject of the research is the basics of building a system for automated deployment of a software environment for the development and execution of microservices. The purpose of the article is to develop and substantiate practical recommendations for the formation of a mechanism for deploying a software environment for creating and executing microservices in a rapidly changing technological stack. The task of the work: to determine the necessary elements of the deployment mechanism of the software environment and provide an analysis of the functional load for each of them, set specific tasks that must be solved when building each of them, propose and justify the choice of tools for their solution. In the course of the study, the methods of system analysis were used to decompose a complex system into elements and each element into functional components. As of the study, it was established that such a mechanism should consist of the following elements: a universal server initialization a result subsystem for any technological stack and a software environment deployment subsystem for developing or executing an application of a certain type on a certain technological stack. Each element is described in detail, its functional load is shown and its role in the overall system is substantiated. It is shown that such a standardized approach to the deployment of the development and runtime environment allows, among other things, to solve the problem of operating microservices in a tested environment. Conclusions. Practical recommendations for the formation of a mechanism for deploying a software environment for creating and executing microservices in a rapidly changing technological stack have been developed and substantiated. This mechanism is automated. It shows its flexibility and versatility in relation to programming languages and other features of the software environment. It is pointed out that when implemented in the shell language, bash does not need any third-party applications for its work. The economic benefit of using the proposed mechanism is shown. The ways of its improvement are shown.

Author Biography

Denis Zolotariov

 PhD (Physics and Mathematics Sciences)

References

Rademacher, F., Sachweh, S., Zündorf, A. (2020), "A Modeling Method for Systematic Architecture Reconstruction of Microservice-Based Software Systems", In: Nurcan S., Reinhartz-Berger I., Soffer P., Zdravkovic J. (eds) Enterprise, Business-Process and Information Systems Modeling. BPMDS 2020, EMMSAD 2020. Lecture Notes in Business Information Processing, Springer, Cham, Vol. 387. DOI: https://doi.org/10.1007/978-3-030-49418-6_21

Zolotariov, D. (2020), "The distributed system of automated computing based on cloud infrastructure", Innovative Technologies and Scientific Solutions for Industries, No. 4 (14), P. 47–55. DOI: https://doi.org/10.30837/ITSSI.2020.14.047

Zolotariov, D. (2021), "The mechanism for creation of event-driven applications based on Wolfram Mathematica and Apache Kafka", Innovative Technologies and Scientific Solutions for Industries, No. 1 (15), P. 53–58. DOI: https://doi.org/10.30837/ITSSI.2021.15.053

Zolotariov, D. (2021), "The platform for creation of event-driven applications based on Wolfram Mathematica and Apache Kafka", Innovative Technologies and Scientific Solutions for Industries, No. 2 (16), P. 12–18. DOI: https://doi.org/10.30837/ITSSI.2021.16.012

Zolotariov, D. (2021), "Microservice architecture for building high-availability distributed automated computing system in a cloud infrastructure", Innovative Technologies and Scientific Solutions for Industries, No. 3 (17), P. 13–22. DOI: https://doi.org/10.30837/ITSSI.2021.17.013

da Silva, H. H. S., de F. Carneiro G., Monteiro, M. P. (2019), "An Experience Report from the Migration of Legacy Software Systems to Microservice Based Architecture", In: Latifi S. (eds) 16th International Conference on Information Technology-New Generations (ITNG 2019). Advances in Intelligent Systems and Computing, Springer, Cham, Vol. 800. DOI: https://doi.org/10.1007/978-3-030-14070-0_26

Bucchiarone, A., Dragoni, N., Dustdar, S., et al. (2018), "From monolithic to microservices: an experience report from the banking domain", IEEE Softw, No. 35 (3), P. 50–55.

Levcovitz, A., Terra, R., Valente, M. T. (2015), "Towards a technique for extracting microservices from monolithic enterprise systems", In: Proceedings of VEM’15, P. 97–104.

Munari, S., Valle, S., Vardanega, T. (2018), "Microservice-Based Agile Architectures: An Opportunity for Specialized Niche Technologies", In: Casimiro A., Ferreira P. (eds) Reliable Software Technologies – Ada-Europe 2018. Ada-Europe 2018. Lecture Notes in Computer Science, Springer, Cham, Vol. 10873. DOI: https://doi.org/10.1007/978-3-319-92432-8_10

Sorgalla, J., Sachweh, S., Zündorf, A. (2020), "Exploring the Microservice Development Process in Small and Medium-Sized Organizations", In: Morisio M., Torchiano M., Jedlitschka A. (eds) Product-Focused Software Process Improvement. PROFES 2020. Lecture Notes in Computer Science, Springer, Cham, Vol. 12562. DOI: https://doi.org/10.1007/978-3-030-64148-1_28

Google Trends (2021), "Microservice architecture – Google Trends", available at: https://trends.google.ru/trends/explore?date=today%205-y&q=%2Fm%2F011spz0k (last accessed 5 February 2021).

CIO Dive (2021), "Guardian Life steers tech transformation with microservices", available at: https://www.ciodive.com/news/Cloud-Microservices-Guardian-Life/578732/ (last accessed 5 February 2021).

Nasiri, H., Nasehi, S., Goudarzi, M. (2019), "Evaluation of distributed stream processing frameworks for IoT applications in Smart Cities", Journal of Big Data, Vol. 6, No. 52. DOI: https://doi.org/10.1186/s40537-019-0215-2

Martin Fowler (2014), "Microservices", available at: https://martinfowler.com/articles/microservices.html (last accessed 5 February 2021).

Chatley, R., Donaldson, A., Mycroft, A. (2019), "The Next 7000 Programming Languages", In: Steffen B., Woeginger G. (eds) Computing and Software Science. Lecture Notes in Computer Science, Springer, Cham, Vol. 10000. DOI: https://doi.org/10.1007/978-3-319-91908-9_15

DOU (2021), "Ranking of programming languages 2020: JavaScript is ahead of Java, and Dart entered the first league", available at: https://dou.ua/lenta/articles/language-rating-jan-2020/ (last accessed 5 February 2021).

Lee, C. Y. (2019), "Temporal Correlation Analysis of Programming Language Popularity", J. Korean Phys. Soc., Vol. 75, P. 755–763. DOI: https://doi.org/10.3938/jkps.75.755

Vadim Madison (2018), "What do we know about microservices?" ["Chto my znayem o mikroservisakh?"], HighLoad ++ 2018, Professional conference for developers of high-load systems, Moscow.

Semantic Versioning (2021), "Semantic Versioning 2.0.0", available at: https://semver.org/lang/ru/ (last accessed 5 February 2021).

Downloads

Published

2022-04-25

How to Cite

Zolotariov , D. (2022). AUTOMATED DEPLOYMENT OF A SOFTWARE ENVIRONMENT FOR MICROSERVICES IN A RAPIDLY CHANGING TECHNOLOGY STACK. INNOVATIVE TECHNOLOGIES AND SCIENTIFIC SOLUTIONS FOR INDUSTRIES, (4 (18), 23–30. https://doi.org/10.30837/ITSSI.2021.18.023