Skip to content

Latest commit

ย 

History

History
59 lines (38 loc) ยท 4.23 KB

dev_wiki.md

File metadata and controls

59 lines (38 loc) ยท 4.23 KB

ํ”„๋กœ์ ํŠธ wiki

์•„๋ž˜ ๋งํฌ์—์„œ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์˜ ์œ„ํ‚ค(ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ํฌํ•จ)๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ํ”„๋กœ์ ํŠธ ์œ„ํ‚ค

์•„๋ž˜๋Š” ๋Œ€ํ‘œ์ ์ธ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… ๋‘๊ฐ€์ง€ - ์ผ๊ธฐ ์•”ํ˜ธํ™”, ์ผ๊ธฐ ์ƒ์„ฑ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ์— ๊ด€ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค !

ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… - ์ผ๊ธฐ ์•”ํ˜ธํ™”

์ „๋ฌธ

db์—์„œ diary ํ…Œ์ด๋ธ”์„ ์กฐํšŒํ•  ๊ฒฝ์šฐ ํŒ€์›๋“ค์˜ ์ผ๊ธฐ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ ์ด ์žˆ์—ˆ๋‹ค. ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ์ž ์ผ๊ธฐ๋ฅผ ์ €์žฅํ•  ๋•Œ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์ €์žฅํ•˜๊ณ , ์กฐํšŒํ•  ๋•Œ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ์‘๋‹ตํ•˜๋Š” ๋ฐฉ์‹์„ ๋„์ž…ํ•˜์˜€๋‹ค.

ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ์•ˆ์ •์ ์ด๋ผ๋Š” AES ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค. ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์œ ํ‹ธ ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค.

์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์œ ํ‹ธ ํด๋ž˜์Šค๋Š” ๋„๋ฉ”์ธ์ด ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์„์ง€, ์„œ๋น„์Šค ํด๋ž˜์Šค๋“ค์ด ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์ข‹์„์ง€ ๊ณ ๋ฏผ์ด ๋˜์—ˆ๋‹ค.

์„œ๋น„์Šค๋‹จ์—์„œ ์œ ํ‹ธ ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์•”ํ˜ธํ™”ํ•ด์„œ ์ €์žฅํ•˜๊ณ , ๋ณตํ˜ธํ™”ํ•ด์„œ ์กฐํšŒํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ ค ํ–ˆ์œผ๋‚˜, DiaryService ํด๋ž˜์Šค์˜ ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋“ค์€ Diary์˜ note(์ผ๊ธฐ ๋‚ด์šฉ)๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด ๋ณตํ˜ธํ™”ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ์•„์•ผ ํ•˜๊ธฐ์— ์˜์กด์„ฑ์ด ๋†’์•„์ง€๋Š” ๋‹จ์ ์ด ์žˆ์—ˆ๋‹ค. ๋งŒ์•ฝ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ๊ณผ ํ˜‘์—…ํ•œ๋‹ค๋ฉด ์ผ๊ธฐ ๋‚ด์šฉ์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ ๋ณตํ˜ธํ™”ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ชจ๋‘๊ฐ€ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.

๋”ฐ๋ผ์„œ ์—”ํ‹ฐํ‹ฐ์—์„œ ์ผ๊ธฐ ๋‚ด์šฉ์„ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ์ €์žฅํ•  ๋•Œ, ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™” Util ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ”๊พธ์—ˆ๋‹ค. ์„œ๋น„์Šค๋‹จ์—์„œ ์—”ํ‹ฐํ‹ฐ์˜ ์ผ๊ธฐ ๋‚ด์šฉ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ผ๊ธฐ ๋‚ด์šฉ ํ•„๋“œ๊ฐ€ ์•”ํ˜ธํ™” ๋˜์—ˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ชฐ๋ผ๋„ ๋˜๋„๋ก, ์บก์Šํ™”ํ•˜์˜€๋‹ค.

ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… - ์ผ๊ธฐ ์ƒ์„ฑ์‹œ DALL-E ํ˜ธ์ถœ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผํ•˜๋Š” ์ด์Šˆ

์ „๋ฌธ

์‚ฌ์šฉ์ž๋Š” ์ผ๊ธฐ ์ƒ์„ฑ์„ ์ตœ์ข…์ ์œผ๋กœ ์š”์ฒญํ•˜๋ฉด, ์•ฝ 9์ดˆ ๋’ค์— ์ƒ์„ฑ๋œ ๊ทธ๋ฆผ ์ผ๊ธฐ๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋™์•ˆ ์‚ฌ์šฉ์ž๋Š” ๊ด‘๊ณ ๋ฅผ ์‹œ์ฒญํ•˜๊ฑฐ๋‚˜ ๋กœ๋”ฉ ํ™”๋ฉด์—์„œ ๋Œ€๊ธฐํ•œ๋‹ค.

