VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

VKontakte ์ƒ์„ฑ์˜ ์—ญ์‚ฌ๋Š” Wikipedia์— ์žˆ์œผ๋ฉฐ Pavel์ด ์ง์ ‘ ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ๋ชจ๋‘๊ฐ€ ๊ทธ๋…€๋ฅผ ์•Œ๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. HighLoad++ Pavel ์‚ฌ์ดํŠธ์˜ ๋‚ด๋ถ€, ์•„ํ‚คํ…์ฒ˜ ๋ฐ ๊ตฌ์กฐ ์ •๋ณด 2010๋…„์— ๋‚˜ํ•œํ…Œ ๋งํ–ˆ์–ด. ๊ทธ ์ดํ›„๋กœ ๋งŽ์€ ์„œ๋ฒ„๊ฐ€ ์œ ์ถœ๋˜์—ˆ์œผ๋ฏ€๋กœ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๋ถ€ํ•˜๊ณ  ๋‚ด๋ถ€๋ฅผ ๊บผ๋‚ด ๋ฌด๊ฒŒ๋ฅผ ์ธก์ •ํ•œ ํ›„ ๊ธฐ์ˆ ์ ์ธ ๊ด€์ ์—์„œ VK ์žฅ์น˜๋ฅผ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์•Œ๋ ‰์„ธ์ด ์•„์ฟจ๋กœ๋น„์น˜ (AterCattus) VKontakte ํŒ€์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค. ์ด ๋ณด๊ณ ์„œ์˜ ๊ธฐ๋ก์€ ํ”Œ๋žซํผ, ์ธํ”„๋ผ, ์„œ๋ฒ„ ๋ฐ ์ด๋“ค ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์— ๋Œ€ํ•ด ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ์— ๋Œ€ํ•œ ์ข…ํ•ฉ์ ์ธ ๋‹ต๋ณ€์ด์ง€๋งŒ ๊ฐœ๋ฐœ์— ๊ด€ํ•œ ๋‚ด์šฉ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์ฒ ์— ๋Œ€ํ•ด์„œ. ๋ณ„๋„๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ VK๊ฐ€ ๋ณด์œ ํ•œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ๋กœ๊ทธ ์ˆ˜์ง‘ ๋ฐ ์ „์ฒด ํ”„๋กœ์ ํŠธ ๋ชจ๋‹ˆํ„ฐ๋ง์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ปท ์•„๋ž˜์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ.



XNUMX๋…„ ๋„˜๊ฒŒ ๋ฐฑ์—”๋“œ์™€ ๊ด€๋ จ๋œ ์˜จ๊ฐ– ์—…๋ฌด๋ฅผ ๋งก์•„์™”์Šต๋‹ˆ๋‹ค.

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

์ด ๊ธฐ๊ฐ„ ๋™์•ˆ ๋‚˜๋Š” ์‚ฌ์ดํŠธ์˜ ๋งŽ์€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์†์— ๋„ฃ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ๊ฒฝํ—˜์„ ๊ณต์œ ํ•˜๊ณ  ์‹ถ๋‹ค.

์ผ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜

ํ‰์†Œ์™€ ๊ฐ™์ด ๋ชจ๋“  ๊ฒƒ์€ ์š”์ฒญ์„ ์ˆ˜๋ฝํ•˜๋Š” ์„œ๋ฒ„ ๋˜๋Š” ์„œ๋ฒ„ ๊ทธ๋ฃน์—์„œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

ํ”„๋ก ํŠธ ์„œ๋ฒ„

์ „๋ฉด ์„œ๋ฒ„๋Š” HTTPS, RTMP ๋ฐ WSS๋ฅผ ํ†ตํ•ด ์š”์ฒญ์„ ์ˆ˜๋ฝํ•ฉ๋‹ˆ๋‹ค.

HTTPS - ์‚ฌ์ดํŠธ์˜ ๊ธฐ๋ณธ ๋ฐ ๋ชจ๋ฐ”์ผ ์›น ๋ฒ„์ „(vk.com ๋ฐ m.vk.com)๊ณผ ๋‹น์‚ฌ API์˜ ๊ธฐํƒ€ ๊ณต์‹ ๋ฐ ๋น„๊ณต์‹ ํด๋ผ์ด์–ธํŠธ(๋ชจ๋ฐ”์ผ ํด๋ผ์ด์–ธํŠธ, ๋ฉ”์‹ ์ €)์— ๋Œ€ํ•œ ์š”์ฒญ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์…‰์…˜์ด ์žˆ์–ด์š” RTMP- ๋ณ„๋„์˜ ํ”„๋ก ํŠธ ์„œ๋ฒ„๋ฅผ ๊ฐ–์ถ˜ ๋ผ์ด๋ธŒ ๋ฐฉ์†ก์„ ์œ„ํ•œ ํŠธ๋ž˜ํ”ฝ ๋ฐ WSS- ์ŠคํŠธ๋ฆฌ๋ฐ API์— ๋Œ€ํ•œ ์—ฐ๊ฒฐ์ž…๋‹ˆ๋‹ค.

์„œ๋ฒ„์˜ HTTPS ๋ฐ WSS์˜ ๊ฒฝ์šฐ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Nginx์—. RTMP ๋ฐฉ์†ก์˜ ๊ฒฝ์šฐ ์ตœ๊ทผ ์ž์ฒด ์†”๋ฃจ์…˜์œผ๋กœ ์ „ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ‚ค๋ธŒ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Š” ๋ณด๊ณ ์„œ์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฒฐํ•จ์„ฑ์„ ์œ„ํ•ด ์ด๋Ÿฌํ•œ ์„œ๋ฒ„๋Š” ๊ณตํ†ต IP ์ฃผ์†Œ๋ฅผ ์•Œ๋ฆฌ๊ณ  ๊ทธ๋ฃน์œผ๋กœ ์ž‘๋™ํ•˜๋ฏ€๋กœ ์„œ๋ฒ„ ์ค‘ ํ•˜๋‚˜์— ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด๋„ ์‚ฌ์šฉ์ž ์š”์ฒญ์ด ์†์‹ค๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. HTTPS ๋ฐ WSS์˜ ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ๋™์ผํ•œ ์„œ๋ฒ„๋Š” CPU ๋ถ€ํ•˜๋ฅผ ์ž์ฒด์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํŠธ๋ž˜ํ”ฝ์„ ์•”ํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค.

WSS ๋ฐ RTMP์— ๋Œ€ํ•ด์„œ๋Š” ๋” ์ด์ƒ ์„ค๋ช…ํ•˜์ง€ ์•Š๊ณ  ์ผ๋ฐ˜์ ์œผ๋กœ ์›น ํ”„๋กœ์ ํŠธ์™€ ๊ด€๋ จ๋œ ํ‘œ์ค€ HTTPS ์š”์ฒญ์— ๋Œ€ํ•ด์„œ๋งŒ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋ฐฑ์—”๋“œ

์ „๋ฉด ๋’ค์—๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐฑ์—”๋“œ ์„œ๋ฒ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋ŸฐํŠธ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ๋ฐ›๋Š” ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ kPHP ์„œ๋ฒ„, HTTPS๊ฐ€ ์ด๋ฏธ ํ•ด๋…๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— HTTP ๋ฐ๋ชฌ์ด ์‹คํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. kPHP๋Š” ๋‹ค์Œ์—์„œ ์‹คํ–‰๋˜๋Š” ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ํ”„๋ฆฌํฌํฌ ๋ชจ๋ธ: ์—ฌ๋Ÿฌ ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค์ธ ๋งˆ์Šคํ„ฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์ฒญ์ทจ ์†Œ์ผ“์„ ์ „๋‹ฌํ•˜์—ฌ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž์˜ ๊ฐ ์š”์ฒญ ์‚ฌ์ด์— ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹ค์‹œ ์‹œ์ž‘๋˜์ง€ ์•Š๊ณ  ๋‹จ์ˆœํžˆ ์ƒํƒœ๋ฅผ ์›๋ž˜์˜ XNUMX ๊ฐ’ ์ƒํƒœ(๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋Š” ๋Œ€์‹  ์š”์ฒญ ํ›„ ์š”์ฒญ)๋กœ ์žฌ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๋ถ€ํ•˜ ๋ถ„๋ฐฐ

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

