서버리스 컴퓨팅 및 애플리케이션

서버는 고려하지 않고 애플리케이션 구축 및 실행

서버리스 컴퓨팅을 사용하면 서버를 고려하지 않고 애플리케이션과 서비스를 구축하고 실행할 수 있습니다. 서버리스 애플리케이션에서는 사용자가 서버를 프로비저닝, 확장 및 관리할 필요가 없습니다. 거의 모든 유형의 애플리케이션 또는 백엔드 서비스를 서버리스로 구축할 수 있으며, 애플리케이션을 고가용성으로 실행하고 확장하는 데 필요한 모든 것이 자동으로 처리됩니다.

서버리스 애플리케이션을 구축한다는 것은 개발자가 클라우드나 온프레미스의 서버 또는 런타임 관리와 운영에 대해 걱정하기보다는 핵심 제품에 집중할 수 있다는 뜻입니다. 이렇게 오버헤드가 줄어들면 개발자가 시간과 에너지를 확장 가능하고 안정적인 훌륭한 제품을 개발하는 데 사용할 수 있습니다.

서버리스 애플리케이션의 4가지 주요 이점

서버 관리 불필요

서버를 프로비저닝하거나 유지 관리할 필요가 없습니다. 설치, 유지 또는 관리할 소프트웨어나 런타임이 없습니다. 

유연한 확장성

애플리케이션은 자동으로 확장될 수 있고, 개별 서버 단위가 아니라 사용 단위(예: 처리량, 메모리)를 설정/해제하여 용량을 조정할 수도 있습니다.

고가용성

서버리스 애플리케이션은 내장된 가용성과 내결함성을 갖추고 있습니다. 애플리케이션을 실행하는 서비스에서 기본적으로 이를 제공하므로 이러한 기능을 설계할 필요가 없습니다.

유휴 용량 없음

유휴 용량에 대한 비용을 지불할 필요가 없습니다. 컴퓨팅이나 스토리지 등의 용량을 사전 프로비저닝하거나 오버 프로비저닝할 필요가 없습니다. 예를 들어 코드가 실행되지 않을 때는 비용이 부과되지 않습니다.

사례 연구

Coca Cola

미국의 다국적 음료 회사 Coca-Cola Company는 AWS Lambda 및 AWS Step Functions를 사용하여 비용 효율적인 서버리스 솔루션을 구축했습니다.

블로그 읽기 »

Nordstrom

미국의 유명 패션 전문 기업 Nordstrom은 고객의 요구 사항에 대응하기 위해 AWS Lambda를 활용하는 새로운 추천 엔진을 구축했습니다.

동영상 보기 »

Benchling

생명 과학 소프트웨어 회사 Benchling은 연구원들이 서버리스 아키텍처를 사용하여 극한의 정밀도로 게놈을 수정할 수 있는 기술을 개발했습니다.

더 보기 »

Localytics

웹 앱과 모바일 앱 분석 및 지원 회사인 Localytics는 AWS Lambda를 사용하여 병렬 데이터 스트림 및 마이크로 서비스를 구축했습니다.

더 보기 »

AWS 서버리스 플랫폼의 기능

대규모로 실행할 수 있는 서버리스 애플리케이션을 제공하려면 광범위한 기능을 갖춘 플랫폼이 필요합니다. 다음은 AWS에서 엔터프라이즈급 서버리스 애플리케이션을 지원하는 방법입니다.

클라우드 로직 계층

상호 연결된 인프라 리소스 및 웹 API에 대한 제어 플레인 및 로직 계층으로 작동할 수 있는 AWS Lambda로 비즈니스 로직을 구동합니다.

오케스트레이션 및 상태 관리

AWS Step Functions를 사용하여 서비리스 애플리케이션의 각 분산된 구성 요소 또는 마이크로서비스의 상태를 조정하고 관리합니다.

응답성이 우수한 데이터 원본

실시간으로 데이터를 처리하고 이벤트를 트리거하는 데 사용할 수 있는 광범위한 데이터 원본 및 공급업체 중에서 선택합니다. 응답성이 우수한 데이터 원본의 목록은 설명서를 참조하십시오.

애플리케이션 모델링 프레임워크

오픈 소스 AWS Serverless Application Model을 사용하여 서버리스 애플리케이션 및 서비스를 모델링하고 배포합니다. AWS CodePipeline, AWS CodeBuild와 같은 애플리케이션 수명 주기 관리 도구를 사용하여 서버리스 애플리케이션을 지속적으로 제공합니다.

개발자 에코시스템

개발에서 프로덕션까지 코드의 구축, 테스트 및 배포를 간소화해주는 타사 도구 및 오픈 소스 프로젝트의 에코시스템을 활용합니다. 개발자 도구 페이지로 이동하거나 타사 도구를 위한 에코시스템 페이지를 참조하십시오.

애플리케이션 및 통합 라이브러리

AWS Serverless Application Repository를 사용하여 웹 및 모바일 백엔드, 챗봇, IoT, Alexa Skill, 데이터 처리, 스트림 처리 등 다양한 사용 사례를 위한 서비리스 애플리케이션 및 애플리케이션 구성 요소를 빠르게 찾고 배포할 수 있습니다. 또한 널리 사용되는 타사 서비스(Slack, Algorithmia, Twilio, Loggly, Splunk, Sumo Logic, Box 등)와의 통합 기능을 확인할 수도 있습니다.

보안 및 액세스 제어

로깅, 변화 추적, 액세스 제어, 암호화를 사용하여 규정 준수를 강화하고 전체 IT 환경을 보호합니다. AWS Identity and Access Management(IAM)를 사용하여 AWS 리소스에 대한 액세스를 안전하게 제어합니다. Amazon Cognito를 사용하여 서버리스 애플리케이션의 최종 사용자를 관리하고 인증합니다. Amazon Virtual Private Cloud(VPC)를 사용하여 독점적으로 액세스할 수 있는 프라이빗 가상 네트워크를 생성합니다.

안정성 및 성능

AWS는 엔터프라이즈 규모 성능을 제공하는 저렴하게 확장 가능한 고가용성 서비스를 제공합니다. AWS Lambda는 배달 못한 편지 대기열, 자동 재시도와 같은 기본 기능을 통해 안정적으로 비즈니스 로직을 실행합니다. AWS를 사용하여 해당 애플리케이션을 실행하는 방법을 알아보려면 고객 사례를 참조하십시오.

글로벌 확장 및 지원

AWS의 글로벌 지원을 이용하여 애플리케이션과 서비스를 전 세계로 확장합니다. AWS Lambda는 여러 AWS 리전에서, 그리고 Lambda@Edge를 통해 모든 AWS 엣지 로케이션에서 사용할 수 있습니다. 또한 AWS Greengrass를 사용하여 연결된 로컬 디바이스에서 Lambda 기능을 실행할 수도 있습니다.

AWS 서버리스 플랫폼

AWS에서는 서버리스 애플리케이션을 구축 및 실행하는 데 사용할 수 있는 일련의 완전 관리형 서비스를 제공합니다. 서버리스 애플리케이션은 컴퓨팅, 데이터베이스, 스토리지, 스트림 처리, 메시지 대기열 등의 백엔드 구성 요소를 위한 서버를 프로비저닝, 유지 및 관리할 필요가 없습니다. 그뿐만 아니라 더는 애플리케이션 내결함성 및 가용성에 관해 걱정할 필요가 없습니다. AWS가 이러한 모든 기능을 대신 처리합니다. 이를 통해 제품 출시 시간을 단축하면서 제품 혁신에 집중할 수 있습니다.

컴퓨팅

AWS Lambda를 사용하면 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행할 수 있습니다. 사용한 컴퓨팅 시간만큼만 비용을 지불하고, 코드가 실행되지 않을 때는 요금이 부과되지 않습니다. 코드를 업로드하기만 하면, Lambda에서 높은 가용성으로 코드를 실행 및 확장하는 데 필요한 모든 것을 처리합니다.

Lambda@Edge를 사용하면 Amazon CloudFront 이벤트에 대한 응답으로 AWS 엣지 로케이션에서 Lambda 함수를 실행할 수 있습니다.

API 프록시

Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안할 수 있게 해주는 완전 관리형 서비스입니다. Amazon API Gateway를 통해 수십만 개의 동시 API 호출을 처리하고 트래픽 관리, 권한 부여 및 액세스 제어, 모니터링 및 API 버전 관리를 처리할 수 있습니다.

스토리지

Amazon Simple Storage Service(Amazon S3)는 개발자와 IT 팀에 안전하고 안정성과 확장성이 뛰어난 객체 스토리지를 제공합니다. Amazon S3는 간단한 웹 서비스 인터페이스를 통해 웹 어디서나 원하는 양의 데이터를 저장 및 검색할 수 있으므로 사용하기가 쉽습니다.

데이터베이스

Amazon DynamoDB는 규모에 관계없이 10밀리초 미만의 지연 시간이 일관되게 요구되는 모든 애플리케이션을 위한 빠르고 유연성이 뛰어난 NoSQL 데이터베이스 서비스입니다. 또한, 완전 관리형 클라우드 데이터베이스로서 문서 모델과 키 값 스토어 모델을 모두 지원합니다.

프로세스 간 메시징

Amazon SNS는 마이크로 서비스, 분산 시스템 및 서버리스 애플리케이션을 쉽게 분리하고 확장할 수 있게 해주는 완전 관리형 게시/구독 메시징 서비스입니다.

Amazon SQS는 마이크로 서비스, 분산 시스템 및 서버리스 애플리케이션을 쉽게 분리하고 확장할 수 있게 해 주는 완전 관리형 메시지 대기열 서비스입니다.  

