본문 바로가기
KERD
논문KCI 등재

클라우드네이티브 애플리케이션 구축을 위한 마이크로서비스 식별 방법

Identification of Microservices to Develop Cloud-Native Applications

1

조회

0

다운로드

1

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

최근 주목받고 있는 마이크로서비스는 독립적으로 개발될 뿐만 아니라 독립적으로 실행 및 배포가 가능하다는 장점 때문에, 클라우드 컴퓨팅 환경에서 보다 유연한 확장과 효율적인 협력을 보장할 수 있다. 이러한영향으로 최근 마이크로서비스지향 애플리케이션 환경으로의 전환이 급격히 증가하고 있다. 마이크로서비스의 도입을 위해서는 무엇보다 모노리식 아키텍처로 구축된 단일 애플리케이션의 구성요소를 마이크로서비스단위로 식별하는 문제가 선결되어야 한다. 본 논문에서는 레거시 시스템으로부터 마이크로서비스 식별의 문제를 알고리즘 기반으로 해결하기 이한 접근방법을 제안한다. 코드의 메타정보를 이용하여 그래프를 생성하고 클러스터링 알고리즘을 적용하여 마이크로서비스 후보를 추출한다. 추출된 마이크로서비스 후보에 대해메트릭을 이용하여, 모듈화 품질을 평가한다. 또한 제안된 식별 방법의 효과를 검증하기 위해 벤치마크를 위해 많이 사용되는 공개 소프트웨어의 코드를 이용하여 후보 서비스를 도출하고, 메트릭을 이용하여 모듈화수준을 평가한다. 결과적으로 좀더 작은 단위의 마이크로서비스로 식별해 내면서 모듈품질을 향상시키는 결과를 확인할 수 있다

Abstract

Microservices are not only developed independently, but can also be run and deployed independently, ensuring more flexible scaling and efficient collaboration in a cloud computing environment. This impact has led to a surge in migrating to microservices-oriented application environments in recent years. In order to introduce microservices, the problem of identifying microservice units in a single application built with a single architecture must first be solved. In this paper, we propose an algorithm-based approach to identify microservices from legacy systems. A graph is generated using the meta-information of the legacy code, and a microservice candidate is extracted by applying a clustering algorithm. Modularization quality is evaluated using metrics for the extracted microservice candidates. In addition, in order to validate the proposed method, candidate services are derived using codes of open software that are widely used for benchmarking, and the level of modularity is evaluated using metrics. It can be identified as a smaller unit of microservice, and as a result, the module quality has improved

참고문헌 (13)

  1. David Taibi, "A Decomposition and Metric-Based Evaluation Framework for Microservices", Proceedings of the International Conference on Cloud Computing and Service Science, pp.133~149 (2020)
  2. D. L. Parnas, "On the criteria to be used in decomposing systems into modules", Communications of the ACM, 15(12), pp.1053~1058 (1972), Association for Computing Machinery (ACM)[DOI]
  3. G. Schermann, "All the services large and micro: Revisiting industrial practice in services computing, Proceedings of the International conference on service orineted computing", LNCS, 9586, pp.36~47 (2016)
  4. A. Levcovitz, "Towards a technique for extracting microservices from monolithic enterprise systems", Proceedings of the Workshop on Software Visualization, Evolution and Maintenance, pp.97~104
  5. M. Gysel, "Service Cutter: A systematic approach to service decomposition", Proceedings of the European Conference on Service-Oriented and Cloud Computing, pp.185~200 (2016)
  6. Miguel brito, "Identification of microservices from monolithic applications through Topic modeling", Proceedings of the Annual ACM Symposium on Applied Computing, pp.1409~1418 (2021)
  7. Robert C. Martin, "Agile Software Development, Principles, Patterns, and Practices" (2002), Prentice-Hall
  8. Santonu Sarkar, "API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization", IEEE Transactions on Software Engineering, 33(1), pp.14~32 (2007), Institute of Electrical and Electronics Engineers (IEEE)[DOI]
  9. M. J. Amiri, "Object-aware identification of microservices", Proceedings of the IEEE International Conference on Services Computing, pp.253~256 (2018)
  10. L. Baresi, "Microservices identification through interface analysis", Proceedings of the European Conference on Service-Oriented and Cloud Computing, pp.19~33 (2017)
  11. Shanshan Li, "A dataflow-driven approach to identifying microservices from monolithic applications", Journal of Systems and Software, 157, pp.110380~ (2019), Elsevier BV[DOI]
  12. S. Tyszberowicz, "Identifying microservices using functional decomposition", Proceedings of the International Symposium on Dependable Software Engineering: Theories, Tools, and Applications, pp.50~65 (2018)
  13. C. Schröer, "A Qualitative Literature Review on Microservices Identification Approaches", Proceedings of the Symposium and Summer School on Service-Oriented Computing (2020)

관련 논문AI추천

이 간행물의 다른 논문 (12건)