์ง€ํ‘œ ์ˆ˜์ง‘ ๋ฐ ์žฌ์กฐ์ •

๊ฐ ๊ทธ๋ฃน์— ๋ช‡ ๋Œ€์˜ ์ž๋™์ฐจ๊ฐ€ ํ•„์š”ํ•œ์ง€ ์ดํ•ดํ•˜๋ ค๋ฉด QPS์— ์˜์กดํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๋ฐฑ์—”๋“œ๊ฐ€ ๋‹ค๋ฅด๊ณ  ์š”์ฒญ์ด ๋‹ค๋ฅด๋ฉฐ ๊ฐ ์š”์ฒญ์€ QPS ๊ณ„์‚ฐ์˜ ๋ณต์žก์„ฑ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ์šฐ๋ฆฌ๋Š” ์„œ๋ฒ„ ์ „์ฒด, ์ฆ‰ CPU ๋ฐ ์„ฑ๋Šฅ์— ๋Œ€ํ•œ ๋ถ€ํ•˜ ๊ฐœ๋…์„ ๊ฐ€์ง€๊ณ  ์šด์˜ํ•ฉ๋‹ˆ๋‹ค..

์šฐ๋ฆฌ๋Š” ์ˆ˜์ฒœ ๊ฐœ์˜ ๊ทธ๋Ÿฌํ•œ ์„œ๋ฒ„๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ๋ฌผ๋ฆฌ์  ์„œ๋ฒ„๋Š” kPHP ๊ทธ๋ฃน์„ ์‹คํ–‰ํ•˜์—ฌ ๋ชจ๋“  ์ฝ”์–ด๋ฅผ ์žฌํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค(kPHP๋Š” ๋‹จ์ผ ์Šค๋ ˆ๋“œ์ด๋ฏ€๋กœ).

์ฝ˜ํ…์ธ  ์„œ๋ฒ„

CS ๋˜๋Š” Content Server๋Š” ์Šคํ† ๋ฆฌ์ง€์ž…๋‹ˆ๋‹ค.. CS๋Š” ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ์—…๋กœ๋“œ๋œ ํŒŒ์ผ๊ณผ ๊ธฐ๋ณธ ์›น ํ”„๋ŸฐํŠธ์—”๋“œ๊ฐ€ ํ• ๋‹นํ•˜๋Š” ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ๋™๊ธฐ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ํŒŒ์ผ์„ ์ €์žฅํ•˜๋Š” ์ˆ˜๋งŒ ๊ฐœ์˜ ๋ฌผ๋ฆฌ์  ์„œ๋ฒ„๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ํŒŒ์ผ ์—…๋กœ๋“œ๋ฅผ ์ข‹์•„ํ•˜๋ฉฐ ์šฐ๋ฆฌ๋Š” ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ๊ณต์œ ํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„œ๋ฒ„ ์ค‘ ์ผ๋ถ€๋Š” ํŠน์ˆ˜ pu/pp ์„œ๋ฒ„์— ์˜ํ•ด ํ์‡„๋ฉ๋‹ˆ๋‹ค.

ํ‘ธ/pp

VK์—์„œ ๋„คํŠธ์›Œํฌ ํƒญ์„ ์—ด๋ฉด pu/pp๊ฐ€ ๋ณด์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

pu/pp๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์„œ๋ฒ„๋ฅผ ์ฐจ๋ก€๋กœ ๋‹ซ๋Š” ๊ฒฝ์šฐ ๋‹ซํžŒ ์„œ๋ฒ„์— ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๊ณ  ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ง์ ‘ ๋ฅผ ํ†ตํ•ด http://cs100500.userapi.com/path ๋˜๋Š” ์ค‘๊ฐ„ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด - http://pu.vk.com/c100500/path.

Pu๋Š” ์‚ฌ์ง„ ์—…๋กœ๋“œ์˜ ์—ญ์‚ฌ์  ์ด๋ฆ„์ด๊ณ  pp๋Š” ์‚ฌ์ง„ ํ”„๋ก์‹œ์ž…๋‹ˆ๋‹ค.. ์ฆ‰, ํ•œ ์„œ๋ฒ„๋Š” ์‚ฌ์ง„ ์—…๋กœ๋“œ์šฉ์ด๊ณ  ๋‹ค๋ฅธ ์„œ๋ฒ„๋Š” ์—…๋กœ๋“œ์šฉ์ž…๋‹ˆ๋‹ค. ์ด์ œ ์‚ฌ์ง„์ด ๋กœ๋“œ๋  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด๋ฆ„๋„ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

์ด๋“ค ์„œ๋ฒ„ HTTPS ์„ธ์…˜ ์ข…๋ฃŒ์Šคํ† ๋ฆฌ์ง€์—์„œ ํ”„๋กœ์„ธ์„œ ๋กœ๋“œ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์‚ฌ์šฉ์ž ํŒŒ์ผ์€ ์ด๋Ÿฌํ•œ ์„œ๋ฒ„์—์„œ ์ฒ˜๋ฆฌ๋˜๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ์‹œ์Šคํ…œ์— ์ €์žฅ๋œ ์ •๋ณด๋Š” ๋œ ์ค‘์š”ํ• ์ˆ˜๋ก ์ข‹์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด HTTPS ์•”ํ˜ธํ™” ํ‚ค์ž…๋‹ˆ๋‹ค.

ํ•ด๋‹น ๋จธ์‹ ์€ ๋‹ค๋ฅธ ๋จธ์‹ ์— ์˜ํ•ด ๋‹ซํ˜€ ์žˆ์œผ๋ฏ€๋กœ ํ•ด๋‹น ๋จธ์‹ ์— "ํ™”์ดํŠธ" ์™ธ๋ถ€ IP๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์„ ์—ฌ์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. "ํšŒ์ƒ‰"์„ ์ค˜. ์ด๋Ÿฐ ๋ฐฉ์‹์œผ๋กœ ์šฐ๋ฆฌ๋Š” IP ํ’€์„ ์ ˆ์•ฝํ•˜๊ณ  ์™ธ๋ถ€ ์•ก์„ธ์Šค๋กœ๋ถ€ํ„ฐ ์‹œ์Šคํ…œ์„ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ๋“ค์–ด๊ฐˆ IP๊ฐ€ ์ „ํ˜€ ์—†์Šต๋‹ˆ๋‹ค.

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

๋…ผ๋ž€์˜ ์—ฌ์ง€๊ฐ€ ์žˆ๋Š” ์ ์€ ์ด ๊ฒฝ์šฐ์ด๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ๋” ์ ์€ ์ˆ˜์˜ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.. ๋™์ผํ•œ ํ˜ธ์ŠคํŠธ(pu.vk.com ๋˜๋Š” pp.vk.com)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์— ๋™์ผํ•œ IP๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ํด๋ผ์ด์–ธํŠธ ๋ธŒ๋ผ์šฐ์ €๋Š” ํ•˜๋‚˜์˜ ํ˜ธ์ŠคํŠธ์— ๋Œ€ํ•œ ๋™์‹œ ์š”์ฒญ ์ˆ˜์— ์ œํ•œ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ HTTP/2๊ฐ€ ๋„๋ฆฌ ๋ณด๊ธ‰๋œ ์‹œ๋Œ€์—๋Š” ์ด๊ฒƒ์ด ๋” ์ด์ƒ ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

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

์–ผ๋งˆ ์ „ ์šฐ๋ฆฌ๋Š” ํ–ฅ์ƒ๋œ ๋ฒ„์ „์˜ ํ”„๋ก์‹œ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์ผ๋ฐ˜ ์ œํ’ˆ๊ณผ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ์ง€, ๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์ด ํ•„์š”ํ•œ ์ด์œ ๋ฅผ ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

ํƒœ์–‘

