게시된 날짜: Aug 2, 2022
AWS Microservice Extractor for .NET은 이전의 모놀리스 아키텍처를 보다 작은 코드 프로젝트로 리팩터링하여 마이크로서비스 기반 아키텍처를 구축하는 프로세스를 간소화합니다. 애플리케이션 및 해당 종속성의 시각적 표현을 생성하도록 소스 코드 및 런타임 지표를 분석하는 지원 도구를 사용하여 애플리케이션을 현대화하고 전환하세요. 개발자는 Microservice Extractor가 제공하는 자동화된 권장 사항을 통해 레거시 애플리케이션을 리팩터링하는 안내형 환경을 얻을 수 있습니다. 개발자가 수동으로 소스 코드에서 추출할 클래스를 식별하고 그룹화할 필요 없이 Microservice Extractor가 이제 휴리스틱 기반 방법을 사용하여 공통 추출 후보를 식별하고 이를 시각화에서 강조 표시합니다. 이러한 권장 사항을 그대로 사용하거나 시작점으로 사용하여 모놀리스 코드베이스에서 마이크로서비스를 추출할 수 있습니다. 따라서 Microservice Extractor의 자동화된 권장 사항은 개발자가 코드베이스에 익숙하지 않더라도 대규모 애플리케이션 리팩터링 속도를 높이는 데 도움이 됩니다.
권장 사항은 코드베이스에서 나타나는 다음 3가지 공통 패턴에 기반합니다.
- 사용자 인터페이스 인접 노드: Microservice Extractor는 MVC(모델-뷰-컨트롤러) 유형 애플리케이션의 컨트롤러 유형 클래스 등 레거시 애플리케이션의 사용자 인터페이스(UI) 계층에서 직접 호출되는 클래스를 강조 표시합니다. 이러한 클래스는 개발자가 애플리케이션 내의 첫 번째 사용자 접점을 기반으로 마이크로서비스를 생성할 수 있도록 하기 때문에 모든 추출의 시작점이 될 수 있습니다.
- 데이터 인접 노드: Microservice Extractor는 데이터에 인접한 클래스를 분류합니다. 데이터베이스나 파일 시스템 같은 영구 스토리지에서 데이터를 끌어오는 모든 클래스는 데이터 인접 노드로 레이블이 지정됩니다. MVC 애플리케이션에서 이러한 노드는 EF(Entity Framework) 노드입니다.
- 도메인 노드: Microservice Extractor는 애플리케이션의 도메인 객체를 자동으로 탐지합니다(예: 제품, 고객 등). 이러한 객체를 통해 개발자는 도메인 중심 설계 개념에 따라 각 도메인 객체를 기반으로 마이크로서비스를 생성할 수 있습니다.