서버리스 메모(1)

mochiritofu·2021년 2월 23일
0

2월 24일


  • 서버리스의 짧은 정의는 ''작고, Stateless한, Event Driven Function들이 클라우드 플랫폼에 존재하는 컨테이너의 내부에서 작동하는 것''
  • 여기서 Cloud Platform, 즉 AWS는 컨테이너를 작동하너가, 작동을 시작함으로써, Function을 수행한다.
  • AWS Lambda의 경우 이 Cloud Platform을 수행하는 서비스이다.

Serverless Architecture의 장점, 단점

장점

  • 서버 매니징 할 필요가 없다.(인프라)
  • 쉽고, 효율적인 스케일링이 가능하다.
  • 쉬운 접근성과 Fault Tolerance 모두 구성할 수 있다.
  • AWS끼리의 서비스 통합이 쉽다.
  • No Idle Capacity, 필요한 자원만을 사용할 수 있다.(중요 장점, on-demand 하게 사용할 수 있다는 것.)

단점

  • Vendor Lock-ins, 즉 플랫폼 제공자의 의존도가 높아진다.
  • Public Cloud, 어떠한 서비스 구성에는 Public Cloud과 잘 맞지 않는 하는 분야가 존재한다.
  • 인프라 단의 제어 레벨이 낮다. 제공하는 옵션을 제외하고, 이를 직접 컨트롤하기 힘들 수 있다.

왜 AWS 람다를 사용하나?

  • Major Player중에 압도적으로 사용량이 많다.
  • AWS 플랫폼 간 결합도 정말 좋다.

Serverless 아키텍쳐를 위한 AWS 플랫폼들

  • AWS Lambda

    가장 중요한 제품이며, 당신의 코드를 서버없이 업로드, 또한 이를 AWS 인프라에서 구동할 수 있게 해준다. 각각의 코드는 독립된 컨테이너에서 실행된다. 또한 이벤트에 의해서 실행된다. Fine-grained access control 을 제공한다.

  • API Gateway

    API를 배포하는데 도움을 주고, Lambda와 같이 활용하기 좋다. Fine-grained access control 을 제공한다.

  • DynamoDB

    매우 빠른 성능으로, Read/Write를 onDemand하게 수행할 수 있게 해주는 NoSQL 데이터베이스

위 세가지는 Backbone의 역할을 한다.

profile
이것 저것 관심이 많아요!

0개의 댓글