IT 아키텍처에서 마이크로서비스의 영향 논의: 장단점
마이크로서비스는 IT 아키텍처에서 중요한 역할을 하며 이점과 단점을 모두 제공합니다.

Twitter의 CEO가 회사의 일부 마이크로 서비스를 제거하기로 결정했을 때 일부 사용자에 대한 이중 인증에 일시적인 문제가 발생하여 IT 아키텍처에서 마이크로 서비스의 역할을 면밀히 조사했습니다. Twitter의 경우 특정 마이크로 서비스를 제거하면 중요한 기능이 일시적으로 중단되는 복잡한 효과가 발생했습니다. 이는 조직이 마이크로서비스 없이 존재할 수 있는지 또는 조직이 운영에 너무 안전하게 통합되어 있는지에 대한 질문을 제기합니다. InformationWeek와의 인터뷰에서 Pulumi CEO Joe Duffy는 마이크로서비스가 IT 아키텍처에 적합한 위치, 마이크로서비스가 제공하는 이점, 그리고 IT 리더가 주의를 기울이지 않을 경우 일종의 레거시 기술 부채가 될 수 있는 방법에 대해 이야기합니다.
IT 아키텍처에 마이크로서비스 배치
Duffy는 모놀리식에서 완전히 분산된 아키텍처까지 스펙트럼이 있으며 마이크로서비스는 해당 범위의 어딘가에 속하며 후자에 더 기울어져 있다고 설명합니다. 클라우드는 두 개의 가상 머신과 데이터베이스 시대에서 관리형 서비스, 컨테이너 및 서버리스 아키텍처를 사용하는 완전히 분산된 시스템으로 이동하면서 애플리케이션 아키텍처에서 혁신적 사고를 가능하게 했습니다. 마이크로서비스는 이러한 변화의 중심입니다. 최신 클라우드는 보다 분산된 아키텍처로의 전환을 가속화하여 다양한 장단점을 제공합니다. 마이크로서비스는 API 경계 뒤에 서비스를 배치하여 어느 정도의 복잡성을 관리할 수 있지만 회사에서 몇 개만 필요할 때 수천 개의 마이크로서비스를 채택하는 경우 쉽게 과도하게 사용될 수 있습니다.
레거시 IT와의 비교 및 기술 부채 누적 위험
마이크로서비스는 시간이 지남에 따라 기술 계층이 구축되는 레거시 IT와 비교할 수 있습니다. 마이크로서비스의 장점은 일단 API 뒤에 있으면 더 이상 중요한 운영 관리가 필요하지 않다는 것입니다. 그러나 이것은 또한 기술 부채의 축적으로 이어질 수 있으며 서비스가 더 이상 가치를 추가하지 않으면 잠재적으로 구식이 될 수 있습니다.
마이크로서비스 간소화 및 골칫거리 완화
모든 기술과 마찬가지로 마이크로서비스를 둘러싼 과장된 기대와 피할 수 없는 환멸이 있는 과대 광고 주기가 있습니다. 마이크로서비스는 현재 최고조에 달했을 수 있지만 과도한 복잡성과 상호 의존성을 피하기 위해 이러한 서비스를 도입할 때 실제 목표를 이해하는 것이 중요합니다. 때로 기본으로 돌아가면 시스템과 가장 효과적인 아키텍처 뒤에 있는 주요 목적에 다시 초점을 맞추는 데 도움이 됩니다. 모놀리식 시스템은 본질적으로 나쁘지 않고 특정 작업에 완벽하게 적합하지만 프로젝트 규모가 커짐에 따라 작업의 병목 현상이 될 수 있습니다. 모놀리식과 마이크로서비스 간의 균형을 맞추는 것이 중요합니다.
마이크로 서비스에 대한 이상적인 상황 및 필요하지 않은 경우
마이크로서비스 성공의 명확한 예는 Amazon Web Services와 같은 회사에서 찾을 수 있습니다. 팀은 이러한 서비스에 의존하여 400개가 넘는 서로 다른 개별 서비스로 방대한 제품 포트폴리오를 유지합니다. 이와는 대조적으로 모놀리식 특성을 지닌 더 간단한 제품을 제공하는 회사는 제품을 수많은 개별 서비스로 분할할 필요가 없을 수 있습니다.
회사 인프라에서 마이크로서비스를 제거한 결과
마이크로서비스 구현과 같이 뿌리 깊은 아키텍처 결정을 취소하는 것은 어려울 수 있으며 광범위한 구조 조정이 필요할 수 있습니다. 마이크로서비스는 서비스와 API의 분리를 제공하지만 마이크로서비스를 제거하면 회사에서 소프트웨어 운영을 재평가하고 중요한 아키텍처 변경으로 서비스를 통합해야 할 수 있습니다. 요약하면 마이크로서비스는 최신 IT 아키텍처에서 중요한 역할을 합니다. 그들의 구현은 많은 이점을 제공하지만 레거시 기술 부채가 될 가능성을 포함하여 내재된 위험도 제공합니다. 조직은 마이크로서비스의 영향과 변화하는 IT 환경에서 마이크로서비스의 지속적인 관련성을 신중하게 고려해야 합니다. AppMaster 포함한 앱 개발 산업은 이러한 기술을 활용하여 다양한 사용 사례에 대한 보다 광범위하고 유연한 솔루션을 제공합니다.