2017๋…„ XNUMX์›”, ์ด์ „์— Sun์„ ์ธ์ˆ˜ํ–ˆ๋˜ Oracle์€ ์ˆ˜๋งŽ์€ Sun ์ง์›์„ ํ•ด๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.. ์ด ์ˆœ๊ฐ„ ํšŒ์‚ฌ๋Š” ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ์‹œ์Šคํ…œ์˜ ์ด๋ฆ„์„ ์„ ํƒํ•  ๋•Œ ๊ด€๋ฆฌ์ž๋Š” ์ด ํšŒ์‚ฌ๋ฅผ ๊ธฐ๋…ํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ•˜๊ณ  ์ƒˆ ์‹œ์Šคํ…œ์˜ ์ด๋ฆ„์„ Sun์œผ๋กœ ์ง€์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ์‚ฌ์ด์—์„œ๋Š” ๋‹จ์ˆœํžˆ ๊ทธ๋…€๋ฅผ "ํƒœ์–‘"์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

pp์—๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฃน๋‹น ํ•˜๋‚˜์˜ IP - ๋น„ํšจ์œจ์ ์ธ ์บ์‹œ. ์—ฌ๋Ÿฌ ๋ฌผ๋ฆฌ์  ์„œ๋ฒ„๊ฐ€ ๊ณตํ†ต IP ์ฃผ์†Œ๋ฅผ ๊ณต์œ ํ•˜๋ฏ€๋กœ ์š”์ฒญ์ด ์–ด๋Š ์„œ๋ฒ„๋กœ ์ „๋‹ฌ๋˜๋Š”์ง€ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์„œ๋กœ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์ผํ•œ ํŒŒ์ผ์„ ์ฐพ์œผ๋Ÿฌ ์˜ค๋ฉด ํ•ด๋‹น ์„œ๋ฒ„์— ์บ์‹œ๊ฐ€ ์žˆ์œผ๋ฉด ํŒŒ์ผ์€ ๊ฐ ์„œ๋ฒ„์˜ ์บ์‹œ์— ๋‚จ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋งค์šฐ ๋น„ํšจ์œจ์ ์ธ ๊ณ„ํš์ด์ง€๋งŒ ์•„๋ฌด๊ฒƒ๋„ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ์ ์œผ๋กœ - ์ฝ˜ํ…์ธ ๋ฅผ ์ƒค๋”ฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค., ์ด ๊ทธ๋ฃน์— ๋Œ€ํ•ด ํŠน์ • ์„œ๋ฒ„๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ณตํ†ต IP๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ช‡ ๊ฐ€์ง€ ๋‚ด๋ถ€์ ์ธ ์ด์œ ๋กœ ์ธํ•ด ์ง€์—ญ์— ์ด๋Ÿฌํ•œ ์„œ๋ฒ„๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.. ๊ทธ๋“ค์€ ์ƒํŠธํŽ˜ํ…Œ๋ฅด๋ถ€๋ฅดํฌ์—๋งŒ ์„œ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

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

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

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

์ตœ๊ทผ 'Clover' ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง„ํ–‰์ž๊ฐ€ ์งˆ๋ฌธํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์˜ต์…˜์„ ์„ ํƒํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋‹ต๋ณ€ํ•˜๋Š” ๋ผ์ด๋ธŒ ๋ฐฉ์†ก์˜ ์˜จ๋ผ์ธ ํ€ด์ฆˆ์ž…๋‹ˆ๋‹ค. ์•ฑ์—๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ฑ„ํŒ…ํ•  ์ˆ˜ ์žˆ๋Š” ์ฑ„ํŒ… ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐฉ์†ก์— ๋™์‹œ์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค 100๋งŒ๋ช… ์ด์ƒ. ๊ทธ๋“ค์€ ๋ชจ๋‘ ๋ชจ๋“  ์ฐธ๊ฐ€์ž์—๊ฒŒ ์ „์†ก๋˜๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์•„๋ฐ”ํƒ€๊ฐ€ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ "ํƒœ์–‘"์—์„œ ํ•˜๋‚˜์˜ ์•„๋ฐ”ํƒ€๋ฅผ ์œ„ํ•ด 100๋งŒ ๋ช…์ด ์˜ค๋ฉด ๋•Œ๋กœ๋Š” ๊ตฌ๋ฆ„ ๋’ค์— ๊ตด๋Ÿฌ๊ฐˆ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋™์ผํ•œ ํŒŒ์ผ์— ๋Œ€ํ•œ ๊ธ‰์ฆํ•˜๋Š” ์š”์ฒญ์„ ๊ฒฌ๋””๊ธฐ ์œ„ํ•ด ํŠน์ • ์œ ํ˜•์˜ ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•ด ํ•ด๋‹น ์ง€์—ญ์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  "ํƒœ์–‘"์— ํŒŒ์ผ์„ ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ์–ด๋ฆฌ์„์€ ๊ณ„ํš์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๋ถ€์—์„œ ํƒœ์–‘

nginx์˜ ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ, RAM ๋˜๋Š” ๋น ๋ฅธ Optane/NVMe ๋””์Šคํฌ์— ์บ์‹œํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ: http://sun4-2.userapi.com/c100500/path โ€” ๋‘ ๋ฒˆ์งธ ์„œ๋ฒ„ ๊ทธ๋ฃน์ธ ๋„ค ๋ฒˆ์งธ ์ง€์—ญ์— ์œ„์น˜ํ•œ "sun"์— ๋Œ€ํ•œ ๋งํฌ์ž…๋‹ˆ๋‹ค. ์„œ๋ฒ„ 100500์— ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์žˆ๋Š” ๊ฒฝ๋กœ ํŒŒ์ผ์„ ๋‹ซ์Šต๋‹ˆ๋‹ค.

์บ์‹œ

์šฐ๋ฆฌ์˜ ์•„ํ‚คํ…์ฒ˜ ์ฒด๊ณ„์— ์บ์‹ฑ ํ™˜๊ฒฝ์ด๋ผ๋Š” ๋…ธ๋“œ๋ฅผ ํ•˜๋‚˜ ๋” ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์•„๋ž˜๋Š” ๋ ˆ์ด์•„์›ƒ ๋‹ค์ด์–ด๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ์ง€์—ญ ์บ์‹œ, ์•ฝ 20 ๊ฐœ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ณณ์—๋Š” ์Šค์Šค๋กœ ํŠธ๋ž˜ํ”ฝ์„ ์บ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์บ์‹œ์™€ "ํƒœ์–‘"์ด ์žˆ๋Š” ์žฅ์†Œ์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์ด๋Š” ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ์ฝ˜ํ…์ธ ์˜ ์บ์‹ฑ์ด๋ฉฐ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋Š” ์—ฌ๊ธฐ์— ์ €์žฅ๋˜์ง€ ์•Š์œผ๋ฉฐ ์Œ์•…, ๋น„๋””์˜ค, ์‚ฌ์ง„๋งŒ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž์˜ ์ง€์—ญ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋‹น์‚ฌ๋Š” ์ง€์—ญ์—์„œ ๋ฐœํ‘œ๋œ BGP ๋„คํŠธ์›Œํฌ ์ ‘๋‘์‚ฌ๋ฅผ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.. ํด๋ฐฑ์˜ ๊ฒฝ์šฐ ์ ‘๋‘์‚ฌ๋กœ IP๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์œผ๋ฉด geoip ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋„ ๊ตฌ๋ฌธ ๋ถ„์„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ IP๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ง€์—ญ์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.. ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ์ž์˜ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ง€์—ญ, ์ฆ‰ ์ง€๋ฆฌ์ ์œผ๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ง€์ ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ?

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

