Skip to content

Instantly share code, notes, and snippets.

@snowmerak
Last active June 22, 2024 15:01
Show Gist options
  • Save snowmerak/e344d66b6bd88fb17324134e5c3500cc to your computer and use it in GitHub Desktop.
Save snowmerak/e344d66b6bd88fb17324134e5c3500cc to your computer and use it in GitHub Desktop.

[GDC] Weekly Newsletter #1

TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ๊ณต๊ฐœ ๋ฒ ํƒ€ ์ถœ์‹œ ๋ฐ AI ์ƒํƒœ๊ณ„ ์ธ์‚ฌ์ดํŠธ

Summary

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

Description

TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ TiDB์— ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์„ ํ†ตํ•ฉํ•˜์—ฌ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒ€์ƒ‰ ๋ฐ ์ถ”๋ก  ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. TiDB๋Š” MySQL๊ณผ ํ˜ธํ™˜๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ์กด MySQL ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์†์‰ฝ๊ฒŒ TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Discussion

  1. TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์˜ ๊ณต๊ฐœ ๋ฒ ํƒ€ ๋ฒ„์ „ ์ถœ์‹œ๋Š” ๊ฐœ๋ฐœ์ž๋“ค์ด TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์„ ์ง์ ‘ ์‚ฌ์šฉํ•ด ๋ณด๊ณ  ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ ๋”์šฑ ๋ฐœ์ „ํ•˜๊ณ  ๊ฐœ์„ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. PingCAP์€ TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์„ AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ๋น ๋ฅธ ๋ฐ์ดํ„ฐ ๋ถ„์„์ด ํ•„์š”ํ•˜๋ฉฐ, TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ ์ด๋Ÿฌํ•œ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ถฉ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์ด์ƒ์ ์ธ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.
  3. TiDB๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋กœ, ๊ฐœ๋ฐœ์ž๋“ค์€ TiDB์˜ ์ฝ”๋“œ์— ์ ‘๊ทผํ•˜๊ณ  ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” TiDB ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๋”์šฑ ํ™œ์„ฑํ™”ํ•˜๊ณ  ๋ฐœ์ „์‹œํ‚ค๋Š” ๋ฐ ๊ธฐ์—ฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Features

  • ๋ถ„์‚ฐํ˜• ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • MySQL ํ˜ธํ™˜์„ฑ
  • ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ํ†ตํ•ฉ
  • ๊ณ ์„ฑ๋Šฅ, ํ™•์žฅ์„ฑ, ๋†’์€ ๊ฐ€์šฉ์„ฑ
  • ๋‹ค์–‘ํ•œ AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ง€์›

Usage

Installation

TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ์„ค์น˜๋Š” PingCAP ์›น์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ ์„ค์น˜ ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ MySQL๊ณผ ์œ ์‚ฌํ•œ ์ฟผ๋ฆฌ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋“ค์€ ๊ธฐ์กด MySQL ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์œผ๋กœ ์‰ฝ๊ฒŒ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Recommendation

TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๊ณ ์„ฑ๋Šฅ ํŠธ๋žœ์žญ์…˜, ํ™•์žฅ์„ฑ, ๋†’์€ ๊ฐ€์šฉ์„ฑ์ด ํ•„์š”ํ•œ AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•œ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. ํŠนํžˆ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒ€์ƒ‰ ๋ฐ ์ถ”๋ก  ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐ ํšจ๊ณผ์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

External Links

Caution

  • TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์€ ์•„์ง ๊ฐœ๋ฐœ ์ค‘์ด๋ฉฐ, ๋ชจ๋“  ๊ธฐ๋Šฅ์ด ์™„๋ฒฝํ•˜๊ฒŒ ์ง€์›๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • TiDB ๋ฒกํ„ฐ ๊ฒ€์ƒ‰์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ์‚ฌ์šฉ ๋ฐฉ๋ฒ• ๋ฐ ์ œ์•ฝ ์‚ฌํ•ญ์„ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

SimpleDB: ์Šคํฌ๋ž˜์น˜๋ถ€ํ„ฐ ๋งŒ๋“  ๊ธฐ๋ณธ์ ์ธ RDBMS

Summary

