본문으로 건너뛰기

서버리스 (Serverless)

✔️ 서버리스 (Serverless)

클라우드 업체에서 직접 인프라를 관리하고 동적으로 크기를 조정하면서 유지 관리하는 방식을 의미합니다. 만약, AWS EC2를 사용해도 OS 관리 및 보안, 파일 시스템 관리는 직접 해야 했는데요. 서버리스에서는 클라우드 업체가 이 모든 것을 직접 맡아서 관리합니다. 서버리스를 도입한다면, 직접 컴퓨터를 관리할 필요가 없고, 유연하게 확장할 수 있으며 사용하지 않은 용량에 대해서는 비용을 지불하지 않을 수 있다는 이점을 얻을 수 있습니다. AWS Lambda(서버리스 컴퓨팅), S3(스토리지), SQS(메시지 큐)가 서버리스의 예시입니다.

✔️ 서버리스 아키텍처에서 백엔드 코드는 어떻게 개발할까?

서버리스 아키텍처에서 백엔드 코드는 FaaS(Function as a service)를 활용하여 개발할 수 있습니다. FaaS는 특정 이벤트가 발생했을 때만 함수가 실행되는 방식을 의미합니다. 예를 들어, GET /hello 이라는 API 경로에 호출(이벤트)이 발생할 때, 이를 처리할 수 있는 함수를 잠시 실행하고 결과를 클라이언트에게 응답합니다. 개발자는 비즈니스 로직을 작성하고, 클라우드 인프라에 코드 조각(함수)을 배포하면 됩니다.

혹은 BaaS(Backend as a service)를 활용할 수도 있는데요. BaaS를 활용하면 클라우드 제공업체에서 만든 인증, 소셜 서비스 등의 완성된 백엔드 기능을 사용할 수 있습니다. 예를 들어, Firebase Authentication을 활용하면 비교적 적은 코드로 로그인 기능을 구현할 수 있습니다.

Loading comments...