"memory caching daemon"์˜ ์•ฝ์ž์ธ Memcached๋Š” ์›๋ž˜ Danga Interactive์—์„œ ๊ฐœ๋ฐœํ•œ ์˜คํ”ˆ ์†Œ์Šค ๊ณ ์„ฑ๋Šฅ ๋ถ„์‚ฐ ๋ฉ”๋ชจ๋ฆฌ ์บ์‹ฑ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. Memcached๋Š” 2003๋…„ ์ฒ˜์Œ ์ถœ์‹œ๋œ ์ดํ›„ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ํˆดํ‚ท์˜ ํ•„์ˆ˜ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ๋กœ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ™•์žฅํ•˜๊ณ  ์ „๋ฐ˜์ ์ธ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ธฐ๋Šฅ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. Memcached์˜ ํ•ต์‹ฌ์€ ํ‚ค-๊ฐ’ ์Œ์„ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๋Š” ์บ์‹ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜์œผ๋กœ, ์ค‘๋ณต ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ์˜ ํ•„์š”์„ฑ์„ ์ค„์ด๊ณ  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ „์ฒด ์†๋„๋ฅผ ํ–ฅ์ƒ์‹œ์ผœ ๋ฐ์ดํ„ฐ์— ๋” ๋น ๋ฅด๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. Memcached๋Š” AppMaster no-code ํ”Œ๋žซํผ์„ ๋น„๋กฏํ•œ ์ˆ˜๋งŽ์€ ๊ณ ์„ฑ๋Šฅ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉ๋˜์–ด ๊ณ ๊ฐ์„ ์œ„ํ•œ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๋ฐ ์ €์žฅ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

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

๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ๋งฅ๋ฝ์—์„œ Memcached๋Š” AppMaster ํ”Œ๋žซํผ์ด ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” Python, Ruby, PHP, Java ๋ฐ Go ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์บ์‹ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์„ ํƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ด‘๋ฒ”์œ„ํ•œ ์ฑ„ํƒ์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด, ์›น ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ๊ณผ์˜ ์›ํ™œํ•œ ํ†ตํ•ฉ์„ ์ œ๊ณตํ•˜๋Š” ์ˆ˜๋งŽ์€ ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ฐ€์šฉ์„ฑ์— ๊ธฐ์ธํ•ฉ๋‹ˆ๋‹ค.

AppMaster ๋…ธ์ฝ”๋“œ ํ”Œ๋žซํผ์—์„œ Memcached์˜ ํ†ตํ•ฉ์€ ์‹ ์†ํ•˜๊ณ  ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๋ฐ ์ €์žฅ์„ ๋ณด์žฅํ•˜์—ฌ AppMaster ์—์„œ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ Memcached๋ฅผ no-code ๋„๊ตฌ์— ํ†ตํ•ฉํ•จ์œผ๋กœ์จ AppMaster ๊ณ ๊ฐ์—๊ฒŒ ์ตœ์ ํ™”๋œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜์—ฌ ์‹œ์žฅ ์ถœ์‹œ ์‹œ๊ฐ„ ๋ฐ ๊ด€๋ จ ๋น„์šฉ์„ ํšจ๊ณผ์ ์œผ๋กœ ์ค„์ž…๋‹ˆ๋‹ค.

Memcached๋Š” ๊ฐ•๋ ฅํ•œ ์บ์‹ฑ ์†”๋ฃจ์…˜์ด์ง€๋งŒ ์บ์‹œ์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋Š” ํœ˜๋ฐœ์„ฑ์ด๋ฉฐ ๋ฉ”๋ชจ๋ฆฌ ์ œ์•ฝ์— ๋„๋‹ฌํ•˜๋ฉด ์ œ๊ฑฐ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ฐ์ดํ„ฐ ์ง€์†์„ฑ ์†”๋ฃจ์…˜์€ ์•„๋‹™๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋ฐœ์ž๋Š” Memcached๋ฅผ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ง€์†์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ๋ณด์žฅํ•˜๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์Šคํƒ ์ „์ฒด์—์„œ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ๊ณผ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Memcached์˜ ๊ฐ€์žฅ ์ฃผ๋ชฉํ• ๋งŒํ•œ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” ๋‹จ์ˆœ์„ฑ์ž…๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์€ ๊ธฐ๋ณธ CRUD ์ž‘์—…(๋งŒ๋“ค๊ธฐ, ์ฝ๊ธฐ, ์—…๋ฐ์ดํŠธ ๋ฐ ์‚ญ์ œ)์„ ์‚ฌ์šฉํ•˜์—ฌ ์บ์‹œ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ„๋‹จํ•œ API๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹จ์ˆœ์„ฑ ๋•๋ถ„์— ๊ฐœ๋ฐœ์ž๋Š” Memcached๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‹ ์†ํ•˜๊ฒŒ ํ†ตํ•ฉํ•˜์—ฌ ์ „์ฒด ๊ฐœ๋ฐœ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์„ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ Memcached๋Š” ํ”Œ๋žซํผ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š์œผ๋ฏ€๋กœ Linux, Windows ๋ฐ macOS๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์ฃผ์š” ์šด์˜ ์ฒด์ œ์— ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Memcached๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ๋„๋ฆฌ ์ฑ„ํƒ๋˜๋Š” ๊ณ ์„ฑ๋Šฅ ๋ถ„์‚ฐ ๋ฉ”๋ชจ๋ฆฌ ์บ์‹ฑ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ๋‹จ์ˆœ์„ฑ, ํ†ตํ•ฉ ์šฉ์ด์„ฑ, ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋ฐ ํ”Œ๋žซํผ ์ง€์›์œผ๋กœ ์ธํ•ด ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ์ด์ƒ์ ์ธ ์บ์‹ฑ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. Memcached๋ฅผ ๋ฐฑ์—”๋“œ์— ํ†ตํ•ฉํ•จ์œผ๋กœ์จ AppMasterno-code ํ”Œ๋žซํผ์€ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ตœ์  ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ๋ณด์žฅํ•˜์—ฌ ๊ณ ๊ฐ์—๊ฒŒ ๊ฐœ์„ ๋˜๊ณ  ๋น„์šฉ ํšจ์œจ์ ์ธ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.