SimpleDB๋Š” UCLA ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ˆ˜์—…์—์„œ ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ์Šคํฌ๋ž˜์น˜๋ถ€ํ„ฐ ๊ตฌํ˜„ํ•œ ๊ธฐ๋ณธ์ ์ธ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(RDBMS)์ž…๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด๋ถ€ ๋™์ž‘ ๋ฐฉ์‹์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. SimpleDB๋Š” SQL ์ฟผ๋ฆฌ ํŒŒ์„œ, ํŠธ๋žœ์žญ์…˜, ์ฟผ๋ฆฌ ์ตœ์ ํ™” ๋“ฑ ๊ธฐ๋ณธ์ ์ธ RDBMS ๊ธฐ๋Šฅ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

Description

SimpleDB๋Š” ํŒŒ์ผ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„๋˜์—ˆ์œผ๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐ ์•ก์„ธ์Šค ๋ฐฉ์‹: SimpleDB๋Š” ๋ฐ์ดํ„ฐ ํ–‰์„ ํŠœํ”Œ๋กœ ์ €์žฅํ•˜๋ฉฐ, ๊ฐ ํŠœํ”Œ์€ ์—ด ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๋Š” ํ•„๋“œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฌธ์ž์—ด ๋ฐ ์ •์ˆ˜ ํ•„๋“œ ํƒ€์ž…๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ํŠœํ”Œ์€ ํŽ˜์ด์ง€์— ์ €์žฅ๋˜๊ณ , ํŽ˜์ด์ง€๋Š” ๋””์Šคํฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ํ…Œ์ด๋ธ”์€ DbFile ๊ฐ์ฒด๋กœ ๊ด€๋ฆฌ๋˜๋ฉฐ, ํŽ˜์ด์ง€์™€ ํŠœํ”Œ์„ ๋””์Šคํฌ์— ์ฝ๊ณ  ์“ฐ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์นดํƒˆ๋กœ๊ทธ: SimpleDB๋Š” ์นดํƒˆ๋กœ๊ทธ ๊ฐ์ฒด๋ฅผ ํ†ตํ•ด ์ƒˆ๋กœ์šด ํ…Œ์ด๋ธ”์„ ์ถ”๊ฐ€ํ•˜๊ณ , ์Šคํ‚ค๋งˆ ๋ฐ ๊ธฐ๋ณธ ํ‚ค ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฒ„ํผ ํ’€: ๋ฒ„ํผ ํ’€ ๊ฐ์ฒด๋Š” ๋ชจ๋“  ํŽ˜์ด์ง€ ์•ก์„ธ์Šค์™€ ์ˆ˜์ •์„ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ํŽ˜์ด์ง€๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์บ์‹ฑํ•ฉ๋‹ˆ๋‹ค. ์บ์‹ฑ๋œ ํŽ˜์ด์ง€๋Š” ๋””์Šคํฌ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์†๋„๋ฅผ ๋†’์—ฌ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
  • ์ฟผ๋ฆฌ ์ตœ์ ํ™”: SimpleDB๋Š” SQL ์ฟผ๋ฆฌ๋ฅผ ๋…ผ๋ฆฌ์  ๊ณ„ํš์œผ๋กœ ๋ณ€ํ™˜ํ•œ ํ›„, ๊ด€๊ณ„ ๋Œ€์ˆ˜ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌผ๋ฆฌ์  ๊ณ„ํš์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ฆฌ์  ๊ณ„ํš์€ ์ฟผ๋ฆฌ๋ฅผ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.
  • ํŠธ๋žœ์žญ์…˜: SimpleDB๋Š” ํŠธ๋žœ์žญ์…˜์„ ํ†ตํ•ด ACID ์†์„ฑ(์›์ž์„ฑ, ์ผ๊ด€์„ฑ, ๊ฒฉ๋ฆฌ์„ฑ, ๋‚ด๊ตฌ์„ฑ)์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. SimpleDB๋Š” 2PL(Two-Phase Locking) ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๊ฒฝํ•ฉ์„ ๋ฐฉ์ง€ํ•˜๊ณ , ํŽ˜์ด์ง€ ์ˆ˜์ค€์˜ ์ž ๊ธˆ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ์ฟผ๋ฆฌ ์‹คํ–‰: SimpleDB๋Š” ์ฟผ๋ฆฌ ๊ณ„ํš์„ ์‹คํ–‰ํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ์—ฐ์‚ฐ์ž (์ˆœ์ฐจ์  ํ…Œ์ด๋ธ” ์Šค์บ”, ์‚ฝ์ž…, ์‚ญ์ œ, ์ •๋ ฌ, ํ•„ํ„ฐ, ํ”„๋กœ์ ์…˜, ์ง‘๊ณ„, ์ค‘์ฒฉ ๋ฃจํ”„ ์กฐ์ธ, ํ•ด์‹œ ์กฐ์ธ ๋“ฑ)๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Discussion

  • ์žฅ์ : SimpleDB๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ธฐ๋ณธ์ ์ธ ์ž‘๋™ ๋ฐฉ์‹์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ๋Š” ์œ ์šฉํ•œ ํ•™์Šต ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.
  • ๋‹จ์ : SimpleDB๋Š” ์•„์ง ์ดˆ๊ธฐ ๋‹จ๊ณ„์˜ ํ”„๋กœ์ ํŠธ์ด๋ฉฐ, ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ์—๋Š” ๊ธฐ๋Šฅ ๋ฐ ์„ฑ๋Šฅ ์ธก๋ฉด์—์„œ ์ œํ•œ์ ์ž…๋‹ˆ๋‹ค.
  • ๋Œ€์•ˆ: MySQL, PostgreSQL, SQLite ๋“ฑ ๋‹ค์–‘ํ•œ RDBMS๊ฐ€ ์กด์žฌํ•˜๋ฉฐ, SimpleDB๋ณด๋‹ค ๋” ๋งŽ์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Features

  • SQL ์ฟผ๋ฆฌ ํŒŒ์„œ: SimpleDB๋Š” SQL ์ฟผ๋ฆฌ๋ฅผ ํŒŒ์‹ฑํ•˜๊ณ  ํ•ด์„ํ•ฉ๋‹ˆ๋‹ค.
  • ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ: SimpleDB๋Š” ํŠธ๋žœ์žญ์…˜์„ ์ง€์›ํ•˜๋ฉฐ ACID ์†์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ์ฟผ๋ฆฌ ์ตœ์ ํ™”: SimpleDB๋Š” ์ฟผ๋ฆฌ ๊ณ„ํš์„ ์ตœ์ ํ™”ํ•˜์—ฌ ์‹คํ–‰ ์†๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.
  • ๋ฌผ๋ฆฌ์  ์—ฐ์‚ฐ์ž: SimpleDB๋Š” ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ๋ฌผ๋ฆฌ์  ์—ฐ์‚ฐ์ž๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Usage