์ผ๊ธฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ณผ์ •์—์„œ OPEN AI์˜ DALL-E์˜ API๋ฅผ ํ˜ธ์ถœํ•ด ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ, ์ด๋–„ ํ‰๊ท ์ ์œผ๋กœ ์•ฝ 8์ดˆ ์ •๋„์˜ ์‘๋‹ต ์‹œ๊ฐ„์ด ์†Œ์š”๋œ๋‹ค. ์ด ๋ถ€๋ถ„์€ ๋™์‹œ์— ์ผ๊ธฐ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ, ์„œ๋ฒ„์— ๋™์‹œ ์ฒ˜๋ฆฌ ์š”์ฒญ์ด ๋ˆ„์ ํ•˜๋ฉฐ ์ฆ๊ฐ€ํ•  ์ˆ˜๋„ ์žˆ๊ณ , ์š”์ฒญ์ด ์ผ์ • ์ˆ˜๋ฅผ ์ดˆ๊ณผํ•  ๊ฒฝ์šฐ, ์ผ๊ธฐ ์ƒ์„ฑ์ด ์•„๋‹Œ ์ผ๋ฐ˜ ์กฐํšŒ API ์š”์ฒญ ๋“ฑ๋„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ž ์žฌ์  ์œ„ํ—˜์ด ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ , ๋ถ„๋‹น DALL-E API ์š”์ฒญ๋Ÿ‰์„ ์ œ์–ดํ•˜์ง€ ๋ชปํ•œ๋‹ค.

ํ•ด๊ฒฐ ๋ฐฉ์•ˆ ์„ค๊ณ„

๋”ฐ๋ผ์„œ ์ผ๊ธฐ ์ƒ์„ฑ ์š”์ฒญ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๊ณ„ํ•˜์˜€๋‹ค. ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋„ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ, ํ˜„์žฌ ๊ฐœ๋ฐœ ์ƒํ™ฉ์„ ๊ณ ๋ คํ•ด์„œ ๋ฉ”์‹œ์ง€ ํ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์•ˆ์„ ์„ ํƒํ•˜์˜€๋‹ค. ์ผ๊ธฐ ์ƒ์„ฑ์— ๋Œ€ํ•œ ์š”์ฒญ์„ ํ์— ๋ณด๊ด€ํ•˜๊ณ , ํ์—์„œ ์ •์ฑ…์— ๋”ฐ๋ผ ๋ณ„๋„์˜ ์„œ๋ฒ„๋กœ ๋ฉ”์‹œ์ง€(์š”์ฒญ)์„ ์ „๋‹ฌํ•˜๋Š” ๊ตฌ์กฐ๋‹ค.

๋ฉ”์‹œ์ง€ ํ๋ฅผ ์„ ํƒํ•œ ์ด์œ ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

  1. ์ผ๊ธฐ ์ƒ์„ฑ์— ๋Œ€ํ•œ ์„ฑ๊ณต ์‹คํŒจ ์ฒ˜๋ฆฌ๊ฐ€ ์œ ์—ฐํ•ด์ง„๋‹ค.
  2. DALL-E API์— ๋Œ€ํ•œ ์š”์ฒญ๋Ÿ‰์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  3. ์ผ๊ธฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ์— ์†Œ์š”๋˜๋Š” ํ‰๊ท  9์ดˆ์˜ ๋Œ€๊ธฐ์‹œ๊ฐ„์ด ํ•„์š” ์—†๋‹ค. ์œ ์ €๋Š” ์•Œ๋ฆผ์„ ๊ธฐ๋‹ค๋ฆฌ๋ฉด ๋œ๋‹ค.
  4. DALL-E API๊ฐ€ ์•„๋‹Œ Stable-Diffusion API ๋“ฑ ๋‹ค๋ฅธ ์™ธ๋ถ€ ์ด๋ฏธ์ง€ ์ƒ์„ฑํ˜• AI ์„œ๋น„์Šค๋ฅผ ์“ฐ๊ฒŒ๋˜๋”๋ผ๋„ ์‹ค ์„œ๋น„์Šค์˜ ์˜ํ–ฅ์ด ๊ฑฐ์˜ ์—†๋‹ค.
  5. ๋‹น์—ฐํžˆ, DALL-E API์— ๋Œ€ํ•œ ์š”์ฒญ์„ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด, ๋‹ค๋ฅธ ์„œ๋น„์Šค์— ์˜ํ–ฅ์ด ๊ฐ€์ง€ ์•Š๋„๋ก ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

๋”ฐ๋ผ์„œ AWS SQS์™€ AWS Lambda๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๊ณ„ํ•˜์˜€๋‹ค. ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๋„ ํ•ด๋‹น ์•„ํ‚คํ…์ฒ˜๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ํ˜‘์˜๊ฐ€ ํ•„์š”ํ•˜๊ธฐ์— ์•„์ง ๋„์ž…๋˜์ง€ ์•Š์•˜์ง€๋งŒ, ์ง€์†์ ์œผ๋กœ ๋…ผ์˜ํ•˜์—ฌ ๊ฐœ์„ ํ•ด๋‚˜๊ฐ€๊ณ ์ž ํ•œ๋‹ค.