구글이나 아마존에서 일하면서 수천 대의 서버를 실행해야 하는 경우가 아니라면 하드웨어를 데이터 센터에서 직접 관리하는 것은 더 이상 이득될 것이 없다.

클라우드 공급자는 인프라를 직접 구축하고 유지 관리하는 것보다 비용이 작은 호스팅 솔류션을 제공한다. AWS나 그 외의 많은 업체가 웹 콘솔에서 가상 머신을 관리할 수 있는 서비스를 제공하며, 매년 새로운 기능이 추가되고 있다.

AWS의 Amazon Lambda는 배포된 서비스에서 특정 이벤트가 발생했을 때 파이썬 스크립트를 실행한다. Lambda를 사용하면 서버 설정, cron 작업, 메시지 형식에 관해 격정할 필요가 없다. AWS는 가상 머신에서 스크립트 실행을 자동으로 처리하며, 실행 시간에 대해서만 요금을 지불한다.

도커와 이러한 기능들을 결합하면 애플리케이션 배포 방법을 개선해서 상당한 유연성을 가질 수 있다. 예를 들어 서비스 사용량이 최고조(peak)에 도달할 때를 대비하기 위해 미리 많은 돈을 들여 서비스 구성을 할 필요가 없다. 또한 엄청난 양의 요청을 처리할 수 있는 세계적 수준의 인프라를 구축할 수 있으며, 대부분은 직접 하드웨어를 구축하고 관리하는 것보다 비용도 적게 든다.

어떤 경우는 데이터 센터에 서비스를 배포하는 것이 비용이 절약될 수도 있지만 유지 보수의 부담이 추가되며, 클라우드처럼 신뢰할 만한 수준의 배포는 쉬운 일이 아니다.

11장에서 다루는 내용은 다음과 같다.

11장의 목표는 전체 스택을 배포하는 것이 아니다. 모든 것을 다루면 분량이 너무 많아지므로 마이크로서비스 배포 방법의 전체 개요를 이해하는 데만 집중한다.

AWS 개요