Installation

  • SimpleDB๋Š” Github์—์„œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ์‹คํ–‰

  • SimpleDB REPL(Read-Eval-Print Loop)์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Recommendation

SimpleDB๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์˜ ๊ตฌํ˜„ ๋ฐฉ์‹์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋†’์ด๊ธฐ ์›ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์œ ์šฉํ•œ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

External Links

Caution

  • SimpleDB๋Š” ๊ฐœ๋ฐœ ์ค‘์ธ ํ”„๋กœ์ ํŠธ์ด๋ฉฐ, ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ์—๋Š” ์•ˆ์ •์„ฑ ๋ฐ ์„ฑ๋Šฅ์ด ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • SimpleDB๋Š” ํ˜„์žฌ ํ•™์Šต ๋ชฉ์ ์œผ๋กœ๋งŒ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์œผ๋ฉฐ, ์‹ค์ œ ์„œ๋น„์Šค ํ™˜๊ฒฝ์— ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•œ ์ถ”๊ฐ€ ๊ฐœ๋ฐœ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์•„ํŒŒ์น˜ ์นดํ”„์นด: ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ํŠœํ† ๋ฆฌ์–ผ

Summary

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

Description

์นดํ”„์นด๋Š” ๋งํฌ๋“œ์ธ์—์„œ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๊ฒŒ์‹œ-๊ตฌ๋… ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์œผ๋ฉฐ, ์˜ค๋Š˜๋‚ ์—๋Š” ํฌ์ถ˜ 100๋Œ€ ๊ธฐ์—…์˜ 80% ์ด์ƒ์ด ์‚ฌ์šฉํ•˜๋Š” ์˜คํ”ˆ ์†Œ์Šค ๋ถ„์‚ฐ ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ์นดํ”„์นด๋Š” ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ๋ถ„์„, ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆฌ๋ฐ, ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋“ฑ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.

