์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ์ฝํ
- ๋ฐ์ดํฐ ๋ถ์
- ์๋ฐ์คํฌ๋ฆฝํธ
- nlp
- ๋ฐฑ์ค
- ํ์ด์ฌ
- DFS
- github
- ๊นํ๋ธ
- ๋น ๋ฐ์ดํฐ
- AI
- react
- ์๊ณ ๋ฆฌ์ฆ
- abap
- sap
- ํ ์คํธ๋ง์ด๋
- ๋ฐ์ดํฐ๋ถ์
- ์ธ๊ณต์ง๋ฅ
- AWS
- erp
- ์ฝ๋ฉํ ์คํธ
- ๋ฆฌ์กํธ
- tableau
- ํ ์คํธ๋ถ์
- ๋ฅ๋ฌ๋
- ํ๋ธ๋ก
- ํ๋ธ๋ฃจ
- Git
- ์์ฐ์ด์ฒ๋ฆฌ
- ์๋ง์กด์น์๋น์ค
- Today
- Total
Hey Tech
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (3) AWS Lambda ์์ฑ ๋ณธ๋ฌธ
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (3) AWS Lambda ์์ฑ
Tony Park (ํ ๋) 2022. 6. 10. 00:28๐ ์๋ฆฌ์ฆ ํฌ์คํ
1. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (1) React ๊ธฐ๋ฐ Frontend ๊ฐ๋ฐ
2. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (2) AWS IAM ์ญํ ์์ฑ
3. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (3) AWS Lambda ์์ฑ
4. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (4) AWS S3 ์์ฑ
5. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (5) AWS API Gateway ์์ฑ
6. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (6) AWS Lambda ํจ์ ์์ฑ
7. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (7) Axios ๊ธฐ๋ฐ API Call
8. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (8) ํ์ผ ์ ๋ก๋ ํ ์คํธ
9. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (9) AWS S3 ๊ธฐ๋ฐ ์น ํธ์คํ
๐จ๐ป ๋ค์ด๊ฐ๋ฉฐ
์ด์ 2๊ฐ์ ํฌ์คํ ์์๋ React ๊ธฐ๋ฐ์ ํ์ผ ์ ๋ก๋์ฉ ์น ํ์ด์ง Frontend ๊ตฌ์ถ๊ณผ AWS IAM ์ญํ ์ ์์ฑํ๋ ์ ์ฐจ๋ฅผ ์๊ฐํ์์ต๋๋ค. ๋ณธ ํฌ์คํ ์์๋ ์๋ฒ ์ญํ (Backend)์ ์ํ AWS Lambda ํจ์๋ฅผ ์์ฑํ๋ ์ ์ฐจ๋ฅผ ์๊ฐํฉ๋๋ค.
๐ ๋ชฉ์ฐจ
1. AWS ๊ธฐ๋ณธ ์ธํ
2. Lambda ๊ฐ๋
3. Lambda ์์ฑ
4. Lambda ์ธํ
1. AWS ๊ธฐ๋ณธ ์ธํ
1.1. ์๋น์ค ๊ฐ์
๋จผ์ AWS ํํ์ด์ง์ ๋ฐฉ๋ฌธํ์ ์ ํ์๊ฐ์ ์ ํ์ ์ผ ํฉ๋๋ค. ์๋์ ๊ทธ๋ฆผ 1๊ณผ ๊ฐ์ด ์ต์ด ๊ฐ์ ํ ์ด๋ฉ์ผ ๊ณ์ ์ผ๋ก 1๋ ๊ฐ ๋ฌด๋ฃ ์ฒดํํ(a.k.a., ํ๋ฆฌ ํฐ์ด)์ ์ ๊ณตํฉ๋๋ค. ๋ฌผ๋ก ๋ฌด๋ฃ์ธ ๋งํผ ์ ์ฌ์ ์๋น์ค ๋ฌด๋ฃ๋ก ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. ํ์๊ฐ์ ์ ํด์ธ ๊ฒฐ์ ๊ฐ ๊ฐ๋ฅํ ์ ์ฉ์นด๋ ๋ฑ๋ก์ด ํ์์ ๋๋ค. ์ ํจํ ์ ์ฉ์นด๋์ธ์ง 100์์ ๊ฒฐ์ ํ๋ค๊ฐ ๊ณง๋ฐ๋ก ์น์ธ ์ทจ์๋๋ ์ ํจํ ์ ์ฉ์นด๋๋ฅผ ์ค๋นํด ์ฃผ์ธ์.
1.2. ์๋น์ค ์ง์ญ ๋ณ๊ฒฝ
ํ์๊ฐ์ ๊น์ง ์๋ฃํ์ จ๋ค๋ฉด ํ์ฌ PC๋ฅผ ์ฌ์ฉ ์ค์ธ ์ง์ญ๊ณผ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฑฐ๋ฆฌ์ ์๋ ์๋น์ค ์ง์ญ(Region)์ ์ ํํ์ ์ผ ํฉ๋๋ค. ์ถํ์ ์๋น์ค ์๊ธ์ ๋ํด ์ดํด๋ณด๊ฒ ์ง๋ง, ์๋น์ค ์ง์ญ๋ง๋ค ๊ณผ๊ธ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์๋์ ๊ทธ๋ฆผ 2์ฒ๋ผ, AWS ํํ์ด์ง ์ฐ์ธก ์๋จ์ ์ง์ญ ์ด๋ฆ์ ํด๋ฆญํ๋ฉด ์๋น์ค ์ง์ญ์ ๋ณ๊ฒฝํ์ค ์ ์์ต๋๋ค. ๋ํ๋ฏผ๊ตญ์ ๊ฑฐ์ฃผํ๊ณ ๊ณ์๋ค๋ฉด Seoul์ ์ ํํด ์ฃผ๋ฉด ๋ฉ๋๋ค.
2. Lambda ๊ฐ๋
Amazon Web Service(AWS) Lambda๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์ฝ๋(=ํจ์)๋ฅผ ์คํํ๊ณ ์ปดํจํฐ ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๋ Serverless ์ปดํจํ ์๋น์ค์ ๋๋ค(๊ทธ๋ฆผ 3 ์ฐธ๊ณ ). ์ฌ๊ธฐ์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๋๋ฅผ ๋ค๋ฅธ ๋ง๋ก "trigger ๋์์ ๋" ๋๋ "ํจ์๋ฅผ ํธ์ถํ์ ๋"๋ผ๊ณ ๋ ํํํฉ๋๋ค. ์ฆ, 24์๊ฐ ์๋ฒ๊ฐ ๋์๊ฐ๋ AWS EC2์ ๋ฌ๋ฆฌ, AWS Lambda๋ ์ฌ์ฉ์๊ฐ ํจ์๋ฅผ ํธ์ถํ์ ๋๋ง ์ฝ๋๊ฐ ์คํ๋๋ ์๋น์ค์ ๋๋ค.
Serverlss == No Server?
Serveless ์ปดํจํ ์ด๋ฉด ์๋ฒ๊ฐ ์๋ค๋ ์๋ฏธ์ผ๊น์? ์ ๋ ์๋๋๋ค. ์๋ฒ๊ฐ ์์ผ๋ฉด ์น ์๋ฒ๋ฅผ ๋ง๋ค ์๊ฐ ์์ฃ . Serverless๋ Backend๋ฅผ ์๋ฒ ๊ด๋ฆฌ ์์ด ์ด์ํ๋ค๋ ์๋ฏธ์ ๋๋ค. ์ฆ, Serverless ์ปดํจํ ์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๋ ์๋ฒ๋ฅผ ์ ๊ฒฝ ์ธ ํ์๊ฐ ์์ฃ . ์๋ฒ์ ํธ๋ํฝ์ด ์ผ๋ง๋ ์กํ๋์ง ๋ชจ๋ํฐ๋งํ๊ฑฐ๋ ์๋ฒ์ ๊ฐ์๋ ์ฌ์ ๋ฑ์ ์ผ์ผ์ด ๊ณ ๋ คํ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ฝ๋์๋ง ์ง์คํ๋ฉด ๋ฉ๋๋ค. ์ฆ, ์ฝ๋ฉ๋ง ์ํ๋ฉด ๋๋ค๋ ๊ฒ์ ๋๋ค.
Lambda์ ๋ํ ๋์ฑ ์์ธํ ๊ฐ๋ ์ ์๋์ ํฌ์คํ ์ ์ฐธ๊ณ ํด ์ฃผ์ธ์.
https://heytech.tistory.com/397?category=559266
3. Lambda ์์ฑ
1) Lambda ์ฝ์ ์ ๊ทผ
AWS ํํ์ด์ง ๊ฒ์์ฐฝ์์ Lambda๋ฅผ ๊ฒ์ํ์ฌ Lambda ์ฝ์๋ก ์ด๋ํฉ๋๋ค(๊ทธ๋ฆผ 4).
2) Lambda ํจ์ ์์ฑ
"ํจ์ ์์ฑ" ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค(๊ทธ๋ฆผ 5).
3) Lambda ํจ์ ์์ฑ ์ต์
์๋์ ๊ทธ๋ฆผ 6์ฒ๋ผ ์๋์ ์ต์ ์ ์ ํํ์ ํ ๋งจ ํ๋จ์ "ํจ์ ์์ฑ" ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
- ํจ์ ์ด๋ฆ: ์ง๊ด์ ์ผ๋ก ์์๋ณผ ์ ์๋๋ก ์์ฑ
- ๋ฐํ์: Node ๊ธฐ๋ฐ Backend ๊ตฌ์ถ ์์
- ์คํ ์ญํ : "๊ธฐ์กด ์ญํ ์ฌ์ฉ" ์ ํ ํ ์ด์ ํฌ์คํ ์์ ์์ฑํ๋ ์ญํ ์ ํ
4. Lambda ์ธํ
Lambda ํจ์๊ฐ ๋ง๋ค์ด์ก๋ค๋ฉด ์ด์ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ์ ์ ํ ์๊ฐ์ ์ค์ ํฉ๋๋ค.
1) "๊ตฌ์ฑ" ํด๋ฆญ
์๋์ ๊ทธ๋ฆผ 7์ฒ๋ผ "๊ตฌ์ฑ"์ ํด๋ฆญํฉ๋๋ค.
2) "ํธ์ง" ํด๋ฆญ
์๋์ ๊ทธ๋ฆผ 8์ฒ๋ผ, "ํธ์ง"์ ํด๋ฆญํฉ๋๋ค.
3) ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ ๋ฐ ์ ํ ์๊ฐ ๋ณ๊ฒฝ
ํ์ผ ์ ๋ ฅ์ ๋ฐ๊ธฐ ์ํด ๋ฉ๋ชจ๋ฆฌ์ ์ ํ ์๊ฐ์ ๋๋ ค์ค๋๋ค. ์ ์ ๊ฒฝ์ฐ, ๋ฉ๋ชจ๋ฆฌ๋ 512MB, ์ ํ์๊ฐ์ 1๋ถ์ผ๋ก ์ค์ ํ์์ต๋๋ค(๊ทธ๋ฆผ 9).
์ด์ ๊ธฐ๋ณธ์ ์ธ ๋๋ค ํจ์ ์์ฑ ๋ฐ ์ธํ ์ด ์๋ฃ๋์์ต๋๋ค. ๋ค์ ํฌ์คํ ์์๋ AWS S3 ์์ฑ ๋ฐ ์ธํ ์ ์ฐจ๋ฅผ ์๊ฐํฉ๋๋ค.
๐ ์๋ฆฌ์ฆ ํฌ์คํ
1. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (1) React ๊ธฐ๋ฐ Frontend ๊ฐ๋ฐ
2. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (2) AWS IAM ์ญํ ์์ฑ
3. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (3) AWS Lambda ์์ฑ
4. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (4) AWS S3 ์์ฑ
5. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (5) AWS API Gateway ์์ฑ
6. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (6) AWS Lambda ํจ์ ์์ฑ
7. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (7) Axios ๊ธฐ๋ฐ API Call
8. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (8) ํ์ผ ์ ๋ก๋ ํ ์คํธ
9. ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (9) AWS S3 ๊ธฐ๋ฐ ์น ํธ์คํ
ํฌ์คํ ๋ด์ฉ์ ์ค๋ฅ๊ฐ ์๊ฑฐ๋ ๋ณด์ํ ์ ์ด ์๋ค๋ฉด ์๋์ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์!
๊ทธ๋ผ ์ค๋๋ ๋ฉ์ง ํ๋ฃจ ๋ง๋์๊ธธ ๋ฐ๋๋๋ค :)
๊ณ ๋ง์ต๋๋ค๐
'SW ๊ฐ๋ฐ > Amazon Web Service' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (5) AWS API Gateway ์์ฑ (0) | 2022.06.10 |
---|---|
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (4) AWS S3 ์์ฑ (0) | 2022.06.10 |
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (2) AWS IAM ์ญํ ์์ฑ (0) | 2022.06.09 |
ํ์ผ ์ ๋ก๋ ์น ํ์ด์ง ๊ตฌ์ถ: (1) React ๊ธฐ๋ฐ Frontend ๊ฐ๋ฐ (2) | 2022.06.08 |
AWS Lambda ์น ์๋ฒ ๋ง๋ค๊ธฐ: Lambda, API Gateway ์์ฑ (0) | 2022.06.01 |