오케스트레이션

AWS Step Functions를 사용하면 시각적 워크플로를 사용해 분산 애플리케이션 및 마이크로서비스의 구성 요소를 손쉽게 조정할 수 있습니다. 각각 기능을 수행하는 개별 구성 요소를 사용하여 애플리케이션을 구축하면 애플리케이션을 빠르게 확장하거나 변경할 수 있습니다. Step Functions는 애플리케이션의 기능을 통해 구성 요소와 단계를 조정할 수 있는 안정적인 방법입니다.

분석

Amazon Kinesis는 AWS의 스트리밍 데이터를 위한 플랫폼으로서, 스트리밍 데이터를 손쉽게 로드 및 분석할 수 있는 강력한 서비스를 제공하고, 특정 요구에 맞게 사용자 지정 스트리밍 데이터 애플리케이션을 구축할 수 있는 기능을 제공합니다.

Amazon Athena는 표준 SQL을 사용해 Amazon S3에 저장된 데이터를 간편하게 분석할 수 있는 대화식 쿼리 서비스입니다. Athena는 서버리스 서비스이므로 관리할 인프라가 없으며 실행한 쿼리에 대해서만 비용을 지불하면 됩니다.

개발자 도구

AWS에서는 개발자가 서버리스 애플리케이션 개발 프로세스에 사용할 수 있는 도구와 서비스를 제공합니다. AWS와 AWS 파트너 에코시스템은 지속적 통합 및 전달, 테스트, 배포, 모니터링 및 진단, SDK, 프레임워크, 통합 개발 환경(IDE) 플러그인을 위한 도구를 제공합니다.

자세히 알아보기 »

서버리스 애플리케이션 사용 사례

서버리스 아키텍처를 사용하여 거의 모든 유형의 애플리케이션 또는 백엔드 서비스를 구축합니다. 다음은 두 가지 사용 사례입니다.


웹 애플리케이션 및 백엔드

AWS Lambda, Amazon API Gateway, Amazon S3 및 Amazon DynamoDB를 사용하여 웹, 모바일, 사물 인터넷(IoT) 및 챗봇 요청을 처리하는 서버리스 웹 애플리케이션 및 백엔드를 구축할 수 있습니다.

참조 아키텍처: 다이어그램 | 샘플 코드

Lambda_WebApplications

참조 아키텍처: 다이어그램 | 샘플 코드

Lambda_MobileBackends
Bustle_logo2

Bustle은 AWS Lambda와 Amazon API Gateway를 사용하여 Bustle iOS 앱 및 웹 사이트에 대해 서버리스 백엔드를 실행합니다. 서버리스 아키텍처를 사용하여 인프라 관리를 수행할 필요가 전혀 없으므로 Bustle의 모든 엔지니어는 새로운 기능 개발 및 혁신에 집중할 수 있습니다. 사례 연구 읽기 »


데이터 처리

AWS Lambda, Amazon Kinesis, Amazon S3 및 Amazon DynamoDB를 사용하여 다양한 실시간 데이터 처리 시스템을 구축할 수 있습니다.

참조 아키텍처: 다이어그램 | 샘플 코드

Lambda_FileProcessing
square-enix_logo

Square Enix는 AWS Lambda를 사용하여 대규모 멀티플레이어 온라인 게임의 이미지 처리를 실행합니다. Lambda를 사용해 평상시 트래픽 대비 최대 30배로 급증하는 트래픽을 안정적으로 처리할 수 있었습니다. 또한, 이미지 처리에 필요한 시간이 몇 시간에서 단 10초로 줄었으며 이에 따라 인프라와 운영 비용이 절감되었습니다. 사례 연구 읽기 »

참조 아키텍처: 다이어그램 | 샘플 코드

Lambda_StreamProcessing
Thomson_Reuters_logo2

Thomson Reuters는 서버리스 아키텍처를 사용하여 자사의 사용 분석 서비스를 위해 초당 최대 4,000개의 이벤트를 처리합니다. 이 서비스는 평상시 트래픽 대비 2배로 급증하는 트래픽을 안정적으로 처리하며 내구성이 매우 뛰어납니다. 이 기업은 AWS를 사용한 지 5개월 만에 서비스를 프로덕션에 배포했습니다. 사례 연구 읽기 »

서버리스 컴퓨팅 시작하기

icon1

AWS 계정 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다.
icon2

단계별 자습서로 알아보기

간단한 자습서를 통해 자세히 알아보십시오.
icon3

서버리스 애플리케이션 구축

AWS Serverless Application Repository에서 인기 있는 사용 사례에 대한 애플리케이션을 찾아 보십시오.

서버리스 애플리케이션 구축에 대해 자세히 알아보기

리소스 페이지 방문하기
시작할 준비가 되셨습니까?
가입
질문이 있으십니까?
AWS에 문의