Discussion

  1. ์นดํ”„์นด์˜ ์žฅ์ : ๋†’์€ ์ฒ˜๋ฆฌ๋Ÿ‰, ์žฅ์•  ํ—ˆ์šฉ์„ฑ, ๋ณต์›๋ ฅ, ํ™•์žฅ์„ฑ, ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ ์‚ฌ๋ก€, ์˜คํ”ˆ ์†Œ์Šค
  2. ์นดํ”„์นด์˜ ๋‹จ์ : ๋ณต์žกํ•œ ์„ค์ • ๋ฐ ์šด์˜, ๋†’์€ ํ•™์Šต ๊ณก์„ 
  3. ์นดํ”„์นด์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€: ์‹ค์‹œ๊ฐ„ ๋ถ„์„, ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆฌ๋ฐ, ๋กœ๊ทธ ์ฒ˜๋ฆฌ, ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ, ๋ฉ”์‹œ์ง€ ํ, ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ํ†ต์‹ , ๋ฐ์ดํ„ฐ ๋ณต์ œ

Features

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

Usage

Installation

์นดํ”„์นด๋Š” Apache Software Foundation์—์„œ ์ œ๊ณตํ•˜๋Š” ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋กœ, ๊ณต์‹ ์›น์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๊ฒŒ์‹œ

๋ฐ์ดํ„ฐ ๊ฒŒ์‹œ์ž๋Š” ์นดํ”„์นด์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜์—ฌ ์ŠคํŠธ๋ฆผ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๊ตฌ๋…

๋ฐ์ดํ„ฐ ๊ตฌ๋…์ž๋Š” ์นดํ”„์นด์—์„œ ์ŠคํŠธ๋ฆผ์„ ๊ตฌ๋…ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜๊ณ  ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Recommendation

์•„ํŒŒ์น˜ ์นดํ”„์นด๋Š” ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ์ŠคํŠธ๋ฆฌ๋ฐ์„ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ๋†’์€ ์ฒ˜๋ฆฌ๋Ÿ‰, ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ, ๋‚ด๊ตฌ์„ฑ์„ ํ•„์š”๋กœ ํ•˜๋Š” ์‹œ์Šคํ…œ์— ์ ํ•ฉํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ ๋ถ„์„, ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆฌ๋ฐ, ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋“ฑ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ํ™œ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

External Links

๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ: ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์œ„ํ•œ ์ „๋žต

์š”์•ฝ

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

์„ค๋ช…

๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ์—ฌ๋Ÿฌ ๊ณ„์ธต์˜ ์บ์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ณ„์ธต์€ ๋‹ค๋ฅธ ์บ์‹ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜๊ณผ ์ง€์† ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ๋น ๋ฅธ ์‘๋‹ต ์‹œ๊ฐ„๊ณผ ๋†’์€ ์ฒ˜๋ฆฌ๋Ÿ‰์„ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋…ผ์˜

  1. ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์˜ ์žฅ์ : ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๊ณ  ์„œ๋ฒ„ ๋ถ€ํ•˜๋ฅผ ์ค„์—ฌ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์˜ ๋‹จ์ : ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ๊ตฌํ˜„ ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ๋ณต์žกํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์บ์‹œ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์˜ ์ ์šฉ: ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ชจ๋“  ๊ณ„์ธต์—์„œ ์ ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํŠนํžˆ ๋Œ€๋Ÿ‰์˜ ์‚ฌ์šฉ์ž ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ

  • ์—ฌ๋Ÿฌ ๊ณ„์ธต์˜ ์บ์‹ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค๋ฅผ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋น ๋ฅธ ์‘๋‹ต ์‹œ๊ฐ„๊ณผ ๋†’์€ ์ฒ˜๋ฆฌ๋Ÿ‰์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์„œ๋ฒ„ ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฒ•

์„ค์น˜

๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ์‚ฌ์šฉํ•˜๋Š” ์บ์‹ฑ ๊ธฐ์ˆ ๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„ํ‚คํ…์ฒ˜์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ตฌํ˜„๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ๊ณ„๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  1. ์ธ๋ฉ”๋ชจ๋ฆฌ ์บ์‹œ ์‹œ์Šคํ…œ์„ ์„ค์น˜ํ•˜๊ณ  ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์บ์‹ฑ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
  3. CDN ์„œ๋น„์Šค๋ฅผ ์„ค์ •ํ•˜๊ณ  ์บ์‹ฑ ๊ทœ์น™์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์บ์‹ฑ ๊ทœ์น™ ์„ค์ •

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

์ถ”์ฒœ

๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ํšจ๊ณผ์ ์ธ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๋Œ€๋Ÿ‰์˜ ์‚ฌ์šฉ์ž ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์„ ๊ตฌํ˜„ํ•  ๋•Œ๋Š” ๊ฐ ๊ณ„์ธต์— ์ ํ•ฉํ•œ ์บ์‹ฑ ๊ทœ์น™์„ ์„ค์ •ํ•˜๊ณ  ์บ์‹œ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์™ธ๋ถ€ ๋งํฌ

์ฃผ์˜

  • ๋‹ค๋‹จ๊ณ„ ์บ์‹ฑ์€ ๊ตฌํ˜„ ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ๋ณต์žกํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์บ์‹œ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์บ์‹œ๋ฅผ ์ž˜๋ชป ๊ตฌ์„ฑํ•˜๋ฉด ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PostgreSQL์˜ ์ฃผ์š” ํ‚ค ๋”œ๋ ˆ๋งˆ: UUID vs. BIGINT

์š”์•ฝ

๋ณธ ๊ธ€์€ PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ฃผ์š” ํ‚ค๋กœ UUID์™€ BIGINT๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ์žฅ๋‹จ์ ์„ ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค. UUID๋Š” ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ, BIGINT๋Š” ์„ฑ๋Šฅ ์ธก๋ฉด์—์„œ ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ €์ž๋Š” ํŠนํžˆ UUID๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์‚ฝ์ž… ์„ฑ๋Šฅ ์ €ํ•˜, ์ €์žฅ ๊ณต๊ฐ„ ๋ฌธ์ œ, ๊ทธ๋ฆฌ๊ณ  ์ธ๋ฑ์Šค ์„ ํƒ์˜ ์–ด๋ ค์›€์„ ์–ธ๊ธ‰ํ•˜๋ฉฐ, ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์œผ๋กœ ์ˆœ์ฐจ์  UUID ์ƒ์„ฑ, BIGINT ์‚ฌ์šฉ, ๊ทธ๋ฆฌ๊ณ  B-ํŠธ๋ฆฌ ์ธ๋ฑ์Šค ํ™œ์šฉ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์„ค๋ช…

PostgreSQL์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ–‰์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ์š” ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์ฃผ์š” ํ‚ค ์œ ํ˜•์€ UUID์™€ BIGINT์ž…๋‹ˆ๋‹ค. UUID๋Š” 128๋น„ํŠธ ๋‚œ์ˆ˜๋กœ, ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— BIGINT๋Š” 64๋น„ํŠธ ์ •์ˆ˜๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์—์„œ ๊ณ ์œ ํ•˜๋„๋ก ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

๋…ผ์˜

  1. UUID์˜ ์žฅ์ :

    • ์ „ ์„ธ๊ณ„์  ๊ณ ์œ ์„ฑ: UUID๋Š” ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    • ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์— ์ ํ•ฉ: UUID๋Š” ์—ฌ๋Ÿฌ ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.
    • ํ…Œ์ด๋ธ” ์กฐ์ธ ์„ฑ๋Šฅ ํ–ฅ์ƒ: UUID๋Š” BIGINT๋ณด๋‹ค ํ…Œ์ด๋ธ” ์กฐ์ธ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. UUID์˜ ๋‹จ์ :

    • ์„ฑ๋Šฅ ์ €ํ•˜: UUID๋Š” BIGINT๋ณด๋‹ค ์ €์žฅ ๊ณต๊ฐ„์„ ๋” ๋งŽ์ด ์ฐจ์ง€ํ•˜๋ฉฐ, ์ธ๋ฑ์‹ฑ ๋ฐ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ธ๋ฑ์‹ฑ ๋ฌธ์ œ: UUID๋Š” ์ˆœ์ฐจ์ ์œผ๋กœ ์ •๋ ฌ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ, B-ํŠธ๋ฆฌ ์ธ๋ฑ์‹ฑ์— ๋ถˆ๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. BIGINT์˜ ์žฅ์ :

    • ์„ฑ๋Šฅ ์šฐ์ˆ˜: BIGINT๋Š” UUID๋ณด๋‹ค ์ €์žฅ ๊ณต๊ฐ„์„ ์ ๊ฒŒ ์ฐจ์ง€ํ•˜๋ฉฐ, ์ธ๋ฑ์‹ฑ ๋ฐ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์ด ์šฐ์ˆ˜ํ•ฉ๋‹ˆ๋‹ค.
    • ์ˆœ์ฐจ์  ์ •๋ ฌ: BIGINT๋Š” ์ˆœ์ฐจ์ ์œผ๋กœ ์ •๋ ฌ๋˜์–ด B-ํŠธ๋ฆฌ ์ธ๋ฑ์‹ฑ์— ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ

  • UUID: ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • BIGINT: 64๋น„ํŠธ ์ •์ˆ˜๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์—์„œ ๊ณ ์œ ํ•˜๋„๋ก ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ

UUID ์‚ฌ์šฉ

CREATE TABLE my_table (
    id UUID PRIMARY KEY,
    name VARCHAR(255)
);

BIGINT ์‚ฌ์šฉ

CREATE TABLE my_table (
    id BIGINT PRIMARY KEY,
    name VARCHAR(255)
);

๊ถŒ์žฅ ์‚ฌํ•ญ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ทœ๋ชจ์™€ ์„ฑ๋Šฅ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ UUID ๋˜๋Š” BIGINT๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค. ์ผ๋ฐ˜์ ์œผ๋กœ, ์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ฒฝ์šฐ BIGINT๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์™ธ๋ถ€ ๋งํฌ

์ฃผ์˜ ์‚ฌํ•ญ

  • UUID๋Š” BIGINT๋ณด๋‹ค ์ €์žฅ ๊ณต๊ฐ„์„ ๋” ๋งŽ์ด ์ฐจ์ง€ํ•˜๋ฏ€๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํฌ๊ธฐ๊ฐ€ ์ปค์ง€๋ฉด ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • BIGINT๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์—์„œ๋งŒ ๊ณ ์œ ํ•œ ์‹๋ณ„์ž๋ฅผ ์ œ๊ณตํ•˜๋ฏ€๋กœ, ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์—์„œ๋Š” UUID๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

Go ์–ธ์–ด์˜ //go:linkname ์‚ฌ์šฉ ์ œํ•œ: ์ด์Šˆ 67401 ๋ถ„์„

Summary

Go ์–ธ์–ด์˜ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜์— ๋Œ€ํ•œ ์˜์กด์„ฑ์„ ์ œํ•œํ•˜๊ธฐ ์œ„ํ•œ ์ด์Šˆ 67401์— ๋Œ€ํ•œ ๋ถ„์„์ž…๋‹ˆ๋‹ค. ์ด ์ด์Šˆ๋Š” Go 1.23 ๋ฆด๋ฆฌ์ฆˆ์—์„œ ํ•ด๊ฒฐ๋˜์—ˆ์œผ๋ฉฐ, //go:linkname ์ง€์‹œ์–ด๋ฅผ ํ†ตํ•ด ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” Go ์ƒํƒœ๊ณ„์˜ ์•ˆ์ •์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์กฐ์น˜์ž…๋‹ˆ๋‹ค.

Description

