책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 웹 서비스/웹 프로그래밍
· ISBN : 9791158390884
· 쪽수 : 424쪽
· 출판일 : 2018-01-12
책 소개
목차
[1부] 첫 걸음 떼기
▣ 1장: 서버리스로 출발
1.1 어떻게 여기까지 다다랐을까?
__1.1.1 서비스 지향 아키텍처와 마이크로서비스
__1.1.2 소프트웨어 설계
1.2 서버리스 아키텍처의 원칙
__1.2.1 컴퓨팅 서비스를 사용해 필요할 때 코드 실행
__1.2.2 단일 목적의 상태 없는 함수 작성
__1.2.3 푸시 기반, 이벤트 주도 파이프라인 설계
__1.2.4 더 두텁고 강력한 프런트엔드 구축
__1.2.5 서드파티 서비스 포용
1.3 서버에서 서비스로 이전
1.4 서버리스 장점과 단점
__1.4.1 의사 결정 요인
__1.4.2 서버리스를 사용할 때
1.5 요약
▣ 2장: 아키텍처와 패턴
2.1 사용 사례
__2.1.1 애플리케이션 백엔드
__2.1.2 데이터 처리와 조작
__2.1.3 실시간 분석
__2.1.4 레거시 API 프록시
__2.1.5 스케줄링 서비스
__2.1.6 봇과 기술
2.2 아키텍처
__2.2.1 백엔드 컴퓨팅
__2.2.2 레거시 API 프록시
__2.2.3 하이브리드
__2.2.4 GraphQL
__2.2.5 연결형 컴퓨팅
__2.2.6 실시간 처리
2.3 패턴
__2.3.1 명령 패턴
__2.3.2 메시징 패턴
__2.3.3 우선 순위 큐 패턴
__2.3.4 팬아웃 패턴
__2.3.5 파이프 및 필터 패턴
2.4 요약
▣ 3장: 서버리스 애플리케이션 구축
3.1 24-Hour Video
__3.1.1 일반적인 요구사항
__3.1.2 아마존 웹 서비스
__3.1.3 첫 번째 Lambda함수 작성
__3.1.4 Lambda 함수 이름 지정
__3.1.5 로컬에서 하는 테스트
__3.1.6 AWS에 배포
__3.1.7 S3을 Lambda에 연결
__3.1.8 AWS에서 테스트
__3.1.9 로그 확인
3.2 SNS 구성
__3.2.1 S3에 SNS 연결
__3.2.2 SNS로부터 이메일 수신
__3.2.3 SNS 테스트
3.3 비디오 권한 설정
__3.3.1 두 번째 함수 작성
__3.3.2 구성 및 보안
__3.3.3 두 번째 함수 테스트
3.4 메타데이터 생성
__3.4.1 세 번째 함수와 FFprobe 생성
3.5 깔끔하게 마무리하기
3.6 연습문제
3.7 요약
▣ 4장: 클라우드 설정
4.1 보안 모델 및 자격 증명 관리
__4.1.1 IAM 사용자 생성 및 관리
__4.1.2 그룹 생성
__4.1.3 역할 생성
__4.1.4 자원
__4.1.5 권한과 정책
4.2 로깅 및 경고
__4.2.1 로깅 설정
__4.2.2 로그 보존
__4.2.3 필터, 지표, 경보
__4.2.4 로그 데이터 검색
__4.2.5 S3와 로깅
__4.2.6 경보에 대한 추가 정보
__4.2.7 CloudTrail
4.3 비용
__4.3.1 결제 경보 생성
__4.3.2 비용 모니터링 및 최적화
__4.3.3 Simple Monthly Calculator 사용
__4.3.4 Lambda 및 API Gateway 비용 계산
4.4 연습문제
4.5 요약
[2부] 핵심 아이디어
▣ 5장: 인증과 권한
5.1 서버리스 환경에서의 인증
__5.1.1 서버리스 방식
__5.1.2 Amazon Cognito
__5.1.3 Auth0
5.2 24-Hour Video에 인증 추가
__5.2.1 계획
__5.2.2 Lambda를 직접 호출
__5.2.3 24-Hour Video 웹 사이트
__5.2.4 Auth0 구성
__5.2.5 웹 사이트에 Auth0 추가
__5.2.6 Auth0 통합 테스트
5.3 AWS와 통합
__5.3.1 사용자 프로필 Lambda
__5.3.2 API Gateway
__5.3.3 매핑
__5.3.4 API Gateway를 통한 Lambda 호출
__5.3.5 사용자 정의 권한 모듈
5.4 위임 토큰
__5.4.1 실제 사례
__5.4.2 위임 토큰 프로비저닝
5.5 연습문제
5.6 요약
▣ 6장: 조율자 Lambda
6.1 Lambda 내부
__6.1.1 이벤트 모델과 소스
__6.1.2 푸시와 풀 이벤트 모델
__6.1.3 동시 실행
__6.1.4 컨테이너 재사용
__6.1.5 차가운 Lambda와 따뜻한 Lambda
6.2 프로그래밍 모델
__6.2.1 함수 핸들러
__6.2.2 이벤트 객체
__6.2.3 컨텍스트 객체
__6.2.4 콜백 함수
__6.2.5 로깅
6.3 버전 관리, 별칭 및 환경 변수
__6.3.1 버전 관리
__6.3.2 별칭
__6.3.3 환경 변수
6.4 CLI 사용
__6.4.1 호출 명령어
__6.4.2 함수 생성 및 배포
6.5 Lambda 패턴
__6.5.1 비동기 폭포(Async waterfall)
__6.5.2 직렬 및 병렬
__6.5.3 라이브러리 사용
__6.5.4 로직을 다른 파일로 이동
6.6 Lambda 함수 테스트
__6.6.1 로컬에서 테스트
__6.6.2 테스트 작성
__6.6.3 AWS에서 테스트
__6.7 연습문제
6.8 요약
▣ 7장: API Gateway
7.1 인터페이스 역할을 하는 API Gateway
__7.1.1 AWS 서비스와의 통합
__7.1.2 캐싱, 스로틀링, 그리고 로깅
__7.1.3 스테이징과 버전 관리
__7.1.4 스크립팅
7.2 API Gateway를 사용해 일하기
__7.2.1 계획
__7.2.2 리소스와 메소드 만들기
__7.2.3 메소드 실행 구성
__7.2.4 Lambda 함수
__7.2.5 웹사이트 업데이트
7.3 Gateway 최적화
__7.3.1 스로틀링
__7.3.2 로깅
__7.3.3 캐싱
7.4 스테이지와 버전
__7.4.1 스테이지 변수 생성
__7.4.2 스테이지 변수 사용
__7.4.3 버전
7.5 연습문제
7.6 요약
[3부] 아키텍처 확장
▣ 8장: 스토리지
8.1 더 스마트한 스토리지
__8.1.1 버전 관리
__8.1.2 정적 웹사이트 호스팅하기
__8.1.3 스토리지 클래스
__8.1.4 객체 수명주기 관리
__8.1.5 전송 가속화
__8.1.6 이벤트 알림
8.2 안전한 업로드
__8.2.1 아키텍처
__8.2.2 Lambda의 업로드 정책
__8.2.3 S3 CORS 설정
__8.2.4 웹 사이트에서 업로드하기
8.3 파일 접근 제한
__8.3.1 공개된 접근 제한
__8.3.2 서명된 URL 생성하기
8.4 연습문제
8.5 요약
▣ 9장: 데이터베이스
9.1 Firebase 소개
__9.1.1 데이터 구조
__9.1.2 보안 규칙
9.2 24-Hour Video에 Firebase 추가하기
__9.2.1 아키텍처
__9.2.2 Firebase 설정
__9.2.3 트랜스코드 비디오 Lambda 함수 수정
__9.2.4 비디오 트랜스코딩 정보 Firebase 업데이트
__9.2.5 Lambda 연결
__9.2.6 웹 사이트
__9.2.7 엔드-투-엔드 테스팅
9.3 파일 접근 보안
__9.3.1 서명된 URL Lambda 함수
__9.3.2 API Gateway 설정
__9.3.3 웹사이트를 다시 업데이트
__9.3.4 성능 개선
__9.3.5 Firebase 보안 개선
9.4 연습문제
9.5 요약
▣ 10장: 마지막 여정
10.1 배포 및 프레임워크
10.2 더 나은 마이크로 서비스를 향하여
__10.2.1 오류 처리
10.3 Step Functions
__10.3.1 이미지 처리 예제
10.4 AWS 마켓플레이스
10.5 여기에서 이제 어디로
▣ 부록 A: 서버리스 아키텍처를 위한 서비스들
A.1 API Gateway
A.2 SNS
A.3 Simple Storage Service
A.4 Simple Queue Service
A.5 Simple Email Service
A.6 RDS와 DynamoDB
A.7 CloudSearch
A.8 Elastic Transcoder
A.9 Kinesis Streams
A.10 Cognito
A.11 Auth0
A.12 Firebase
A.13 그 밖의 서비스들
▣ 부록B: 설치 및 구성
B.1 시스템 준비
B.2 IAM 사용자 및 CLI 설정
B.3 사용자 권한 설정
B.4 새로운 S3 버킷 생성
B.5 IAM 역할 만들기
B.6 Lambda 준비
B.7 Elastic Transcoder 구성
B.8 npm 설정
▣ 부록C: 인증 및 권한 부여에 대한 추가 정보
C.1 인증 및 권한 부여의 기초
C.2 JSON 웹 토큰
▣ 부록D: Lambda의 내부
D.1 실행 환경
D.2 제약사항
D.3 이전 실행 환경에서의 작동
D.3.1 성공
D.3.2 실패
D.3.3 완료
▣ 부록E: 모델과 매핑
E.1 비디오 목록 조회
E.1.1 GET 메소드
E.1.2 오류 처리
E.1.3 API Gateway 배포
▣ 부록F: S3 이벤트 메시지 구조
F.1 S3 구조
F.2 기억해야 할 몇 가지 사항
▣ 부록G: Serverless 프레임워크와 SAM
G.1 Serverless 프레임워크
G.1.1 설치
G.1.2 Serverless 프레임워크 시작
G.1.3 Serverless 프레임워크 사용
G.1.4 패키징
G.1.5 테스팅
G.1.6 플러그인
G.1.7 예제
G.2 서버리스 애플리케이션 모델
G.2.1 시작하기
G.2.2 SAM을 사용한 예제
G.3 요약
리뷰
책속에서




















