inspeep
๋ถ„๋ฅ˜ > IT ๊ฒŒ์‹œํŒ

FastAPI์™€ Redis๋ฅผ ํ™œ์šฉํ•œ 1์ธ ๊ฐœ๋ฐœ์ž์˜ ๋ฐฑ์—”๋“œ ์ตœ์ ํ™” ์—ฌ์ •

๐Ÿ‘ค ์ธ์Šคํ”ผ
์กฐํšŒ ์ˆ˜ 6
์ถ”์ฒœ ์ˆ˜ 0
๋Œ“๊ธ€ 0

์›น ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์ฒ˜์Œ ์˜คํ”ˆํ•˜๊ณ  ๋‚˜๋ฉด ๊ฐ€์žฅ ๋‘๋ ค์šฐ๋ฉด์„œ๋„ ์„ค๋ ˆ๋Š” ์ˆœ๊ฐ„์ด ๋ฐ”๋กœ 'ํŠธ๋ž˜ํ”ฝ์ด ๊ธ‰์ฆํ•  ๋•Œ'์ž…๋‹ˆ๋‹ค. ๋ฐฉ๋ฌธ์ž๊ฐ€ ๋Š˜์–ด๋‚œ๋‹ค๋Š” ๊ฒƒ์€ ์„œ๋น„์Šค๊ฐ€ ์„ฑ์žฅํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ธฐ๋ถ„ ์ข‹์€ ์ฆ๊ฑฐ์ง€๋งŒ, ๋™์‹œ์— ๋ฐฑ์—”๋“œ ์„œ๋ฒ„๊ฐ€ ๊ทธ ๋ถ€ํ•˜๋ฅผ ๊ฒฌ๋””์ง€ ๋ชปํ•˜๊ณ  ๋‹ค์šด๋˜์–ด ๋ฒ„๋ฆฌ์ง€๋Š” ์•Š์„๊นŒ ํ•˜๋Š” ์—„์ฒญ๋‚œ ์••๋ฐ•๊ฐ์œผ๋กœ ๋‹ค๊ฐ€์˜ค๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์ € ์—ญ์‹œ ์ตœ๊ทผ ๋Š˜์–ด๋‚˜๋Š” ์œ ์ €๋ถ„๋“ค์˜ ํ™œ๋™๋Ÿ‰์„ ๋ณด๋ฉฐ ๊ธฐ์กด์˜ ๋‚ก์€ ์„œ๋ฒ„ ์•„ํ‚คํ…์ฒ˜๋กœ๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ์„ ๋ผˆ์ €๋ฆฌ๊ฒŒ ๋А๊ผˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์˜ค๋Š˜์€ ์ œ๊ฐ€ ์ง์ ‘ ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฐฑ์—”๋“œ๋ฅผ ๊ตฌ์ถ•ํ•˜๋ฉฐ ๊ฒช์—ˆ๋˜ ์‹œํ–‰์ฐฉ์˜ค, ๊ทธ๋ฆฌ๊ณ  'FastAPI'์™€ 'Redis'๋ผ๋Š” ๊ฐ•๋ ฅํ•œ ๋ฌด๊ธฐ๋ฅผ ๋„์ž…ํ•˜์—ฌ ์„œ๋ฒ„์˜ ์‘๋‹ต ์†๋„๋ฅผ ๊ทน์ ์œผ๋กœ ๋Œ์–ด์˜ฌ๋ฆฐ ์ตœ์ ํ™” ๊ฒฝํ—˜๋‹ด์„ ์—ฌ๋Ÿฌ๋ถ„๊ณผ ๊ณต์œ ํ•ด ๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋ž˜ํ”ฝ ๋ณ‘๋ชฉ ํ˜„์ƒ์œผ๋กœ ๊ณ ํ†ต๋ฐ›๊ณ  ๊ณ„์‹  ์˜ˆ๋น„ ์ฐฝ์—…์ž๋‚˜ ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค๊ป˜ ์ž‘์€ ์ธ์‚ฌ์ดํŠธ๊ฐ€ ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.



1. ์™œ ์ˆ˜๋งŽ์€ ํŒŒ์ด์ฌ ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ 'FastAPI'์˜€์„๊นŒ?


