๐Ÿ”ฅ TIL - Day 42

Kim Dae Hyunยท2021๋…„ 10์›” 30์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
50/93

Lambda๋ฅผ ์ด์šฉํ•ด์„œ ์ดˆ ๋ฏธ๋‹ˆ๋ฉ€? ํ•œ ๊ฒŒ์‹œํŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค.

Lambda์˜ ํ•œ ๊ฐœ ํ•จ์ˆ˜์— CRUD ๋ชจ๋“  API๋ฅผ ๋•Œ๋ ค๋ฐ•๊ณ  RDS๋ฅผ ๋ถ™์˜€๋‹ค.

ํ•œ ๊ฐœ API๋งˆ๋‹ค API Gateway์˜ uri ๋˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ฌ๋ฆฌํ•ด์„œ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด์ง€๋งŒ ์ฒซ ์—ฐ์Šต์ด๋‹ˆ ๋‹ค ํ•„์š”์—†๊ณ  ๊ทธ๋ƒฅ ๊ตด๋Ÿฌ๊ฐ€๊ฒŒ๋งŒ ํ–ˆ๋‹ค.

์ด์ „์— ์ƒ์„ฑํ•œ Lambda์™€ RDS๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
Table ์Šคํ‚ค๋งˆ๋Š” PK, ์ œ๋ชฉ, ๋‚ด์šฉ, ์ƒ์„ฑ๋‚ ์งœ ๋กœ ๊ตฌ์„ฑํ–ˆ๊ณ  ๊ตฌํ˜„ํ•œ ๊ธฐ๋Šฅ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

  • ๊ธ€์“ฐ๊ธฐ
  • ๋ชฉ๋ก๋ณด๊ธฐ
  • ์ƒ์„ธ๋ณด๊ธฐ
  • ์‚ญ์ œํ•˜๊ธฐ
  • ๊ฒ€์ƒ‰ (์ œ๋ชฉ)
  • ์—ฌ๋Ÿฌ ๊ฑด ์‚ญ์ œํ•˜๊ธฐ
  • ํŽ˜์ด์ง•

ํŒŒ์ด์ฌ ํ™˜๊ฒฝ์œผ๋กœ Lambda์—์„œ ์•„์ฃผ ๊ฐ„๋‹จํ•œ CRUD API๋ฅผ ๊ตฌํ˜„ํ•˜๋Š”๋ฐ ์žˆ์–ด์„œ ๊ธฐ์กด Flask์™€ ๋‹ฌ๋ž๋˜ ์ ์€ ๋”ฑ ํ•œ๊ฐ€์ง€์˜€๋‹ค. ๋‚˜๋จธ์ง€๋Š” ์ „๋ถ€ Flask์—์„œ ์‚ฌ์šฉํ•œ ํŒŒ์ด์จ ๋ฌธ๋ฒ•์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•œ๋‹ค.

HTTP ์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฐ›๋Š” ๋ฐฉ์‹๋งŒ ์กฐ๊ธˆ ๋‹ค๋ฅด๋‹ค.
๊ธฐ๋ณธ์ ์œผ๋กœ Lambda ํ•จ์ˆ˜์˜ ์—”ํŠธ๋ฆฌํฌ์ธํŠธ๊ฐ€ ๋˜๋Š” ํ•จ์ˆ˜์˜ ๊ตฌ์กฐ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

def lambda_handler(event, context):
    ...

ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฐ›๋Š” event ๊ฐ์ฒด์—์„œ ์š”์ฒญ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์–ป์–ด์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

param = event['queryStringParameters']['ํŒŒ๋ผ๋ฏธํ„ฐ_์ด๋ฆ„']

๐Ÿ“Œ WOW...

(์ ˆ๋Œ€ ์‰ฝ์ง€๋Š” ์•Š์•˜์ง€๋งŒ) ์ด๋ฒˆ ํ‰๋ฒ”ํ•œ ๊ฒŒ์‹œํŒ ํ”„๋กœ์ ํŠธ์—์„œ ๋Š๋‚€ ๊ฒƒ์€ ๋”ฑ ํ•˜๋‚˜๋‹ค.
์ด๋ ‡๊ฒŒ ๊ฐ„๋‹จํ•˜๊ฒŒ (๋‚˜๋ฆ„) ์™„์ „ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ฐฐํฌ๊ฐ€ ๋œ๋‹ค๋Š” ๊ฒƒ..

๋‚ด๊ฐ€ ํ•œ ์ผ์„ ์ •๋ฆฌํ•ด๋ณด์ž.
- ํŒŒ์ด์ฌ ์ฝ”๋“œ๋กœ API ๊ตฌํ˜„
- HTML, JS, CSS ๊ตฌํ˜„
- DB ์Šคํ‚ค๋งˆ ์ •์˜

์ฒซ๋ฒˆ์งธ ํŒŒ์ด์ฌ ์ฝ”๋“œ๋Š” Lambda์— ์—…๋กœ๋“œํ•˜๊ณ  API Gateway ๋ถ™์—ฌ์ฃผ๋ฉด ๋ฐฐํฌ ๋!

๋‘๋ฒˆ์งธ HTML, JS, CSS ๋“ฑ ์›น ๋ฆฌ์†Œ์Šค๋“ค์€ S3์— ์˜ฌ๋ฆฌ๊ณ  ์ •์  ์›น ํ˜ธ์ŠคํŒ… ํ•ด์ฃผ๋ฉด ๋ฐฐํฌ ๋!

๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” RDS ํ•˜๋‚˜ ์ƒ์„ฑํ•˜๊ณ  Lambda์™€ ์—ฐ๋™ํ•ด์ฃผ๋ฉด ๋ !

๋ฌผ๋ก  ๋น™์‚ฐ์˜ ์ผ๊ฐ์ด๊ฒ ์ง€๋งŒ ์ด๋ฒˆ ์ดˆ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ๋กœ ์„œ๋ฒ„๋ฆฌ์Šค์— ๋Œ€ํ•œ ๋‚˜๋ฆ„์˜ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์–ป์€ ๊ฒƒ ๊ฐ™๋‹ค ๐Ÿ‘

profile
์ข€ ๋” ์ฒœ์ฒœํžˆ ๊นŒ๋จน๊ธฐ ์œ„ํ•ด ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ๐Ÿง

0๊ฐœ์˜ ๋Œ“๊ธ€