Programming/Node.js

Node.js ์ดํ•ดํ•˜๊ธฐ - ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ

osean 2020. 9. 27. 15:54

0. Node.js ๋กœ๊ณ 

๋“ค์–ด๊ฐ€๊ธฐ์— ์•ž์„œ

Javascript ๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ด๋‹ค.

Node.js ๊ณต๋ถ€๋ฅผ ์‹œ์ž‘ํ•œ ์ง€ 3์ผ ์ฐจ์ด๋‹ค. ์•ž์„œ ๊ณต๋ถ€ํ•œ ๋น„๋™๊ธฐ ๋…ผ ๋ธ”๋กœํ‚น I/O ๋ชจ๋ธ๊ณผ ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์„ ํ†ตํ•ด Node.js ๊ฐ€ ์–ด๋–ค ์‹œ์Šคํ…œ์„ ๊ฐ€์ง€๊ณ  ์ž‘๋™ํ•˜๋Š”์ง€ ๊ฐ์„ ์žก์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์•„์ง ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์ด ์žˆ๋Š”๋ฐ, ์œ„์˜ ๋‘ ๋ถ€๋ถ„์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ Javascript ๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ๋ผ๋Š” ๋ง์ด ๊ต‰์žฅํžˆ ๋งŽ์ด ๋‚˜์™”๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ๋Š” ๋ญ๊ณ , ๋” ๊นŠ์ด ๋“ค์–ด๊ฐ€์„œ ์Šค๋ ˆ๋“œ์˜ ์ •์˜๋Š” ๋ฌด์—‡์ผ๊นŒ?

 

์˜ค๋Š˜์€ ๊ทธ ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋ ค๊ณ  ํ•œ๋‹ค.


์Šค๋ ˆ๋“œ?

์š”์ฆ˜ ์ธํ„ฐ๋„ท ๋ฐˆ์œผ๋กœ ๋– ๋„๋Š” ์‚ฌ์ง„ ํ•œ ์žฅ์ด ์žˆ๋‹ค. 

1. ์ธํ„ฐ๋„ท์— ๋– ๋„๋Š” ๋ฐˆ

์œ„์˜ ์‚ฌ์ง„์—์„œ ๋…ธ์˜ˆ๋ผ๋Š” ์˜ˆ๊ฐ€ ์ข€ ๋งž์ง€๋Š” ์•Š๊ฒ ์ง€๋งŒ ์Šค๋ ˆ๋“œ๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํ”„๋กœ์„ธ์Šค๋ผ๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•˜๋‹ค. 

 

ํ”„๋กœ์„ธ์Šค?

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

์Šค๋ ˆ๋“œ?

  • ์ฆ‰, ์Šค๋ ˆ๋“œ๋Š” ์•Œ๋ฐ”์ƒ(ํ”„๋กœ์„ธ์Šค)์ด ๋ช‡ ๊ฐœ์˜ ์†(์Šค๋ ˆ๋“œ)์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€๋ฅผ ๋งํ•œ๋‹ค.
    ํ”„๋กœ์„ธ์Šค๋Š” ์Šค๋ ˆ๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ƒ์„ฑํ•ด ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๋ฉฐ,
    ์ด๋Ÿฌํ•œ ์Šค๋ ˆ๋“œ๋Š” ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค์˜ ์ž์›์„ ๊ณต์œ ํ•œ๋‹ค. 

์—ฌ๊ธฐ์„œ Node.js๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ด๋ฉฐ, ์ด๋Ÿฌํ•œ ์ด์œ  ๋•Œ๋ฌธ์— ์œ„์—์„œ ์•„๋ž˜๋กœ ์ˆœ์„œ๋Œ€๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

์—„๋ฐ€ํžˆ ๋งํ•˜๋ฉด Node.js ๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ๋Š” ์•„๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋“ค์„ ์ƒ์„ฑํ•˜๋Š”๋ฐ, ์šฐ๋ฆฌ๊ฐ€ ์ง์ ‘ ์ปจํŠธ๋กคํ•  ์ˆ˜ ์žˆ๋Š” ์Šค๋ ˆ๋“œ์˜ ๊ฐœ์ˆ˜๊ฐ€ ํ•˜๋‚˜๋ฐ–์— ์—†๊ธฐ ๋•Œ๋ฌธ์— ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ๋ผ๊ณ  ํ‘œํ˜„ํ•œ๋‹ค.(๋ผ๊ณ  ํ•˜๋”๋ผ..)

 

