PaaS(Platform as a Service) 서비스라고 하면 처음엔 약간 어렵게 느껴질 수 있는데, 생각보다 익숙한 이름들도 꽤 많아요. 그중에서 많이 쓰이는 대표적인 PaaS 서비스와 그 특징을 조금 자연스럽게 정리해볼게요.
대표적인 PaaS 서비스들
가장 먼저 떠오르는 건 아무래도 구글 클라우드 플랫폼의 App Engine입니다. 이건 웹 애플리케이션을 쉽게 배포할 수 있는 서비스로, 서버 세팅을 직접 하지 않아도 되는 게 정말 편해요. 개발자가 코드만 올리면 자동으로 배포해주니까, ‘내가 서버 전문가가 아니어도 되네?’ 싶은 안도감이 있습니다. 그리고 필요에 따라 트래픽이 늘어나면 알아서 확장도 해줘서, 방문자가 갑자기 늘어도 걱정할 일이 줄어드는 느낌이 있어요.
Microsoft Azure의 App Service도 비슷한 느낌입니다. 여기도 웹앱, 모바일 백엔드, API 등 다양한 서비스를 지원하고, 윈도우와 리눅스 모두 지원돼요. MS 특유의 안정적인 보안과 통합 관리도 장점으로 꼽히고, 기존에 오피스365, 윈도우 서버 등 MS 서비스와 연동이 잘 된다는 점 때문에 기업에서 많이 씁니다.
Amazon Web Services(AWS)의 Elastic Beanstalk는 AWS 계정만 있으면 바로 쓸 수 있다는 접근성이 장점이에요. 이건 개발자가 코드만 준비하면 배포, 스케일링, 모니터링까지 대부분 자동으로 처리해줍니다. AWS의 다른 서비스랑도 연동이 잘 되고, 역시 세계에서 가장 널리 쓰인다는 이름값이 있죠.
Heroku도 빼놓을 수 없어요. 개발자 커뮤니티 쪽에서 특히 사랑받는 서비스입니다. 깃허브 같은 코드 저장소랑 바로 연동되고, 커맨드 한두 줄만 치면 앱 배포가 끝나요. 개인 프로젝트, 스타트업, 시제품 개발에서 정말 편하게 쓸 수 있어서 ‘개발 경험’에 중점을 두는 분들께 추천할 만합니다.
기타로 IBM Cloud Foundry, Oracle Cloud Platform 같은 서비스도 있는데, 이쪽은 대기업에서 복잡한 업무 처리할 때 주로 선택하는 경우가 많아요. 각각 기업의 기존 솔루션과 연동이 쉬운 게 장점입니다.
PaaS의 특징
이런 서비스들의 공통점은, 직접 서버를 구축하거나 관리하지 않아도 된다는 점입니다. 즉, 서버 하드웨어, 운영체제, 미들웨어까지 신경 쓸 필요 없이 바로 ‘코드’에 집중할 수 있게 해줘요. 그만큼 빠르게 개발하고, 규모가 커져도 쉽게 확장할 수 있고, 장애 관리나 보안 패치 같은 것도 알아서 처리해주는 경우가 많아요.
하지만 너무 편한 대신, 서비스의 구조가 PaaS에 맞춰져야 하는 경우가 많고, 벤더 종속성(한 번 쓰기 시작하면 다른 서비스로 옮기기 어려운 점)도 살짝 고민해볼 부분입니다.
PaaS 고를 때는, 내가 쓰는 언어와 프레임워크가 지원되는지, 요금 체계는 어떤지, 자동 확장/배포/보안 등에서 얼마나 손이 덜 가는지 이런 부분을 꼭 확인해보면 좋겠어요.