์ผ๋ฐ˜์ ์œผ๋กœ ํŒŒ์ด์ฌ(Python)์œผ๋กœ ์›น ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ ๋‹ค๊ณ  ํ•˜๋ฉด ์‹ญ์ค‘ํŒ”๊ตฌ ์žฅ๊ณ (Django)๋‚˜ ํ”Œ๋ผ์Šคํฌ(Flask)๋ฅผ ๊ฐ€์žฅ ๋จผ์ € ๋– ์˜ฌ๋ฆฌ์‹ค ๊ฒ๋‹ˆ๋‹ค. ๋ฐฉ๋Œ€ํ•œ ์ƒํƒœ๊ณ„์™€ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ์ž๋ž‘ํ•˜๋Š” ํ›Œ๋ฅญํ•œ ๋„๊ตฌ๋“ค์ด์ฃ . ํ•˜์ง€๋งŒ ์ €๋Š” ๊ณผ๊ฐํ•˜๊ฒŒ ์ด๋“ค์„ ๋’ค๋กœํ•˜๊ณ  ์ƒ๋Œ€์ ์œผ๋กœ ํ›„๋ฐœ์ฃผ์ž์ธ FastAPI๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ์ •์ ์ธ ์ด์œ ๋Š” ๋ฐ”๋กœ '๋„ค์ดํ‹ฐ๋ธŒ ๋น„๋™๊ธฐ(Asynchronous) ์ฒ˜๋ฆฌ' ์ง€์› ๋•Œ๋ฌธ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด์˜ ๋™๊ธฐ(Synchronous) ๋ฐฉ์‹ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์‹๋‹น์œผ๋กœ ๋น„์œ ํ•˜์ž๋ฉด '๋น„ํšจ์œจ์ ์ธ ์ข…์—…์›'๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. 1๋ฒˆ ํ…Œ์ด๋ธ” ์†๋‹˜์ด ์ฃผ๋ฌธํ•œ ์Œ์‹์ด ์ฃผ๋ฐฉ์—์„œ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ์ฃผ๋ฐฉ์žฅ ์•ž์—์„œ ๊ฐ€๋งŒํžˆ ์„œ์„œ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋™์•ˆ 2๋ฒˆ, 3๋ฒˆ ํ…Œ์ด๋ธ” ์†๋‹˜์€ ์ฃผ๋ฌธ์กฐ์ฐจ ํ•˜์ง€ ๋ชปํ•˜๊ณ  ๋ฐฉ์น˜๋˜์ฃ . ํŠธ๋ž˜ํ”ฝ์ด ๋ชฐ๋ฆฌ๋ฉด ์„œ๋ฒ„๊ฐ€ ๊ทธ๋Œ€๋กœ ๋ฉˆ์ถฐ๋ฒ„๋ฆฌ๋Š”(๋ณ‘๋ชฉ ํ˜„์ƒ) ์ฃผ๋œ ์›์ธ์ž…๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด FastAPI๋Š” ํƒœ์ƒ๋ถ€ํ„ฐ ๋น„๋™๊ธฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ข…์—…์›์ด 1๋ฒˆ ํ…Œ์ด๋ธ”์˜ ์ฃผ๋ฌธ์„ ์ฃผ๋ฐฉ์— ๋„ฃ์ž๋งˆ์ž, ์š”๋ฆฌ๊ฐ€ ๋‚˜์˜ค๋Š” ์‹œ๊ฐ„์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ฆ‰์‹œ 2๋ฒˆ ํ…Œ์ด๋ธ”๋กœ ์ด๋™ํ•ด ๋‹ค์Œ ์ฃผ๋ฌธ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค. I/O ์ž‘์—…(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์กฐํšŒ, ์™ธ๋ถ€ API ํ†ต์‹  ๋“ฑ)์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ CPU๋ฅผ ๋†€๋ฆฌ์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ์š”์ฒญ์„ ๋Š์ž„์—†์ด ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์ฐจ์ด๋Š” ์ˆ˜๋ฐฑ ๋ช…์˜ ์œ ์ €๊ฐ€ ๋™์‹œ์— ๊ฒŒ์‹œํŒ์„ ํด๋ฆญํ•  ๋•Œ ์‚ฌ์ดํŠธ๊ฐ€ ๋ฒ„ํ‹ฐ๋А๋ƒ ๋ฌด๋„ˆ์ง€๋А๋ƒ๋ฅผ ๊ฐ€๋ฅด๋Š” ๊ฒฐ์ •์ ์ธ ์ฐจ์ด๋ฅผ ๋งŒ๋“ค์–ด๋ƒ…๋‹ˆ๋‹ค.



2. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋น„๋ช… ์†Œ๋ฆฌ, ๋น„๋™๊ธฐ SQLAlchemy๋กœ ์ž ์žฌ์šฐ๋‹ค


์›น ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋น„๋™๊ธฐ๋กœ ๋ฐ”๊ฟจ๋‹ค๊ณ  ํ•ด์„œ ๋ชจ๋“  ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์„œ๋ฒ„ ๋กœ์ง์ด ์•„๋ฌด๋ฆฌ ๋นจ๋ผ๋„ ๋ฐ์ดํ„ฐ๋ฅผ ๊บผ๋‚ด์˜ค๋Š” ์ฐฝ๊ณ , ์ฆ‰ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(RDBMS)๋กœ ๊ฐ€๋Š” ํ†ต๋กœ๊ฐ€ ๊ฝ‰ ๋ง‰ํ˜€์žˆ๋‹ค๋ฉด ๊ฒฐ๊ตญ ์‘๋‹ต ์†๋„๋Š” ๋А๋ ค์ง‘๋‹ˆ๋‹ค.

์ดˆ๊ธฐ์—๋Š” ์ชฝ์ง€ ๊ธฐ๋Šฅ์ด๋‚˜ ๋ณต์žกํ•œ ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ๋ถˆ๋Ÿฌ์˜ฌ ๋•Œ, ๊ทธ ์•…๋ช… ๋†’์€ 'N+1 ์ฟผ๋ฆฌ ๋ฌธ์ œ'๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๋น„๋ช…์„ ์งˆ๋Ÿฌ๋Œ”์Šต๋‹ˆ๋‹ค. 10๊ฐœ์˜ ๊ธ€์„ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ์œ„ํ•ด 11๋ฒˆ์˜ ํ†ต์‹ ์„ ํ•˜๋Š” ๋”์ฐํ•œ ๋น„ํšจ์œจ์ด์—ˆ์ฃ . ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฑ์—”๋“œ์— ๋น„๋™๊ธฐ SQLAlchemy(Async SQLAlchemy)๋ฅผ ์ „๋ฉด ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด์˜ ๊ฝ‰ ๋ง‰ํžŒ ๋‹จ๋ฐฉํ–ฅ ๋„๋กœ๋ฅผ ๋‹ค์ฐจ์„  ๊ณ ์†๋„๋กœ๋กœ ๋šซ์–ด์ฃผ๋Š” ์ž‘์—…์ด์—ˆ์Šต๋‹ˆ๋‹ค. selectinload์™€ ๊ฐ™์€ ์ฆ‰์‹œ ๋กœ๋”ฉ(Eager Loading) ๊ธฐ๋ฒ•์„ ํ™œ์šฉํ•ด, ๊ฒŒ์‹œ๊ธ€์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์ž‘์„ฑ์ž์˜ ํ”„๋กœํ•„ ์ •๋ณด๊นŒ์ง€ ๋‹จ ํ•œ ๋ฒˆ์˜ ๋น„๋™๊ธฐ ์ฟผ๋ฆฌ๋กœ ๋ชจ๋‘ ๋ฌถ์–ด์„œ ๋Œ๊ณ  ์˜ค๋„๋ก ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ „๋ฉด ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ, ํŽ˜์ด์ง€๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋˜ ์„œ๋ฒ„ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด ๊ธฐ์กด ๋Œ€๋น„ 70% ์ด์ƒ ๋‹จ์ถ•๋˜๋Š” ๋†€๋ผ์šด ์„ฑ๊ณผ๋ฅผ ๊ฑฐ๋‘˜ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.



3. ๊ถ๊ทน์˜ ๋ฌด๊ธฐ: Redis ์ธ๋ฉ”๋ชจ๋ฆฌ ์บ์‹ฑ(Caching)์˜ ๋„์ž…


์•„๋ฌด๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ๋ฅผ ์ตœ์ ํ™”ํ•ด๋„, ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋ฉ”์ธ ํŽ˜์ด์ง€์— ์ ‘์†ํ•  ๋•Œ๋งˆ๋‹ค ๋งค๋ฒˆ ํ•˜๋“œ๋””์Šคํฌ ๊ธฐ๋ฐ˜์˜ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๋’ค์ ๊ฑฐ๋ฆฌ๋Š” ๊ฒƒ์€ ์„œ๋ฒ„์˜ ์ฒด๋ ฅ์„ ๊ฐ‰์•„๋จน๋Š” ์ผ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๊ฒ€์ƒ‰์—”์ง„ ๋กœ๋ด‡(SEO)์ด๋‚˜ ์ˆ˜๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๋ฐ˜๋ณตํ•ด์„œ ์ฝ๋Š” 'IT ๊ฒŒ์‹œํŒ'๊ณผ '๋ฉ”์ธ ํ†ตํ•ฉ ๋ชฉ๋ก'์€ ๋”๋”์šฑ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ €๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ž๋‹จ์— Redis(๋ ˆ๋””์Šค)๋ฅผ ์บ์‹œ ์„œ๋ฒ„๋กœ ๋ฐฐ์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. Redis๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋А๋ฆฐ ํ•˜๋“œ๋””์Šคํฌ๊ฐ€ ์•„๋‹Œ, ๋น›์ฒ˜๋Ÿผ ๋น ๋ฅธ ์ปดํ“จํ„ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ(RAM) ์œ„์— ์˜ฌ๋ ค๋‘๊ณ  ์„œ๋น„์Šคํ•˜๋Š” ์ธ๋ฉ”๋ชจ๋ฆฌ(In-Memory) ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค.

์œ ์ €๊ฐ€ ๋ฉ”์ธ ํ™”๋ฉด์„ ์š”์ฒญํ•˜๋ฉด, ์„œ๋ฒ„๋Š” ๋ฌด๊ฑฐ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋จผ์ € ์ฐŒ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ€๋ณ๊ณ  ๋น ๋ฅธ Redis์—๊ฒŒ "ํ˜น์‹œ ์•„๊นŒ ๋งŒ๋“ค์–ด๋‘” ๋ฉ”์ธ ํ™”๋ฉด ๋ฐ์ดํ„ฐ ์žˆ์–ด?"๋ผ๊ณ  ๋ฌผ์–ด๋ด…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋‹ค๋ฉด ๋ฐ€๋ฆฌ์ดˆ(ms) ๋‹จ์œ„๋กœ ์ฆ‰์‹œ ์œ ์ €์—๊ฒŒ ํ™”๋ฉด์„ ๋˜์ ธ์ค๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐฑ์—”๋“œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ถ€ํ•˜๋ฅผ ๊ฑฐ์˜ 0์— ๊ฐ€๊น๊ฒŒ ์ค„์—ฌ๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋ฐ์ดํ„ฐ๊ฐ€ ์˜ค๋ž˜๋˜๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•ด ์ผ์ • ์‹œ๊ฐ„๋งˆ๋‹ค ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ตœ์‹ ํ™”ํ•˜๋Š” SWR(Stale-While-Revalidate) ํŒจํ„ด๋„ ํ•จ๊ป˜ ์ ์šฉํ•˜์—ฌ, ์œ ์ €๋“ค์€ ์–ธ์ œ๋‚˜ ์ง€์—ฐ ์—†๋Š” ์พŒ์ ํ•œ ํ™”๋ฉด์„ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.



๋งบ์œผ๋ฉฐ: 1์ธ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ตœ์ ํ™”๋ž€ '์ƒ์กด'์ž…๋‹ˆ๋‹ค


๋ง‰๋Œ€ํ•œ ์ž๋ณธ์„ ํˆฌ์žํ•˜์—ฌ ๋ฌดํ•œ์ • ์„œ๋ฒ„ ์ธํ”„๋ผ(์ปดํ“จํŒ… ํŒŒ์›Œ)๋ฅผ ๋Š˜๋ ค๋ฒ„๋ฆฌ๋Š” ์ด๋ฅธ๋ฐ” '์Šค์ผ€์ผ ์—…(Scale-up)'์„ ์ž์œ ๋กญ๊ฒŒ ํ•  ์ˆ˜ ์—†๋Š” 1์ธ ๊ฐœ๋ฐœ์ž์—๊ฒŒ, ์ฝ”๋“œ ์ตœ์ ํ™”์™€ ํšจ์œจ์ ์ธ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๋Š” ์„ ํƒ์ด ์•„๋‹Œ ์ƒ์กด์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

ํŒŒ์ด์ฌ๊ณผ FastAPI, ๊ทธ๋ฆฌ๊ณ  Redis๋ฅผ ์—ฎ์–ด๋‚ด๋ฉฐ ์ˆ˜๋งŽ์€ ์—๋Ÿฌ ๋กœ๊ทธ์™€ ๋งˆ์ฃผํ–ˆ์ง€๋งŒ, ํŠœ๋‹์ด ๋๋‚œ ๋กœ์ง์ด ๋ชจ๋‹ˆํ„ฐ์— 0.01์ดˆ ๋‹จ์œ„์˜ ๋น ๋ฅธ ์‘๋‹ต ์†๋„๋ฅผ ์ฐ์–ด์ค„ ๋•Œ์˜ ๊ทธ ์งœ๋ฆฟํ•จ์€ ์ด๋ฃจ ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ๊ฒฐ๊ตญ '์œ ์ €์˜ ์พŒ์ ํ•œ ๊ฒฝํ—˜'์ด ์ „๋ถ€๋ผ๋Š” ์‚ฌ์‹ค์„ ์„œ๋ฒ„ ๊ด€๋ฆฌ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๋ณด๋ฉฐ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊นจ๋‹ซ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ฌ ๋Œ“๊ธ€ 0๊ฐœ

IT ๊ฒŒ์‹œํŒ