๊ทธ๋ ‡๋‹ค๋ฉด Node.js๋Š” ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ, ๋น„๋™๊ธฐ ๋…ผ ๋ธ”๋กœํ‚น I/O ๋ชจ๋ธ์˜ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๋ฐ ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ด๋ฉด์„œ ์–ด๋–ป๊ฒŒ ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฑธ๊นŒ?

์‰ฝ๊ฒŒ ์ดํ•ดํ•˜์ž๋ฉด Node.js ํ˜ผ์ž์„œ๋งŒ ์ผ์„ ํ•œ๋‹ค๋ฉด ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•œ ์‹œ์ ์—์„œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ผ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†์—ˆ์„ ๊ฒƒ์ด๋‹ค.

ํ•˜์ง€๋งŒ ์•ž์„œ ๊ณต๋ถ€ํ•œ Web API(Ajax, ๋ธŒ๋ผ์šฐ์ € - ๋ฐฑ๊ทธ๋ผ์šด๋“œ์™€ ํƒœ์Šคํฌ ํ)์™€ ํ•จ๊ป˜ ์ผํ•œ๋‹ค๋ฉด ์ด์•ผ๊ธฐ๋Š” ์กฐ๊ธˆ ๋‹ฌ๋ผ์งˆ ๊ฒƒ์ด๋‹ค.

 

์ด๋ ‡๊ฒŒ ๋‹จํŽธ์ ์œผ๋กœ ์Šค๋ ˆ๋“œ์— ์ด์•ผ๊ธฐํ•˜๋ฉด ์Šค๋ ˆ๋“œ๋Š” ๋ฌด์กฐ๊ฑด ๋งŽ์€ ๊ฒŒ ์ข‹์€ ๊ฑฐ ์•„๋‹ˆ์•ผ?๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ธฐ ์‰ฝ๋‹ค.

ํ•˜์ง€๋งŒ ๊ณผ์œ ๋ถˆ๊ธ‰์ด๋ผ๋Š” ๋ง์ฒ˜๋Ÿผ ๋งŽ๋‹ค๊ณ  ๋ฌด์กฐ๊ฑด ์ข‹๊ฑฐ๋‚˜ ์ ๋‹ค๊ณ  ์ข‹์ง€ ์•Š์€ ๊ฒŒ ์•„๋‹ˆ๋‹ค.

์ƒํ™ฉ์— ๋งž๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ๋  ๋ฟ์ด๋‹ค.

 

๊ทธ๋ ‡๋‹ค๋ฉด ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์ผ ๋•Œ์™€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ์ผ ๋•Œ์˜ ์žฅ๋‹จ์ ์„ ๋น„๊ต ๋ถ„์„ํ•ด๋ณด์ž!


์‹ฑ๊ธ€, ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ?
๊ทธ๋ž˜์„œ ์–ด์ฉŒ๊ณ  ์ €์ฉŒ๊ณ ์ธ๋ฐ?

์•ž์˜ ๋‚ด์šฉ์„ ์—ฐ๊ฒฐํ•˜์—ฌ ์Šค๋ ˆ๋“œ๊ฐ€ ํ•œ ๋ช…์˜ ์•Œ๋ฐ”์ƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ž.

์˜ˆ์‹œ 1

๋ผ๋ฉ˜์ง‘์— ํ…Œ์ด๋ธ”์ด ์ด 3 ํ…Œ์ด๋ธ”์ด ์žˆ๊ณ , ์•Œ๋ฐ”์ƒ(์Šค๋ ˆ๋“œ)์ด ํ•œ ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ์ฃผ๋ฌธ์„ ์™„์ „ํžˆ ์ฒ˜๋ฆฌํ•ด์•ผ ๋‹ค์Œ ์†๋‹˜์˜ ์ฃผ๋ฌธ์„ ๋ฐ›๊ณ  ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ด๋Ÿฌํ•œ ์˜ˆ์‹œ๊ฐ€ ๋ฐ”๋กœ ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ, ๋ธ”๋กœํ‚น ๋ชจ๋ธ์ด๋‹ค.

์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ผ๋ฉด ์ฒซ ๋ฒˆ์งธ ์†๋‹˜๋งŒ ์žˆ์„ ๊ฒฝ์šฐ๋Š” ๊ดœ์ฐฎ์€๋ฐ(์ž‘์—…์ด ๋‹จ ํ•˜๋‚˜์ผ ๊ฒฝ์šฐ) ์ฒซ ๋ฒˆ์งธ ์†๋‹˜ ์ดํ›„์— ์†๋‹˜์ด ๊ณ„์† ๋“ค์–ด์˜จ๋‹ค๋ฉด?

ํ™•์‹คํžˆ ๋น„ํšจ์œจ ์ ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋‘ ๋ฒˆ์งธ ์†๋‹˜์€ ์ฒซ ๋ฒˆ์งธ ์†๋‹˜์— ๋Œ€ํ•œ ์ผ์„ ์•Œ๋ฐ”์ƒ์ด ๋ชจ๋‘ ์ฒ˜๋ฆฌํ•  ๋•Œ๊นŒ์ง€ ๋งˆ๋ƒฅ ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋น„ํšจ์œจ์ ์ด๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ์‹œ 2

๊ทธ๋ ‡๋‹ค๋ฉด ์ด๋ฒˆ์—๋Š” ์•Œ๋ฐ”์ƒ์ด ์ฒซ ๋ฒˆ์งธ ์†๋‹˜์˜ ์š”๋ฆฌ๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ฃผ๋ฌธ๋งŒ ์ฃผ๋ฐฉ์œผ๋กœ ๋„˜๊ธด ๋’ค ๋‹ค์Œ ์†๋‹˜์˜ ์ฃผ๋ฌธ์„ ๋ฐ›์œผ๋ฉด ์–ด๋–จ๊นŒ? ๊ทธ๋Ÿฌ๋ฉด ์•ž ์ „์˜ ์ƒํ™ฉ๋ณด๋‹ค ํ™•์‹คํžˆ ํšจ์œจ์ ์ด๋‹ค.
(๋ฌผ๋ก  ์š”๋ฆฌ์˜ ํŠน์„ฑ์— ๋”ฐ๋ผ ๋‚˜์˜ค๋Š” ์ˆœ์„œ๋Š” ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๋‹ค. -> ๋ธ”๋กœํ‚น์ธ์ง€ ๋…ผ๋ธ”๋กœํ‚น์ธ์ง€์— ๋”ฐ๋ผ์„œ)

์ด๋Ÿฌํ•œ ๋ฐฉ์‹์ด Node.js ์—์„œ ์ถ”๊ตฌํ•˜๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ, ๋…ผ ๋ธ”๋กœํ‚น ๋ชจ๋ธ์ด๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹๋„ ๋ฌธ์ œ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ์•Œ๋ฐ”์ƒ์ด ์•„ํŒŒ์„œ ๋ชป ๋‚˜์˜ค๊ฑฐ๋‚˜ ์š”๋ฆฌ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค๋ฉด ๋ง์ด๋‹ค.

์˜ˆ์‹œ 3

์ด๋ฒˆ ์˜ˆ์‹œ์—์„œ ์•Œ๋ฐ”์ƒ์˜ ์ˆ˜๋ฅผ ํ…Œ์ด๋ธ” ๊ฐœ์ˆ˜๋งŒํผ ๋Š˜๋ฆฐ๋‹ค๋ฉด ์–ด๋–จ๊นŒ?

๊ธฐ์กด์— ์•Œ๋ฐ”์ƒ ํ•œ ๋ช…์ด ํ•˜๋˜ ์ผ์„ ๋‚˜๋จธ์ง€ ์•Œ๋ฐ”์ƒ๋“ค์—๊ฒŒ ๋ถ„๋ฐฐํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์„œ๋น™์„ ๋” ๋นจ๋ฆฌ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฐฉ์‹์ด ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ, ๋ธ”๋กœํ‚น ๋ชจ๋ธ์ด๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ๋ฐฉ์‹๋„ ๋งˆ๋ƒฅ ์ข‹์ง€๋Š” ๋ชปํ•œ ์ด์œ ๋Š” ๋ผ๋ฉ˜์ง‘์ด ์ž˜๋ผ์„œ ๊ฐ€๊ฒŒ๋ฅผ ํ™•์žฅํ•˜๋ฉด์„œ ํ…Œ์ด๋ธ” ๊ฐœ์ˆ˜๋ฅผ 3๊ฐœ์—์„œ 10๊ฐœ, 100๊ฐœ๋กœ ๋Š˜๋ฆฌ๊ฒŒ ๋œ๋‹ค๋ฉด ์•Œ๋ฐ”์ƒ๋„ ํ…Œ์ด๋ธ” ๊ฐœ์ˆ˜๋งŒํผ ๋Š˜๋ ค์•ผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. 100๊ฐœ์˜ ํ…Œ์ด๋ธ”์— ์†๋‹˜์ด ์žˆ๋‹ค๋ฉด 100๋ช…์˜ ์•Œ๋ฐ”์ƒ๋“ค์ด ์‰ฌ์ง€ ์•Š๊ณ  ์ ์ ˆํžˆ ์ผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ 100๊ฐœ์˜ ํ…Œ์ด๋ธ” ์ค‘ 1๊ฐœ์˜ ํ…Œ์ด๋ธ”์—๋งŒ ์†๋‹˜์ด ์žˆ๋‹ค๋ฉด 1๋ช…์˜ ์•Œ๋ฐ”์ƒ๋งŒ ์ผํ•˜๊ณ  ๋‚˜๋จธ์ง€ 99๋ช…์˜ ์•Œ๋ฐ”์ƒ๋“ค์€ ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š๊ณ  ๋†€๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฌํ•œ ์˜ˆ์‹œ์ฒ˜๋Ÿผ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ, ๋ธ”๋กœํ‚น ๋ชจ๋ธ์˜ ๋‹จ์ ์€ ์ ์€ ์–‘์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ๋ถˆํ•„์š”ํ•œ ์ž์›์„ ๋‚ญ๋น„ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์žˆ๋‹ค.

 

๋งˆ์ง€๋ง‰ ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด

๊ทธ๋ ‡๋‹ค๋ฉด ์—ฌ๋ ค ๋ช…์˜ ์ ์›์ด ๋…ผ ๋ธ”๋กœํ‚น์œผ๋กœ ์ผํ•˜๋ฉด ํšจ์œจ์ ์ด์ง€ ์•Š์„๊นŒ?

ํ•˜๋Š” ์˜๋ฌธ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ ๋ฐฉ์‹์œผ๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋Š” ๊ฒƒ์€ ์ƒ๋‹นํžˆ ์–ด๋ ต๋‹ค๊ณ  ํ•œ๋‹ค.

์ด๋Ÿฌํ•œ ์ด์œ  ๋•Œ๋ฌธ์— Node.js ๋Š” I/O ์š”์ฒญ์— ๋Œ€ํ•ด์„œ ๋ฉ€ํ‹ฐ ์Šค๋ ˆํŠธ ๋ฐฉ์‹์ด ์•„๋‹Œ ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค ๋ฐฉ์‹์„ ๋Œ€์‹  ์‚ฌ์šฉํ•œ๋‹ค.

 

์ฆ‰, ์ด๋ฒคํŠธ ๋ฃจํ”„๊ฐ€ ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์—์„œ ๋™์ž‘ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ด๋ฉฐ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ์Šค๋ ˆ๋“œ ํ’€์„ ๋‘์–ด I/O ์ž‘์—…์— ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋กํ•œ๋‹ค.(๋ณ‘๋ ฌ์  ์ž‘์—… ์ง„ํ–‰)


ํ”„๋กœ์„ธ์Šค, ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ๊ณต๋ถ€๋ฅผ ๋งˆ์น˜๋ฉฐ

ํ™•์‹คํžˆ ๋น„์ „๊ณต์ž๋ผ์„œ ๊ทธ๋Ÿฐ์ง€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ญ”์ง€ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ญ”์ง€ ๋Œ€์ถฉ ๊ฐ์€ ์˜ค๋Š”๋ฐ ๋‚ด๊ฐ€ ์„ค๋ช…ํ•˜๊ธฐ ์–ด๋ ค์šด ๋ถ€๋ถ„์ด ๋งŽ์•˜๋‹ค.

ํŠนํžˆ๋‚˜ ์•ž ์ „์— ๊ณต๋ถ€ํ•œ ๋น„๋™๊ธฐ ๋…ผ ๋ธ”๋กœํ‚น I/O ๋ชจ๋ธ์„ ๊ณต๋ถ€ํ•  ๋•Œ ๋งŽ์ด ๋Š๊ผˆ๋‹ค.

ํ•˜์ง€๋งŒ ํ•ด๋‹น ๋ถ€๋ถ„์„ ๊ณต๋ถ€ํ•˜๋‹ˆ ์„œํˆด๊ธฐ๋Š” ํ•˜๋”๋ผ๊ณ  ๋‚ด๊ฐ€ ์ง์ ‘ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ๋งŒ ๊ฐ™๋‹ค.

๊ทธ๋ž˜๋„ ์•„์ง ๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๋ถ€๋ถ„์ด ๋งŽ๋‹ค. ๋” ๋งŽ์ด ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ณต๋ถ€ํ•ด์„œ ๋‚ด ๊ฒƒ์œผ๋กœ ๋งŒ๋“ค์–ด์•ผ๊ฒ ๋‹ค..!