๋™์‹œ์— ์•…๋งˆ(์ง€์—ญ ์„œ๋น„์Šค)๋Š” ๋•Œ๋•Œ๋กœ API์— ์™€์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ•ฉ๋‹ˆ๋‹ค. โ€œ๋‚˜๋Š” ๊ทธ๋Ÿฐ ์บ์‹œ์ž…๋‹ˆ๋‹ค. ์•„์ง ๋‚˜์—๊ฒŒ ์—†๋Š” ๋‚ด ์ง€์—ญ์—์„œ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ํŒŒ์ผ ๋ชฉ๋ก์„ ์•Œ๋ ค์ฃผ์„ธ์š”. โ€ API๋Š” ๋“ฑ๊ธ‰๋ณ„๋กœ ์ •๋ ฌ๋œ ์—ฌ๋Ÿฌ ํŒŒ์ผ์„ ์ „๋‹ฌํ•˜๊ณ , ๋ฐ๋ชฌ์€ ์ด๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ํ•ด๋‹น ์ง€์—ญ์œผ๋กœ ๊ฐ€์ ธ๊ฐ„ ํ›„ ๊ฑฐ๊ธฐ์—์„œ ํŒŒ์ผ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์บ์‹œ์—์„œ pu/pp์™€ Sun์˜ ๊ทผ๋ณธ์ ์ธ ์ฐจ์ด์ ์ž…๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์ด ์บ์‹œ์— ์—†๋”๋ผ๋„ ์ฆ‰์‹œ ํŒŒ์ผ์„ ์ž์ฒด์ ์œผ๋กœ ์ œ๊ณตํ•˜๊ณ  ์บ์‹œ๋Š” ๋จผ์ € ํŒŒ์ผ์„ ์ž์ฒด์ ์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ•œ ๋‹ค์Œ ๋‹ค์‹œ ์ œ๊ณตํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

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

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

์šฐ๋ฆฌ๋Š” ์ผ๋ฐ˜์ ์ธ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

  • ์š”์ฒญ์„ ์ˆ˜๋ฝํ•˜๋Š” ํ”„๋ŸฐํŠธ ์„œ๋ฒ„.
  • ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฑ์—”๋“œ.
  • ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์˜ ํ”„๋ก์‹œ๋กœ ๋‹ซํ˜€ ์žˆ๋Š” ์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค.
  • ์ง€์—ญ ์บ์‹œ.

์ด ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ๋ฌด์—‡์ด ๋น ์กŒ๋‚˜์š”? ๋ฌผ๋ก , ์šฐ๋ฆฌ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ์—”์ง„

์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์•„๋‹ˆ๋ผ ์—”์ง„์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ›์•„ ๋“ค์—ฌ์ง€๋Š” ์˜๋ฏธ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์‹ค์ œ๋กœ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์ด๊ฒƒ์€ ํ•„์š”ํ•œ ์กฐ์น˜์ž…๋‹ˆ๋‹ค.. ์ด๋Š” VK๊ฐ€ ํญ๋ฐœ์ ์œผ๋กœ ์ธ๊ธฐ๋ฅผ ์–ป์—ˆ๋˜ 2008~2009๋…„์— ํ”„๋กœ์ ํŠธ๊ฐ€ ์ „์ ์œผ๋กœ MySQL๊ณผ Memcache์—์„œ ์ž‘๋™ํ–ˆ๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. MySQL์€ ํŒŒ์ผ์„ ์ถฉ๋Œ์‹œํ‚ค๊ณ  ์†์ƒ์‹œํ‚ค๋Š” ๊ฒƒ์„ ์ข‹์•„ํ–ˆ์œผ๋ฉฐ ๊ทธ ํ›„์—๋Š” ๋ณต๊ตฌํ•  ์ˆ˜ ์—†์—ˆ์œผ๋ฉฐ Memcache๋Š” ์ ์ฐจ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜์–ด ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์†”๋ฃจ์…˜์€ ์„ฑ๊ณต์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹œ์—๋Š” ๋‹ค๋ฅธ ํ™•์žฅ ๋ฐฉ๋ฒ•์ด ์กด์žฌํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ์™€ ์ ˆ์‹คํ•œ ํ•„์š”์„ฑ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋„ ๋งŽ์ง€ ์•Š์•˜๊ณ  NoSQL๋„ ์•„์ง ์กด์žฌํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ MySQL, Memcache, PostrgreSQL๋งŒ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ ์ „๋ถ€์˜€์Šต๋‹ˆ๋‹ค.

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

์—”์ง„์˜ ์ข…๋ฅ˜

ํŒ€์€ ๊ฝค ๋งŽ์€ ์—”์ง„์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๊ทธ ์ค‘ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค: ์นœ๊ตฌ, ํžŒํŠธ, ์ด๋ฏธ์ง€, ipdb, ํŽธ์ง€, ๋ชฉ๋ก, ๋กœ๊ทธ, memcached, meowdb, ๋‰ด์Šค, ๋…ธ์ŠคํŠธ๋ผ๋‹ค๋ฌด์Šค, ์‚ฌ์ง„, ์žฌ์ƒ ๋ชฉ๋ก, pmemcached, ์ƒŒ๋“œ๋ฐ•์Šค, ๊ฒ€์ƒ‰, ์ €์žฅ, ์ข‹์•„์š”, ์ž‘์—… ๋“ฑ

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

์—”์ง„์ด ๋”ฐ๋กœ ์žˆ์–ด์š” memcached, ์ผ๋ฐ˜ ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋งŽ์€ ์žฅ์ ์ด ์žˆ๊ณ  ์†๋„๊ฐ€ ๋Š๋ ค์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ClickHouse๋Š” ์•„๋‹ˆ์ง€๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋ณ„๋„๋กœ ๊ตฌ๋งค ๊ฐ€๋Šฅ pmemcached -๊ฐ€์š” ์ง€์†์ ์ธ memcached, ๋˜ํ•œ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ๋•Œ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋˜์ง€ ์•Š๋„๋ก RAM์— ๋งž๋Š” ๊ฒƒ๋ณด๋‹ค ๋””์Šคํฌ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ณ„ ์ž‘์—…์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์—”์ง„(ํ, ๋ชฉ๋ก, ์„ธํŠธ ๋“ฑ ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ)์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ

์ฝ”๋“œ ๊ด€์ ์—์„œ๋Š” ์—”์ง„์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ”„๋กœ์„ธ์Šค, ์—”ํ„ฐํ‹ฐ ๋˜๋Š” ์ธ์Šคํ„ด์Šค๋กœ ์ƒ๊ฐํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ๋Š” ํŠนํžˆ ์—”์ง„ ๊ทธ๋ฃน์ด ์žˆ๋Š” ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๋‹น ํ•˜๋‚˜์˜ ์œ ํ˜•. memcached ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋‹จ์ง€ ์‹œ์Šคํ…œ ๊ทธ๋ฃน์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

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

์ด๊ฒƒ์ด ์ž‘๋™ํ•˜๋ ค๋ฉด ์ฝ”๋“œ์™€ ์—”์ง„ ์‚ฌ์ด์— ์žˆ๋Š” ์—”ํ„ฐํ‹ฐ๋ฅผ ํ•˜๋‚˜ ๋” ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋Œ€๋ฆฌ.

RPC ํ”„๋ก์‹œ

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

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

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

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

ํŠน์ • ๊ตฌํ˜„

๋•Œ๋•Œ๋กœ ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ์ผ์ข…์˜ ๋น„ํ‘œ์ค€ ์†”๋ฃจ์…˜์„ ์—”์ง„์œผ๋กœ ๊ฐ–๊ณ  ์‹ถ์–ดํ•ฉ๋‹ˆ๋‹ค. ๋™์‹œ์—, ์šฐ๋ฆฌ ์—”์ง„์šฉ์œผ๋กœ ํŠน๋ณ„ํžˆ ์ œ์ž‘๋œ ๊ธฐ์„ฑ rpc-proxy๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์ž‘์—…์„ ์œ„ํ•œ ๋ณ„๋„์˜ ํ”„๋ก์‹œ๋ฅผ ๋งŒ๋“ค๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„์ง ์—ฌ๊ธฐ์ €๊ธฐ์— ์žˆ๋Š” MySQL์˜ ๊ฒฝ์šฐ db-proxy๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ClickHouse์˜ ๊ฒฝ์šฐ - ์ƒˆ๋ผ ๊ณ ์–‘์ด ์ง‘.

์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. kPHP, Go, Python ๋“ฑ ์ผ๋ฐ˜์ ์œผ๋กœ RPC ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ํŠน์ • ์„œ๋ฒ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” RPC ํ”„๋ก์‹œ์—์„œ ๋กœ์ปฌ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๊ฐ€ ์žˆ๋Š” ๊ฐ ์„œ๋ฒ„๋Š” ์ž์ฒด ๋กœ์ปฌ ํ”„๋ก์‹œ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์‹œ ํ”„๋ก์‹œ๋Š” ์–ด๋””๋กœ ๊ฐ€์•ผ ํ• ์ง€ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