๊ณต์ง€
Notice
๊ณต์ง€ inspeep ์ปค๋ฎค๋‹ˆํ‹ฐ ์ด์šฉ ๋ฐ ๊ฒŒ์‹œ๋ฌผ ๊ด€๋ฆฌ ๊ทœ์ • ์•ˆ๋‚ด
๐Ÿ‘ค ๊ด€๋ฆฌ์ž ๐Ÿ“… 2026.04.15 ๐Ÿ‘€ ์กฐํšŒ 56 ๐Ÿ‘ ์ถ”์ฒœ 0
BEST
์ธ๋„ค์ผ
BEST 2. ์ฝ”๋”ฉ ๋ฌธ์™ธํ•œ์˜ ์›Œ๋“œํ”„๋ ˆ์Šค ์ •๋ณต๊ธฐ: VS Code์™€ FTP์˜ ์Šต๊ฒฉ
๐Ÿ‘ค ๊ด€๋ฆฌ์ž ๐Ÿ“… 2026.03.05 ๐Ÿ‘€ ์กฐํšŒ 135 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
์‚ผ์„ฑ๊ฐ•๋‚จ ๊ฐค๋Ÿญ์‹œ ํด๋”๋ธ” ์ „์‹œํšŒ
๐Ÿ‘ค KEeep ๐Ÿ“… 2026.09.15 ๐Ÿ‘€ ์กฐํšŒ 0 ๐Ÿ‘ ์ถ”์ฒœ 0
๊ฐœ๋ฐœ
์ธ๋„ค์ผ
์ด๊ฒŒ ํฌ๋ž˜ํ”„ํ†ค ์ถœ์‹  ๊ฐœ๋ฐœ์ž์˜ ๋ง๋กœ์ž„...jpg
๐Ÿ‘ค ๋กœ๋ฃจ๋””๋‹ค ๐Ÿ“… 2026.09.15 ๐Ÿ‘€ ์กฐํšŒ 0 ๐Ÿ‘ ์ถ”์ฒœ 0
๊ฐœ๋ฐœ
์ธ๋„ค์ผ
๋‰ด์Šค
์ธ๋„ค์ผ
๊ฐœ๋ฐœ
์ธ๋„ค์ผ
๋‰ด์Šค
์ธ๋„ค์ผ
๋‰ด์Šค
์ธ๋„ค์ผ
์‚ผ์„ฑ์ „์ž ์ถœ์‹ ์ด ์•„์ดํฐ ๋“€์˜ค๋ณด๊ณ  ๋А๋‚€์ .jpg
๐Ÿ‘ค ๋ผ๋‘ ๐Ÿ“… 2026.09.11 ๐Ÿ‘€ ์กฐํšŒ 2 ๐Ÿ‘ ์ถ”์ฒœ 0
๊ฐœ๋ฐœ
์ธ๋„ค์ผ
๋‰ด์Šค
์ธ๋„ค์ผ
์•„์ดํฐ ๋“€์˜ค 2ํ…Œ๋ผ๊ฐ€๊ฒฉ์ด
๐Ÿ‘ค K_Shit ๐Ÿ“… 2026.09.11 ๐Ÿ‘€ ์กฐํšŒ 2 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
์‹ฑ๊ธ€๋ฒ™๊ธ€ ํด๋“œ 8 vs ์•„์ดํฐ ๋“€์˜ค ๋น„๊ต
๐Ÿ‘ค ๋ผ๋‘ ๐Ÿ“… 2026.09.10 ๐Ÿ‘€ ์กฐํšŒ 3 ๐Ÿ‘ ์ถ”์ฒœ 0
๋ฆฌ๋ทฐ
์ธ๋„ค์ผ
ํ•ด์™ธ ์‚ผ์—ฝ์ถฉ ๋ฆฌ๋ทฐ์–ด์˜ ์•„์ดํฐ ๋“€์˜ค ํ‰๊ฐ€..
๐Ÿ‘ค ๋ฆฌํ† ํƒ€ ๐Ÿ“… 2026.09.10 ๐Ÿ‘€ ์กฐํšŒ 3 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
์ถฉ๊ฒฉ) ๋ถˆ ๋„๊ณ  ์Šค๋งˆํŠธํฐ ๋ด๋„ ์‹œ๋ ฅ ์•ˆ ๋–จ์–ด์ ธ
๐Ÿ‘ค ๋ผ๋‘ ๐Ÿ“… 2026.09.09 ๐Ÿ‘€ ์กฐํšŒ 3 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
์•„์ดํฐ ์šธํŠธ๋ผ, 18ํ”„๋กœ/๋งฅ์Šค ์™ธ๊ด€ ๋ชจ๋‘ ๊ณต๊ฐœ
๐Ÿ‘ค ์ฅฌ๋ฉ”์กฐ๊ทœ ๐Ÿ“… 2026.09.04 ๐Ÿ‘€ ์กฐํšŒ 13 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
์‚ผ์„ฑ์ „์ž, ์—‘์‹œ๋…ธ์Šค AP ๊ฐค๋Ÿญ์‹œ S27 ์šธํŠธ๋ผ ํƒ‘์žฌ ์˜ˆ์ •
๐Ÿ‘ค ๋ฆฌํ† ํƒ€ ๐Ÿ“… 2026.09.02 ๐Ÿ‘€ ์กฐํšŒ 10 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
๊ฐค๋Ÿญ์‹œ S26 ์šธํŠธ๋ผ ๋ฒˆ์ธํŒจ์น˜ ์‚ฌ์‹ค์ƒ ์‹คํŒจ..
๐Ÿ‘ค ์•ผ๋ฆฌํƒ€ ๐Ÿ“… 2026.09.01 ๐Ÿ‘€ ์กฐํšŒ 18 ๐Ÿ‘ ์ถ”์ฒœ 0
๊ฐœ๋ฐœ
์ธ๋„ค์ผ
๋‰ด์Šค
์ธ๋„ค์ผ
TF ๊ฐค๋Ÿญ์‹œํฌ์Šค ์Šˆํผ ์˜ตํ‹ฐ๋จธ์Šค ํ”„๋ผ์ž„ ๋งŒ๋“ค์–ด์˜ด
๐Ÿ‘ค ๋ผ๋‘ ๐Ÿ“… 2026.08.31 ๐Ÿ‘€ ์กฐํšŒ 26 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
๋ถํ•œ ์Šค๋งˆํŠธํฐ, ์ธํ„ฐ๋„ท ์—†์ด ๊ฒ€์—ดยท๊ฐ์‹œ๊นŒ์ง€
๐Ÿ‘ค ๋””๋ก ๐Ÿ“… 2026.08.30 ๐Ÿ‘€ ์กฐํšŒ 9 ๐Ÿ‘ ์ถ”์ฒœ 0
๋‰ด์Šค
์ธ๋„ค์ผ
๋ถํ•œ ์Šค๋งˆํŠธํฐ์— โ€˜๋‚จํ•œโ€™ ๊ฒ€์ƒ‰ํ•˜๋ฉด?
๐Ÿ‘ค K_Shit ๐Ÿ“… 2026.08.29 ๐Ÿ‘€ ์กฐํšŒ 6 ๐Ÿ‘ ์ถ”์ฒœ 0
1 2 3 4 5 ๋‹ค์Œ › ๋ »
โœ๏ธ ๊ธ€์“ฐ๊ธฐ