본문 바로가기
  • 시 쓰는 개발자
1일 1개념정리 (24년 8월~12월)/네트워크, 클라우드

1일1개 (85) - 서버없는 컴퓨팅

by poetDeveloper 2024. 11. 18.

1일 1개념정리 24.08.09.금 ~ 

 

큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.

무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!


#85. 서버리스 컴퓨팅 ( Serverless Computing )

서버리스 컴퓨팅 이라는 게 있다. 클라우드에서 자동으로 관리되며 실행되는 프로그램 정도로 생각하면 될듯한데 .... 클라우드 서비스와 활용법에 대해서 알아보자.

 

서버리스 컴퓨팅

서버리스 컴퓨팅은 개발자가 관리할 필요 없이 클라우드에서 자동으로 관리하며 환경을 제공하는 클라우드 모델이다. 이를 통해 개발자는 이쪽 신경 안쓰고, 본업 비즈니스 로직만 신경쓸 수 있다.

 

감이 안오니까 이건 예시부터 먼저 살펴보자 !!!

 

사례1. 이미지 크기 조절

이런 것 많이 봤을 거다. 온라인 상에서 사진 크기 요리조리 바꾸는 것에도 서버리스 컴퓨팅이 사용될 수 있다. 예를 들어, AWS Lambda를 활용해 사용자가 이미지를 업로드하면, 트리거를 통해 Lambda 함수가 이미지를 처리하고 S3에 저장한다. → 이미지 업로드는 불규칙한 빈도로 처리되므로 서버리스 방식으로 비용 절감 가능

 

사례2. 주문 확인 메일

yes24, 쿠팡결제, 네이버페이 등.... 주문하면 항상 등록된 이메일로 주문완료됐다고 이메일이 오는데, 이런 것도 서버리스로 가능하다. Azure Functions에 구매 API를 연동하여 구매 완료 이벤트가 발생하면 이메일을 전송하는 방식이다. → 이메일 발송은 단발성 이벤트이므로 주문 없는 시간에는 자원을 사용할 일이 없어서 서버리스로 비용 절감이 가능하다.

 

사례3. 재고 0인 경우 상품 SOLD OUT

어떤 제품이 수량 0이 됐을 때, 이를 감지하고 바로 Sold Out 시켜야 다른 사람들이 구매하는 사고를 막을 수 있다. 재고를 모니터링 하다가 0이 되면 품절로 바꾸는 로직 실행하여 주문을 방지한다. → 재고 부족 이벤트는 불규칙적이므로 항상 서버를 유지할 필요가 없어서 비용 절감 가능

 

특징 (중요)

  • 확장성 : 클라우드 서비스니까 당연히 확장성도 좋다. 서비스의 트래픽 변화에 따라 자동으로 리소스를 조정한다.
  • 유지보수 X : 서버 설정, OS 관리, 패치 적용 등을 벤더가(aws, azure, google 등) 처리.
  • 이벤트 기반 실행(매우 중요) : 서버리스 함수는 "이벤트"(http 요청, db 상태 변경 등)가 발생했을 때 실행됨. → 실행이 끝나면 자동으로 리소스 반환돼서 추가 비용이 안나감
  • 비용 효율성 : 사용한 만큼만 비용을 지불 = pay as you go

 

(참고) 주요 서비스의 서버리스 컴퓨팅 비교

  AWS Lambda Azure Functions
사용성 단순, 설정 간단 Azure 생태계와의 통합에 강점
성능 빠르고 안정적인 트리거 지원 복잡한 워크플로 처리에 유리
언어 지원 Node.js, Python 등 다수 언어 C#, JavaScript 등 Microsoft 중심 언어
워크플로 관리 직접 구현 필요 Durable Functions로 내장 지원

 

 

반응형