ํ•œ ์—”์ง„์ด ๋‹ค๋ฅธ ์—”์ง„์œผ๋กœ ์ด๋™ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ด์›ƒ์ด๋ผ ํ• ์ง€๋ผ๋„ ์ด์›ƒ์ด ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ”„๋ก์‹œ๋ฅผ ํ†ต๊ณผํ•ฉ๋‹ˆ๋‹ค. ์—”์ง„์€ ์ž์‹  ์ด์™ธ์˜ ์œ„์น˜๋ฅผ โ€‹โ€‹์•„๋Š” ๋ฐ ์˜์กดํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์šฐ๋ฆฌ์˜ ํ‘œ์ค€ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฌผ๋ก  ์˜ˆ์™ธ๋„ ์žˆ์Šต๋‹ˆ๋‹ค :)

๋ชจ๋“  ์—”์ง„์ด ์ž‘๋™ํ•˜๋Š” TL ๋ฐฉ์‹์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค.

memcache.not_found                                = memcache.Value;
memcache.strvalue	value:string flags:int = memcache.Value;
memcache.addOrIncr key:string flags:int delay:int value:long = memcache.Value;

tasks.task
    fields_mask:#
    flags:int
    tag:%(Vector int)
    data:string
    id:fields_mask.0?long
    retries:fields_mask.1?int
    scheduled_time:fields_mask.2?int
    deadline:fields_mask.3?int
    = tasks.Task;
 
tasks.addTask type_name:string queue_id:%(Vector int) task:%tasks.Task = Long;

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

TCP/UDP๋ฅผ ํ†ตํ•œ TL์„ ํ†ตํ•œ RPCโ€ฆ UDP?

์šฐ๋ฆฌ๋Š” TL ์ฒด๊ณ„ ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ์—”์ง„ ์š”์ฒญ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ RPC ํ”„๋กœํ† ์ฝœ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์€ TCP/UDP ์—ฐ๊ฒฐ์„ ํ†ตํ•ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. TCP๋Š” ์ดํ•ดํ•  ์ˆ˜ ์žˆ์ง€๋งŒ UDP๊ฐ€ ์ž์ฃผ ํ•„์š”ํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

UDP ๋„์›€ ์„œ๋ฒ„ ๊ฐ„์˜ ์—„์ฒญ๋‚œ ์ˆ˜์˜ ์—ฐ๊ฒฐ ๋ฌธ์ œ๋ฅผ ํ”ผํ•˜์‹ญ์‹œ์˜ค. ๊ฐ ์„œ๋ฒ„์— RPC ํ”„๋ก์‹œ๊ฐ€ ์žˆ๊ณ  ์ผ๋ฐ˜์ ์œผ๋กœ ๋ชจ๋“  ์—”์ง„์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ์„œ๋ฒ„๋‹น ์ˆ˜๋งŒ ๊ฐœ์˜ TCP ์—ฐ๊ฒฐ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ€ํ•˜๊ฐ€ ์žˆ์ง€๋งŒ ์“ธ๋ชจ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. UDP์˜ ๊ฒฝ์šฐ์—๋Š” ์ด ๋ฌธ์ œ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ค‘๋ณต TCP ํ•ธ๋“œ์…ฐ์ดํฌ ์—†์Œ. ์ด๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ƒˆ ์—”์ง„์ด๋‚˜ ์ƒˆ ์„œ๋ฒ„๊ฐ€ ์‹œ์ž‘๋˜๋ฉด ํ•œ ๋ฒˆ์— ๋งŽ์€ TCP ์—ฐ๊ฒฐ์ด ์„ค์ •๋ฉ๋‹ˆ๋‹ค. UDP ํŽ˜์ด๋กœ๋“œ์™€ ๊ฐ™์€ ์ž‘๊ณ  ๊ฐ€๋ฒผ์šด ์š”์ฒญ์˜ ๊ฒฝ์šฐ ์ฝ”๋“œ์™€ ์—”์ง„ ๊ฐ„์˜ ๋ชจ๋“  ํ†ต์‹ ์€ ๋‘ ๊ฐœ์˜ UDP ํŒจํ‚ท: ํ•˜๋‚˜๋Š” ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๋‚ ์•„๊ฐ€๊ณ , ๋‘ ๋ฒˆ์งธ๋Š” ๋‹ค๋ฅธ ๋ฐฉํ–ฅ์œผ๋กœ ๋‚ ์•„๊ฐ‘๋‹ˆ๋‹ค. ํ•œ ๋ฒˆ์˜ ์™•๋ณต - ์ฝ”๋“œ๋Š” ํ•ธ๋“œ์…ฐ์ดํฌ ์—†์ด ์—”์ง„์œผ๋กœ๋ถ€ํ„ฐ ์‘๋‹ต์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

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

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

์ง€์†์ ์ธ ๋ฐ์ดํ„ฐ ์ €์žฅ

์—”์ง„์€ binlog๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.. binlog๋Š” ์ƒํƒœ๋‚˜ ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ์ด๋ฒคํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์†”๋ฃจ์…˜์—์„œ๋Š” ๋‹ค๋ฅด๊ฒŒ ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ ๋กœ๊ทธ, WAL, AOF, ๊ทธ๋Ÿฌ๋‚˜ ์›์น™์€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

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

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

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์–ด๋Š ์‹œ์ ์—์„œ ๊ทธ๋Š” ์Šค์Šค๋กœ ์Šค๋ƒ…์ƒท์„ ์ฐ๊ธฐ๋กœ ๊ฒฐ์ •ํ•˜๊ฑฐ๋‚˜ ์‹ ํ˜ธ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„๋Š” ์ƒˆ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ํŒŒ์ผ์˜ ์ „์ฒด ์ƒํƒœ๋ฅผ ๊ธฐ๋กํ•˜๋ฉฐ ํ˜„์žฌ binlog ํฌ๊ธฐ(์˜คํ”„์…‹)๋ฅผ ํŒŒ์ผ ๋์— ์ถ”๊ฐ€ํ•˜๊ณ  ๊ณ„์†ํ•ด์„œ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด binlog๊ฐ€ ์ƒ์„ฑ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์–ด๋Š ์‹œ์ ์—์„œ ์—”์ง„์ด ๋‹ค์‹œ ์‹œ์ž‘๋˜๋ฉด ๋””์Šคํฌ์— binlog์™€ ์Šค๋ƒ…์ƒท์ด ๋ชจ๋‘ ๋‚จ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์—”์ง„์€ ์ „์ฒด ์Šค๋ƒ…์ƒท์„ ์ฝ๊ณ  ํŠน์ • ์ง€์ ์—์„œ ์ƒํƒœ๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์Šค๋ƒ…์ƒท์ด ์ƒ์„ฑ๋œ ์‹œ์ ์˜ ์œ„์น˜์™€ binlog์˜ ํฌ๊ธฐ๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด binlog์˜ ๋์„ ์ฝ๊ณ  ๊ณ„์†ํ•ด์„œ ์ถ”๊ฐ€ ์ด๋ฒคํŠธ๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ„๋‹จํ•œ ๊ณ„ํš์ด๋ฉฐ, ์šฐ๋ฆฌ์˜ ๋ชจ๋“  ์—”์ง„์€ ์ด์— ๋”ฐ๋ผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๋ณต์ œ

๊ฒฐ๊ณผ์ ์œผ๋กœ ์šฐ๋ฆฌ์˜ ๋ฐ์ดํ„ฐ ๋ณต์ œ๋Š” ๋ช…๋ น๋ฌธ ๊ธฐ๋ฐ˜ โ€” ์šฐ๋ฆฌ๋Š” ํŽ˜์ด์ง€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ binlog์— ๊ธฐ๋กํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์š”์ฒญ. ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋˜๋Š” ๊ฒƒ๊ณผ ๋งค์šฐ ์œ ์‚ฌํ•˜๋ฉฐ ์•ฝ๊ฐ„๋งŒ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋™์ผํ•œ ๋ฐฉ์‹์ด ๋ณต์ œ์—๋งŒ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฐฑ์—…์„ ์ƒ์„ฑํ•˜๋ ค๋ฉด. ์šฐ๋ฆฌ๋Š” binlog์— ์“ฐ๋Š” ์“ฐ๊ธฐ ๋งˆ์Šคํ„ฐ์ธ ์—”์ง„์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž๊ฐ€ ์„ค์ •ํ•œ ๋‹ค๋ฅธ ์œ„์น˜์—๋Š” ์ด binlog๊ฐ€ ๋ณต์‚ฌ๋˜๋ฉฐ ๊ทธ๊ฒŒ ์ „๋ถ€์ž…๋‹ˆ๋‹ค. ๋ฐฑ์—…์ด ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋ณต์ œ๋ณธ ์ฝ๊ธฐCPU ์ฝ๊ธฐ ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ์ฝ๊ธฐ ์—”์ง„์ด ์‹œ์ž‘๋˜์–ด binlog์˜ ๋์„ ์ฝ๊ณ  ๋กœ์ปฌ์—์„œ ์ด๋Ÿฌํ•œ ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ์˜ ์ง€์—ฐ์€ ๋งค์šฐ ์ž‘์œผ๋ฉฐ ๋ณต์ œ๋ณธ์ด ๋งˆ์Šคํ„ฐ๋ณด๋‹ค ์–ผ๋งˆ๋‚˜ ์ง€์—ฐ๋˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

RPC ํ”„๋ก์‹œ์˜ ๋ฐ์ดํ„ฐ ์ƒค๋”ฉ

์ƒค๋”ฉ์€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”? ํ”„๋ก์‹œ๋Š” ์–ด๋–ค ํด๋Ÿฌ์Šคํ„ฐ ์ƒค๋“œ๋กœ ๋ณด๋‚ผ์ง€ ์–ด๋–ป๊ฒŒ ์ดํ•ดํ•ฉ๋‹ˆ๊นŒ? ์ฝ”๋“œ์—๋Š” "์ƒค๋“œ 15๊ฐœ๋ฅผ ๋ณด๋‚ด์„ธ์š”!"๋ผ๊ณ  ๋‚˜์™€ ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. - ์•„๋‹ˆ์š”, ์ด๋Š” ํ”„๋ก์‹œ์— ์˜ํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ์‹์€ firstint์ž…๋‹ˆ๋‹ค. โ€” ์š”์ฒญ์˜ ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž์ž…๋‹ˆ๋‹ค.

get(photo100_500) => 100 % N.

์ด๋Š” ๊ฐ„๋‹จํ•œ memcached ํ…์ŠคํŠธ ํ”„๋กœํ† ์ฝœ์˜ ์˜ˆ์ด์ง€๋งŒ ์ฟผ๋ฆฌ๋Š” ๋ณต์žกํ•˜๊ณ  ๊ตฌ์กฐํ™”๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜ˆ์—์„œ๋Š” ์ฟผ๋ฆฌ์˜ ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด๋Š” ๋‹จ์ผ ์—”ํ„ฐํ‹ฐ์˜ ๋ฐ์ดํ„ฐ ์ง€์—ญ์„ฑ์„ ์›ํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. 100์ด ์‚ฌ์šฉ์ž ๋˜๋Š” ๊ทธ๋ฃน ID์ด๊ณ  ๋ณต์žกํ•œ ์ฟผ๋ฆฌ๋ฅผ ์œ„ํ•ด ํ•œ ์—”ํ„ฐํ‹ฐ์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ํ•˜๋‚˜์˜ ์ƒค๋“œ์— ์žˆ๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ์ด ํด๋Ÿฌ์Šคํ„ฐ ์ „์ฒด์— ์–ด๋–ป๊ฒŒ ๋ถ„์‚ฐ๋˜๋Š”์ง€ ์‹ ๊ฒฝ ์“ฐ์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋˜ ๋‹ค๋ฅธ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ „์ฒด ์ƒค๋“œ๋ฅผ ํ•ด์‹ฑ.

hash(photo100_500) => 3539886280 % N

์šฐ๋ฆฌ๋Š” ๋˜ํ•œ ํ•ด์‹œ, ๋ถ„ํ• ์˜ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„ ๋ฐ ์ƒค๋“œ ๋ฒˆํ˜ธ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.

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

์ž„์˜์˜ ์ˆ˜์˜ ์„œ๋ฒ„๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Ketama ๋ง์— ๋Œ€ํ•œ ์ผ๊ด€๋œ ํ•ด์‹ฑ. ๊ทธ๋Ÿฌ๋‚˜ ๋™์‹œ์— ๋ฐ์ดํ„ฐ์˜ ์ง€์—ญ์„ฑ์„ ์™„์ „ํžˆ ์žƒ๊ฒŒ ๋˜๋ฏ€๋กœ ๊ฐ ์กฐ๊ฐ์ด ์ž์ฒด์˜ ์ž‘์€ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•˜๋„๋ก ์š”์ฒญ์„ ํด๋Ÿฌ์Šคํ„ฐ์— ๋ณ‘ํ•ฉํ•œ ๋‹ค์Œ ์‘๋‹ต์„ ํ”„๋ก์‹œ์— ๋ณ‘ํ•ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

๋กœ๊ทธ

์šฐ๋ฆฌ๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋กœ๊ทธ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๋ถ„๋ช…ํ•˜๊ณ  ๊ฐ„๋‹จํ•œ ๊ฒƒ์€ Memcache์— ๋กœ๊ทธ ์“ฐ๊ธฐ.

ring-buffer: prefix.idx = line

ํ‚ค ์ ‘๋‘์–ด(๋กœ๊ทธ ์ด๋ฆ„, ์ค„)๊ฐ€ ์žˆ๊ณ  ์ด ๋กœ๊ทธ์˜ ํฌ๊ธฐ(์ค„ ์ˆ˜)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 0๋ถ€ํ„ฐ ํ–‰ ์ˆ˜์—์„œ 1์„ ๋บ€ ๊ฐ’๊นŒ์ง€ ๋‚œ์ˆ˜๋ฅผ ์ทจํ•ฉ๋‹ˆ๋‹ค. Memcache์˜ ํ‚ค๋Š” ์ด ๋‚œ์ˆ˜์™€ ์—ฐ๊ฒฐ๋œ ์ ‘๋‘์‚ฌ์ž…๋‹ˆ๋‹ค. ๋กœ๊ทธ ๋ผ์ธ๊ณผ ํ˜„์žฌ ์‹œ๊ฐ„์„ ๊ฐ’์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

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

์•ˆ์ •์ ์ธ ๋กœ๊ทธ ์ €์žฅ์„ ์œ„ํ•ด ์—”์ง„์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊ทธ ์—”์ง„. ์ด๊ฒƒ์ด ๋ฐ”๋กœ ์ด๊ฒƒ์ด ์ƒ์„ฑ๋˜์–ด ์ˆ˜๋งŽ์€ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์•„๋Š” ๊ฐ€์žฅ ํฐ ํด๋Ÿฌ์Šคํ„ฐ๋Š” 600TB์˜ ์••์ถ•๋œ ๋กœ๊ทธ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์—”์ง„์€ ๋งค์šฐ ์˜ค๋ž˜๋˜์—ˆ์œผ๋ฉฐ ์ด๋ฏธ 6~7๋…„์ด ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ClickHouse๋ฅผ ์ ๊ทน์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

ClickHouse์—์„œ ๋กœ๊ทธ ์ˆ˜์ง‘

์ด ๋‹ค์ด์–ด๊ทธ๋žจ์€ ์šฐ๋ฆฌ๊ฐ€ ์—”์ง„์— ๋“ค์–ด๊ฐ€๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

RPC๋ฅผ ํ†ตํ•ด RPC ํ”„๋ก์‹œ๋กœ ๋กœ์ปฌ๋กœ ์ด๋™ํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ์žˆ์œผ๋ฉฐ ์—”์ง„์œผ๋กœ ์ด๋™ํ•  ์œ„์น˜๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ClickHouse์— ๋กœ๊ทธ๋ฅผ ์ž‘์„ฑํ•˜๋ ค๋ฉด ์ด ์ฒด๊ณ„์—์„œ ๋‘ ๋ถ€๋ถ„์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ์ผ๋ถ€ ์—”์ง„์„ ClickHouse๋กœ ๊ต์ฒดํ•˜์„ธ์š”.
  • ClickHouse์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋Š” RPC ํ”„๋ก์‹œ๋ฅผ RPC๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ์ผ๋ถ€ ์†”๋ฃจ์…˜์œผ๋กœ ๊ต์ฒดํ•˜์‹ญ์‹œ์˜ค.

์—”์ง„์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ClickHouse๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„ ๋˜๋Š” ์„œ๋ฒ„ ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๊ต์ฒดํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ClickHouse์— ๊ฐ€๊ธฐ ์œ„ํ•ด ์šฐ๋ฆฌ๋Š” ๊ทธ๋ ‡๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋ผ ๊ณ ์–‘์ด์ง‘. KittenHouse์—์„œ ClickHouse๋กœ ์ง์ ‘ ์ด๋™ํ•˜๋ฉด ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์ด ์—†๋”๋ผ๋„ ์—„์ฒญ๋‚œ ์ˆ˜์˜ ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ HTTP ์—ฐ๊ฒฐ์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. ๊ณ„ํš์ด ์ž‘๋™ํ•˜๋ ค๋ฉด ClickHouse๊ฐ€ ์žˆ๋Š” ์„œ๋ฒ„์—์„œ ๋กœ์ปฌ ์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค., ์ด๋Š” ํ•„์š”ํ•œ ์—ฐ๊ฒฐ๋Ÿ‰์„ ๊ฒฌ๋”œ ์ˆ˜ ์žˆ๋„๋ก ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋น„๊ต์  ์•ˆ์ •์ ์œผ๋กœ ์ž์ฒด์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒ„ํผ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

๋•Œ๋•Œ๋กœ ์šฐ๋ฆฌ๋Š” nginx์™€ ๊ฐ™์€ ๋น„ํ‘œ์ค€ ์†”๋ฃจ์…˜์—์„œ RPC ์ฒด๊ณ„๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ KittenHouse๋Š” UDP๋ฅผ ํ†ตํ•ด ๋กœ๊ทธ๋ฅผ ์ˆ˜์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

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

๋ชจ๋‹ˆํ„ฐ๋ง

๋กœ๊ทธ์—๋Š” ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž๊ฐ€ ์„œ๋ฒ„์—์„œ ์ˆ˜์ง‘ํ•œ ๋กœ๊ทธ์™€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ์—์„œ ์ž‘์„ฑํ•œ ๋กœ๊ทธ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๋‘ ๊ฐ€์ง€ ์œ ํ˜•์˜ ์ธก์ •ํ•ญ๋ชฉ์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ๊ณผ ์ œํ’ˆ.

์‹œ์Šคํ…œ ์ธก์ •ํ•ญ๋ชฉ

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

์ œํ’ˆ ์ง€ํ‘œ

ํŽธ์˜์ƒ ๋งŽ์€ ๋‚ด์šฉ์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Counts, UniqueCounts ๊ฐ’์„ ํ†ต๊ณ„์— ๊ธฐ๋กํ•˜์—ฌ ๋” ๋ฉ€๋ฆฌ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋Š” ์ผ๋ จ์˜ ์ผ๋ฐ˜ ํ•จ์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

statlogsCountEvent   ( โ€˜stat_nameโ€™,            $key1, $key2, โ€ฆ)
statlogsUniqueCount ( โ€˜stat_nameโ€™, $uid,    $key1, $key2, โ€ฆ)
statlogsValuetEvent  ( โ€˜stat_nameโ€™, $value, $key1, $key2, โ€ฆ)

$stats = statlogsStatData($params)

๊ทธ๋Ÿฐ ๋‹ค์Œ ์ •๋ ฌ ๋ฐ ๊ทธ๋ฃนํ™” ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๊ทธ๋ž˜ํ”„ ์ž‘์„ฑ, Watchdog ๊ตฌ์„ฑ ๋“ฑ ํ†ต๊ณ„์—์„œ ์›ํ•˜๋Š” ๋ชจ๋“  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์•„์ฃผ ๊ธ€์„ ์“ด๋‹ค ๋งŽ์€ ์ง€ํ‘œ ์ด๋ฒคํŠธ ์ˆ˜๋Š” ํ•˜๋ฃจ์— 600์–ต์—์„œ 1์กฐ ๊ฑด์— ์ด๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ๋“ค์„ ์œ ์ง€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ ์–ด๋„ ๋ช‡ ๋…„์ธก์ •ํ•ญ๋ชฉ์˜ ์ถ”์„ธ๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“  ๊ฒƒ์„ ํ•˜๋‚˜๋กœ ๋ฌถ๋Š” ๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ์•„์ง ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•œ ํฐ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ง€๋‚œ ๋ช‡ ๋…„ ๋™์•ˆ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ–ˆ๋Š”์ง€ ๋ง์”€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ธก์ •ํ•ญ๋ชฉ์„ ์ž‘์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ memcache๋กœํ•ญ๋ชฉ ์ˆ˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด. ๋‹จ๊ธฐ๊ฐ„๋งŒ์— ๊ตญ๋‚ด ์ถœ์‹œ ํ†ต๊ณ„ ๋ฐ๋ชฌ ๋ชจ๋“  ๊ธฐ๋ก์„ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ์•…๋งˆ๋Š” ์ธก์ •ํ•ญ๋ชฉ์„ ์„œ๋ฒ„์˜ ๋‘ ๊ณ„์ธต์œผ๋กœ ๋ณ‘ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋กœ๊ทธ ์ˆ˜์ง‘๊ธฐ, ์ด๋Š” ์—ฌ๋Ÿฌ ๋จธ์‹ ์˜ ํ†ต๊ณ„๋ฅผ ์ง‘๊ณ„ํ•˜์—ฌ ๊ทธ ๋’ค์— ์žˆ๋Š” ๋ ˆ์ด์–ด๊ฐ€ ์ฃฝ์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋กœ๊ทธ ์ˆ˜์ง‘๊ธฐ์— ์ง์ ‘ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

๊ทธ๋Ÿฌ๋‚˜ stas-daemom์„ ์šฐํšŒํ•˜์—ฌ ์ฝ”๋“œ์—์„œ ์ˆ˜์ง‘๊ธฐ๋กœ ์ง์ ‘ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ์ˆ˜์ง‘๊ธฐ์— ๋Œ€ํ•œ ๋กœ๋“œ๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋ฏ€๋กœ ํ™•์žฅ์„ฑ์ด ๋–จ์–ด์ง€๋Š” ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. ์ด ์†”๋ฃจ์…˜์€ ์–ด๋–ค ์ด์œ ๋กœ ์ธํ•ด ๋จธ์‹ ์—์„œ memcache stats-daemon์„ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ๋จธ์‹ ์ด ์ถฉ๋Œํ•˜์—ฌ ์ง์ ‘ ์ง„ํ–‰ํ•œ ๊ฒฝ์šฐ์—๋งŒ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ์œผ๋กœ, ๋กœ๊ทธ ์ˆ˜์ง‘๊ธฐ๋Š” ํ†ต๊ณ„๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณ‘ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์•ผ์˜นDB - ์ด๋Š” ์ธก์ •ํ•ญ๋ชฉ์„ ์ €์žฅํ•  ์ˆ˜๋„ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

๊ทธ๋Ÿฐ ๋‹ค์Œ ์ฝ”๋“œ์—์„œ ์ด์ง„ "SQL์— ๊ฐ€๊นŒ์šด" ์„ ํƒ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์‹คํ—˜

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

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

KittenHouse๋ฅผ ํ†ตํ•ด ๋กœ๊ทธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ์‹์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

์šฐ๋ฆฌ๋Š” ๊ฒฐ์ •ํ–ˆ๋‹ค ๋‹ค์ด์–ด๊ทธ๋žจ์— ๋˜ ๋‹ค๋ฅธ "*House"๋ฅผ ์ถ”๊ฐ€ํ•˜์‹ญ์‹œ์˜ค., ์ด๋Š” ์ฝ”๋“œ๊ฐ€ UDP๋ฅผ ํ†ตํ•ด ๊ธฐ๋กํ•˜๋Š” ํ˜•์‹์œผ๋กœ ์ •ํ™•ํ•˜๊ฒŒ ์ธก์ •ํ•ญ๋ชฉ์„ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด *House๋Š” ์ด๋ฅผ KittenHouse๊ฐ€ ์ดํ•ดํ•˜๋Š” ํ†ต๋‚˜๋ฌด์™€ ๊ฐ™์€ ์‚ฝ์ž…๋ฌผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Š” ์ด๋Ÿฌํ•œ ๋กœ๊ทธ๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ClickHouse์— ์™„๋ฒฝํ•˜๊ฒŒ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

Memcache, stats-daemon ๋ฐ ๋กœ๊ทธ ์ˆ˜์ง‘๊ธฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์„ฑํ‘œ๊ฐ€ ์ด ๊ตฌ์„ฑํ‘œ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

VKontakte์˜ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•œ FAQ

Memcache, stats-daemon ๋ฐ ๋กœ๊ทธ ์ˆ˜์ง‘๊ธฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์„ฑํ‘œ๊ฐ€ ์ด ๊ตฌ์„ฑํ‘œ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

  • ์—ฌ๊ธฐ์—๋Š” StatsHouse์— ๋กœ์ปฌ๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ์˜ ๋””์ŠคํŒจ์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
  • StatsHouse๋Š” ์ด๋ฏธ SQL ์‚ฝ์ž…์œผ๋กœ ๋ณ€ํ™˜๋œ UDP ์ธก์ •ํ•ญ๋ชฉ์„ KittenHouse์— ์ผ๊ด„์ ์œผ๋กœ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
  • KittenHouse๋Š” ์ด๋ฅผ ClickHouse๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
  • ์ฝ๊ณ  ์‹ถ๋‹ค๋ฉด StatsHouse๋ฅผ ์šฐํšŒํ•˜๊ณ  ์ผ๋ฐ˜ SQL์„ ์‚ฌ์šฉํ•˜์—ฌ ClickHouse์—์„œ ์ง์ ‘ ์ฝ์Šต๋‹ˆ๋‹ค.

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

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

๋ฐฐํฌ

๋จผ์ € PHP ๋ฐฐํฌ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค ์ž์‹: ์‚ฌ์šฉ GitLab ะธ TeamCity ๋ฐฐํฌ์šฉ. ๊ฐœ๋ฐœ ๋ธŒ๋žœ์น˜๋Š” ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜๋กœ ๋ณ‘ํ•ฉ๋˜๊ณ , ํ…Œ์ŠคํŠธ์šฉ ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜๋Š” ์Šคํ…Œ์ด์ง•์œผ๋กœ ๋ณ‘ํ•ฉ๋˜๊ณ , ์Šคํ…Œ์ด์ง•์—์„œ ํ”„๋กœ๋•์…˜์œผ๋กœ ๋ณ‘ํ•ฉ๋ฉ๋‹ˆ๋‹ค.

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

์šฐ๋ฆฌ๋Š” ๋˜ํ•œ kPHP๋ฅผ ๋งŽ์ด ๋ฐฐํฌํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์ž์ฒด ๊ฐœ๋ฐœ๋„ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์‹ ์œ„์˜ ๋‹ค์ด์–ด๊ทธ๋žจ์— ๋”ฐ๋ฅด๋ฉด. ์ด ์ดํ›„๋กœ HTTP ์„œ๋ฒ„ ๋ฐ”์ด๋„ˆ๋ฆฌ, ๊ทธ๋Ÿฌ๋ฉด diff๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๋ฐ”์ด๋„ˆ๋ฆฌ์˜ ๋ฌด๊ฒŒ๋Š” ์ˆ˜๋ฐฑ MB์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์—ฌ๊ธฐ์—๋Š” ๋˜ ๋‹ค๋ฅธ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฒ„์ „์€ ๋‹ค์Œ์— ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. binlog ์นดํ”ผํŒจ์ŠคํŠธ. ๋นŒ๋“œํ•  ๋•Œ๋งˆ๋‹ค ์ฆ๊ฐ€ํ•˜๊ณ  ๋กค๋ฐฑ ์ค‘์—๋„ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„์ „ ์„œ๋ฒ„์— ๋ณต์ œ๋จ. ๋กœ์ปฌ copyfast๋Š” ์ƒˆ ๋ฒ„์ „์ด binlog์— ์ž…๋ ฅ๋˜์—ˆ์Œ์„ ํ™•์ธํ•˜๊ณ  ๋™์ผํ•œ ๊ฐ€์‹ญ ๋ณต์ œ๋ฅผ ํ†ตํ•ด ๋งˆ์Šคํ„ฐ ์„œ๋ฒ„๋ฅผ ์ง€์น˜์ง€ ์•Š๊ณ  ์กฐ์‹ฌ์Šค๋Ÿฝ๊ฒŒ ๋„คํŠธ์›Œํฌ ์ „์ฒด์— ๋กœ๋“œ๋ฅผ ๋ถ„์‚ฐ์‹œํ‚ค๋ฉด์„œ ์ตœ์‹  ๋ฒ„์ „์˜ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‚ด์šฉ ์šฐ์•„ํ•œ ์žฌ๊ฐœ ์ƒˆ ๋ฒ„์ „์˜ ๊ฒฝ์šฐ.

๋ณธ์งˆ์ ์œผ๋กœ ๋ฐ”์ด๋„ˆ๋ฆฌ์ธ ์šฐ๋ฆฌ ์—”์ง„์˜ ๊ฒฝ์šฐ ๊ตฌ์„ฑํ‘œ๋Š” ๋งค์šฐ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

  • git ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜;
  • ๋ฐ”์ด๋„ˆ๋ฆฌ ์ž…๋ ฅ ๋Ž;
  • ๋ฒ„์ „์€ binlog copyfast์— ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
  • ์„œ๋ฒ„์— ๋ณต์ œ๋ฉ๋‹ˆ๋‹ค.
  • ์„œ๋ฒ„๋Š” ์ƒˆ๋กœ์šด .dep์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
  • dpkg -i;
  • ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์ •์ƒ์ ์œผ๋กœ ๋‹ค์‹œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

์ฐจ์ด์ ์€ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์•„์นด์ด๋ธŒ์— ํŒจํ‚ค์ง€๋˜์–ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋Ž, ๊ทธ๋ฆฌ๊ณ  ํŽŒํ•‘ํ•  ๋•Œ ๊ทธ๋“ค์€ dpkg -i ์‹œ์Šคํ…œ์— ๋ฐฐ์น˜๋ฉ๋‹ˆ๋‹ค. kPHP๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ๋ฐฐํฌ๋˜๊ณ  ์—”์ง„์€ dpkg๋กœ ๋ฐฐํฌ๋˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๊ทธ๋Ÿฐ ์ผ์ด ์ผ์–ด๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์ง€์ง€ ๋งˆ์„ธ์š”.

์œ ์šฉํ•œ ๋งํฌ :

Alexey Akulovich๋Š” ํ”„๋กœ๊ทธ๋žจ ์œ„์›ํšŒ์˜ ์ผ์›์œผ๋กœ์„œ ๋‹ค์Œ์„ ๋•๋Š” ์‚ฌ๋žŒ๋“ค ์ค‘ ํ•œ ๋ช…์ž…๋‹ˆ๋‹ค. PHP ๋Ÿฌ์‹œ์•„ 17์›” XNUMX์ผ์€ ์ตœ๊ทผ PHP ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ๊ฐ€์žฅ ํฐ ํ–‰์‚ฌ๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๊ฐ€์ง„ ๋ฉ‹์ง„ PC๋ฅผ ๋ณด์„ธ์š”. ์Šคํ”ผ์ปค (๊ทธ ์ค‘ XNUMX๋ช…์€ PHP ์ฝ”์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!) - PHP๋ฅผ ์ž‘์„ฑํ•œ๋‹ค๋ฉด ๋นผ๋†“์„ ์ˆ˜ ์—†๋Š” ๋ถ€๋ถ„์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€