์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

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

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

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

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

Service Grid API๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฐํฌ ์ฒด๊ณ„๋ฅผ ์ง€์ •ํ•˜๊ณ  ๊ทธ์— ๋”ฐ๋ผ ์„œ๋น„์Šค ์ž์ฒด๋ฅผ ๊ตฌ์„ฑ์— ์ง€์ •ํ•˜์—ฌ ์„œ๋น„์Šค๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

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

๋˜ํ•œ Affinity Service์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„ ํ˜ธ๋„๋Š” ํ‚ค์™€ ํŒŒํ‹ฐ์…˜์˜ ๊ด€๊ณ„ ๋ฐ ํ† ํด๋กœ์ง€์˜ ๋…ธ๋“œ์™€ ๋‹น์‚ฌ์ž์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ๊ธฐ๋ณธ ๋…ธ๋“œ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ž์‹ ์˜ ์„œ๋น„์Šค๋ฅผ ํ‚ค ๋ฐ ์„ ํ˜ธ๋„ ํ•จ์ˆ˜ ์บ์‹œ์™€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Affinity ํ•จ์ˆ˜๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ์ž๋™ ์žฌ๋ฐฐํฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์„œ๋น„์Šค๊ฐ€ ํ•ญ์ƒ ์กฐ์ž‘ํ•ด์•ผ ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ฐ€๊นŒ์ด์— ์œ„์น˜ํ•˜๋ฏ€๋กœ ์ •๋ณด ์•ก์„ธ์Šค์— ๋”ฐ๋ฅธ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์€ ์ผ์ข…์˜ ์ฝœ๋กœ์ผ€์ด์…˜ ์ปดํ“จํŒ…(collocated computing)์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด์ œ Service Grid์˜ ์žฅ์ ์„ ์•Œ์•„๋ณด์•˜์œผ๋‹ˆ, ์ด์ œ Service Grid์˜ ๊ฐœ๋ฐœ ์—ญ์‚ฌ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด์ „์— ์žˆ์—ˆ๋˜ ์ผ

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

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋น„์Šค๋ฅผ ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ–ˆ์„ ๋•Œ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚ฌ๋‚˜์š”?

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

์šฐ๋ฆฌ์—๊ฒŒ ์ ํ•ฉํ•˜์ง€ ์•Š์€ ๊ฒƒ

์–ด๋Š ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์ด ์„œ๋น„์Šค ์ž‘์—… ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ๋Š” ๊ฒฐ๋ก ์— ๋„๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์ด์œ ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

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

์ƒˆ๋กœ์šด Service Grid๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ ์šฐ๋ฆฌ๋Š” ๋ฌด์—‡๋ณด๋‹ค๋„ ๋™๊ธฐ์‹ ๋ฐฐํฌ๋ฅผ ๋ณด์žฅํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์‚ฌ์šฉ์ž๊ฐ€ API์—์„œ ์ œ์–ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ž๋งˆ์ž ์ฆ‰์‹œ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ฐœ์‹œ์ž์—๊ฒŒ ๋ฐฐํฌ ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

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

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

๋ฌธ์ œ

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

์ด๋Š” ๋ณ„๋„์˜ ๋ชฉ๋ก์œผ๋กœ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

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

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์ด ์ „๋ถ€๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

๊ฒฐ์ •

์šฐ๋ฆฌ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์‚ฌ์šฉํ•œ ํ”„๋กœ์„ธ์Šค ํ†ต์‹ ์„ ๊ตฌํ˜„ํ•˜๋Š” ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ชฉํ‘œ๋กœ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค. Ignite๋Š” ๋…ธ๋“œ๊ฐ€ ์„œ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๊ตฌ์„ฑ ์š”์†Œ(communication-spi ๋ฐ discovery-spi)๋ฅผ ์ด๋ฏธ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…

Communication-spi๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋…ธ๋“œ๊ฐ€ ์ง์ ‘ ํ†ต์‹ ํ•˜๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ๋ฐ ๋งค์šฐ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. Discovery-spi๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  ๋…ธ๋“œ์— ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‘œ์ค€ ๊ตฌํ˜„์—์„œ๋Š” ๋ง ํ† ํด๋กœ์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ž‘์—…์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. Zookeeper์™€์˜ ํ†ตํ•ฉ๋„ ์žˆ์œผ๋ฉฐ ์ด ๊ฒฝ์šฐ ์Šคํƒ€ ํ† ํด๋กœ์ง€๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ฃผ๋ชฉํ•  ๋งŒํ•œ ๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ์ ์€ discovery-spi๊ฐ€ ๋ฉ”์‹œ์ง€๊ฐ€ ๋ชจ๋“  ๋…ธ๋“œ์— ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋กœ ํ™•์‹คํžˆ ์ „๋‹ฌ๋œ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์žฅํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐฐํฌ ํ”„๋กœํ† ์ฝœ์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ ๋ฐ ๋ฐฐํฌ ์ทจ์†Œ์— ๋Œ€ํ•œ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์š”์ฒญ์€ discovery-spi๋ฅผ ํ†ตํ•ด ์ „์†ก๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค์Œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค ๋ณด์ฆ:

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

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

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

  1. ๊ฐ ๋…ธ๋“œ๋Š” ์ƒˆ๋กœ์šด ๊ฒฐ์ •๋ก ์  ํ• ๋‹น ๊ธฐ๋Šฅ ๋•๋ถ„์— ๋ถ„ํฌ๋ฅผ ๋…๋ฆฝ์ ์œผ๋กœ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
  2. ๋…ธ๋“œ๋Š” ๋ฐฐํฌ ๊ฒฐ๊ณผ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ฝ”๋””๋„ค์ดํ„ฐ์—๊ฒŒ ๋ณด๋ƒ…๋‹ˆ๋‹ค.
  3. ์ฝ”๋””๋„ค์ดํ„ฐ๋Š” ๋ชจ๋“  ๋ฉ”์‹œ์ง€๋ฅผ ์ง‘๊ณ„ํ•˜๊ณ  ์ „์ฒด ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค์˜ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋ฉฐ, ์ด๋Š” discovery-spi๋ฅผ ํ†ตํ•ด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  ๋…ธ๋“œ๋กœ ์ „์†ก๋ฉ๋‹ˆ๋‹ค.
  4. ๊ฒฐ๊ณผ๊ฐ€ ์ˆ˜์‹ ๋˜๋ฉด ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋˜๊ณ  ๊ทธ ํ›„ ์ž‘์—…์ด ๋Œ€๊ธฐ์—ด์—์„œ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ ์ ํ™” - ์žฌ๋ถ€ํŒ…
์ƒˆ๋กœ์šด ์ด๋ฒคํŠธ ์ค‘์‹ฌ ๋””์ž์ธ: org.apache.ignite.internal.processors.service.IgniteServiceProcessor.java

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

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

๋‹ค์Œ์— ์–ด๋–ค ์ผ์ด ์ผ์–ด๋‚  ๊ฒƒ์ž…๋‹ˆ๊นŒ?

์ด์ œ ๊ณ„ํš์— ๋Œ€ํ•ด. Ignite ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ IEP๋ผ๊ณ  ํ•˜๋Š” Ignite ๊ฐœ์„  ๊ณ„ํš์œผ๋กœ ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค. Service Grid ์žฌ์„ค๊ณ„์—๋Š” IEP๋„ ์žˆ์Šต๋‹ˆ๋‹ค. IEP #17 "์„œ๋น„์Šค ๊ทธ๋ฆฌ๋“œ์˜ ์˜ค์ผ ๊ตํ™˜"์ด๋ผ๋Š” ์กฐ๋กฑ ์ œ๋ชฉ์œผ๋กœ. ๊ทธ๋Ÿฐ๋ฐ ์‚ฌ์‹ค ์šฐ๋ฆฌ๋Š” ์—”์ง„์˜ค์ผ์„ ๊ต์ฒดํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์—”์ง„ ์ „์ฒด๋ฅผ ๊ต์ฒดํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” IEP์˜ ์ž‘์—…์„ 2๋‹จ๊ณ„๋กœ ๋‚˜๋ˆ„์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ๋Š” ๋ฐฐํฌ ํ”„๋กœํ† ์ฝœ์„ ์žฌ์ž‘์—…ํ•˜๋Š” ์ฃผ์š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ด๋ฏธ ๋งˆ์Šคํ„ฐ์— ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ฒ„์ „ 2.8์— ๋‚˜ํƒ€๋‚  ์ƒˆ๋กœ์šด Service Grid๋ฅผ ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ๋‹จ๊ณ„์—๋Š” ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • ํ•ซ ์žฌ๋ฐฐํฌ
  • ์„œ๋น„์Šค ๋ฒ„์ „ ๊ด€๋ฆฌ
  • ๋‚ด๊ฒฐํ•จ์„ฑ ํ–ฅ์ƒ
  • ์”ฌ ํด๋ผ์ด์–ธํŠธ
  • ๋‹ค์–‘ํ•œ ์ง€ํ‘œ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ๊ณ„์‚ฐํ•˜๋Š” ๋„๊ตฌ

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

์ถœ์ฒ˜ : habr.com

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