//go:linkname ์ง€์‹œ์–ด๋Š” Go ์ฝ”๋“œ์—์„œ ํŠน์ • ์‹ฌ๋ณผ์„ ๋‹ค๋ฅธ ์‹ฌ๋ณผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋Š” //go:linkname์„ ํ†ตํ•ด ์™ธ๋ถ€ ํŒจํ‚ค์ง€์—์„œ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์—ˆ๋Š”๋ฐ, ์ด๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ณ€๊ฒฝ ์‹œ ์™ธ๋ถ€ ํŒจํ‚ค์ง€๊ฐ€ ์˜ˆ์ƒ์น˜ ๋ชปํ•˜๊ฒŒ ๋™์ž‘ํ•˜์ง€ ์•Š์„ ์œ„ํ—˜์„ ์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด Go ๊ฐœ๋ฐœ ํŒ€์€ //go:linkname ์‚ฌ์šฉ์„ ์ œํ•œํ•˜๋Š” ์ƒˆ๋กœ์šด ๊ทœ์น™์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. Go 1.23๋ถ€ํ„ฐ๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋ฅผ //go:linkname์œผ๋กœ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

Discussion

  1. ์™ธ๋ถ€ ํŒจํ‚ค์ง€์˜ ์˜ํ–ฅ: //go:linkname ์‚ฌ์šฉ ์ œํ•œ์€ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์˜์กดํ•˜๋Š” ์™ธ๋ถ€ ํŒจํ‚ค์ง€์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์— //go:linkname์„ ํ†ตํ•ด ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ๋˜ ์™ธ๋ถ€ ํŒจํ‚ค์ง€๋Š” Go 1.23 ์ดํ›„ ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ๊ฒช์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์™ธ๋ถ€ ํŒจํ‚ค์ง€ ๊ฐœ๋ฐœ์ž๋“ค์€ ์ด ๋ณ€ํ™”์— ๋Œ€๋น„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  2. ๋Œ€์•ˆ: //go:linkname์„ ๋Œ€์‹  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€์•ˆ์œผ๋กœ๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ณต์‹์ ์ธ API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์™ธ๋ถ€ ํŒจํ‚ค์ง€ ๊ฐœ๋ฐœ์ž๋“ค์€ //go:linkname์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ API๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. ํ–ฅํ›„ ๊ณ„ํš: Go ๊ฐœ๋ฐœ ํŒ€์€ //go:linkname์„ ์™„์ „ํžˆ ์ œ๊ฑฐํ•  ๊ณ„ํš์€ ์—†์ง€๋งŒ, ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์™ธ์—๋„ ์™ธ๋ถ€ ํŒจํ‚ค์ง€์—์„œ //go:linkname์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋„ ์ œํ•œํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

Features

  • //go:linkname ์‚ฌ์šฉ ์ œํ•œ
  • ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜์— ๋Œ€ํ•œ ์™ธ๋ถ€ ํŒจํ‚ค์ง€ ์˜์กด์„ฑ ์ œ๊ฑฐ
  • Go ์ƒํƒœ๊ณ„์˜ ์•ˆ์ •์„ฑ ๋ฐ ์œ ์ง€๋ณด์ˆ˜์„ฑ ํ–ฅ์ƒ

Recommendation

  • Go 1.23 ์ด์ƒ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
  • //go:linkname์„ ์‚ฌ์šฉํ•˜๋Š” ์™ธ๋ถ€ ํŒจํ‚ค์ง€ ๊ฐœ๋ฐœ์ž๋Š” Go 1.23 ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๊ณต์‹์ ์ธ API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

External Links

Caution

  • Go 1.23 ์ด์ „ ๋ฒ„์ „์—์„œ๋Š” //go:linkname ์‚ฌ์šฉ์— ์ œํ•œ์ด ์—†์—ˆ์Šต๋‹ˆ๋‹ค.
  • //go:linkname ์‚ฌ์šฉ ์ œํ•œ์€ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์˜์กดํ•˜๋Š” ์™ธ๋ถ€ ํŒจํ‚ค์ง€์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • //go:linkname์„ ์‚ฌ์šฉํ•˜๋Š” ์™ธ๋ถ€ ํŒจํ‚ค์ง€ ๊ฐœ๋ฐœ์ž๋“ค์€ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ Go 1.23 ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฃผ์˜

  • ์ด ๊ธ€์€ Gemini Flash๋ฅผ ์ด์šฉํ•˜์—ฌ ์ƒ์„ฑํ•œ ๊ฒƒ์œผ๋กœ, ์‚ฌ์‹ค๊ณผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment