[AWS 서버리스] 채팅 어플리케이션 - 01
작성일: 22년 9월 7일
PS. 유튜브를 통하여 Lambda, APIGateway, DynamoDB를 이용하여 채팅 서버를 만드는 것을 실습한 내용을 정리하였음
- 채팅 어플리케이션 - 02 -
https://louie0724.tistory.com/578
[AWS 서버리스] 채팅 어플리케이션 - 02
작성일: 22년 9월 8일 PS. 유튜브를 통해 생성과정을 따라해봄 채팅 어플리케이션 - 01 https://louie0724.tistory.com/577 [AWS 서버리스] 채팅 어플리케이션 - 01 작성일: 22년 9월 7일 PS. 유튜브를 통하여 L..
louie0724.tistory.com
- 채팅 어플리케이션 - 03 -
https://louie0724.tistory.com/579
[AWS 서버리스] 채팅 어플리케이션 - 03
작성일: 22년 9월 8일 PS. 유튜브에서 서버리스 예제를 따라함. 필자는 리엑트를 처음 해봐서 많은 시행착오가 있었음 -- [AWS 서버리스] 채팅 어플리케이션 - 01 -- https://louie0724.tistory.com/577 [AWS 서버.
louie0724.tistory.com
첨부파일
유튜버에서 제공해준 Lambda 업로드 코드
Contents
1. IAM 역할생성
2. APIGateWay 생성
3. Lambda 생성
1. IAM 역할생성
- "역할 만들기" 버튼을 클릭함
- 일반 사용 사례에서 "Lambda" 를 선택 후 "다음" 버튼 클릭
- AmazonAPIGatewayInvokeFullAccess, CloudWatchFullAccess, AmazonDynamoDBFullAccess 검색 후 체크함
- 역할의 이름을 "chatapp-lambda-role" 입력하여 역할을 생성함
- 생성한 역할은 APIGateway, CloudWatch, DynamoDB에 대한 권한을 가지고 있음을 확인 할 수 있음
2. APIGateWay 생성
1) Rest API 생성
- REST API에서 "구축" 버튼 클릭함
- 생성하고자 하는 API의 이름을 "chatapp-rest"로 입력하여 API를 생성함
2) WebSocket API 생성
- WebSocke API에서 "구축" 버튼을 클릭함
- "chatapp-websocket" 이름을 입력 후 라우팅은 기본값인 "request.body.action" 입력 후 "다음" 버튼 클릭함
- 그 외에는 설정할 것 없고 스테이지에서 "dev" 입력 후 "다음" 버튼 클릭함
3. Lambda 생성
1) get 함수 생성
- 함수이름을 "chatapp-message-get"으로 입력후 Nodejs.12.x 설정 후 위에서 생성한 역할을 선택 후 "함수 생성" 버튼을 클릭함
- 기존에 공유 된 .zip 파일을 업로드 함
- 함수의 런타임 설정에서 "편집" 버튼을 클릭함
- "src/lambda/chat/get.handler" 입력 후 "저장" 버튼 클릭함
2) put 함수 생성
- "chatapp-message-put" 이름 입력후 Nodejs.12.x 설정 후 위에서 생성한 역할을 선택 후 "함수 생성" 버튼을 클릭함
- 이전과 동일하게 코드를 .zip 파일로 업로드 함
- 함수의 런타임 편집에서 "src/lambda/chat/put.handler" 입력 후 "저장" 버튼 클릭함
- 함수 구성에서 환경변수 "편집" 버튼을 클릭함
- 환경변수의 값을 APIGateway의 ID 값으로 설정 후 "저장" 버튼 클릭함
※ socket_api_gateway_id를 입력 하는 이유는 코드상에서 해당 값을 환경변수에서 가져오기 때문임
3) Connect 함수 생성
- "chatapp-onConnect" 이름 입력후 Nodejs.12.x 설정 후 위에서 생성한 역할을 선택 후 "함수 생성" 버튼을 클릭함
- 코드는 위에서와 동일하게 .zip 파일로 업로드함
- "src/lambda/chat/onConnect.handler" 입력 후 "저장" 버튼 클릭함
4) Disconnect 함수 생성
- "chatapp-onDisconnect" 이름 입력후 Nodejs.12.x 설정 후 위에서 생성한 역할을 선택 후 "함수 생성" 버튼을 클릭함
- 코드는 위에서와 동일하게 .zip 파일로 업로드함
- "src/lambda/chat/onDisconnect.handler" 입력 후 "저장" 버튼 클릭함
Referece: