Software Architecture

1960 ~ 1980s : Fragile, Cowboys

1990 ~ 2000s : Robust, Distributed

2010s ~ : Resilient / Anti-Fragile, Cloud Native

Antifragile

Cloud Native Architecture

cloud Native Application

클라우드 네이티브 아키텍처에 의해 설계되고 구현되는 어플리케이션

  1. 마이크로 서비스로 개발됨

  2. CI-CD 시스템에 의해서 자동으로 통합되고 빌드, 테스트, 배포라는 과정 거침

  3. 마이크로 서비스에 문제가 발생하였을 경우에 바로바로 수정해서 다시 배포 하는 과정 반복(DevOps)

  4. 하나의 어플리케이션을 구성하는 마이크로 서비스들을 클라우드 환경에 배포하고 사용하기 위해 컨테이너 가상화 기술 사용

CI/CD