Node.js, io.js ์ค ์ด๋ค ๊ฑธ ์จ์ผํ ๊น?
๋
ธ๋์ ๊ด์ฌ์ด ์๋ค๋ฉด ์ต๊ทผ ๋ช๋ฌ๊ฐ ๋ฒ์ด์ง ์ผ๋ จ์ ์ฌ๊ฑด๋ค์ ํตํด ๋
ธ๋์ ํต์ฌ ๊ฐ๋ฐ์๋ค์ด ๋
ธ๋๋ฅผ ํฌํฌํ๊ณ ์๋ก์ด ์ปค๋ฎค๋ํฐ๋ฅผ ๊ตฌ์ฑํ๊ณ ์๋ก์ด ํ์์ ๋ฐ์ผ๋ฉฐ ๋ฏธ๋๋ฅผ ์ํด ๋
ธ๋๋ฅผ ํก์ํ๋ ๋ฏํ ๋ชจ์ต์ ๊ธฐ์ตํ ๊ฒ์ด๋ค.
๋
ธ๋ ์ํ๊ณ์ ํฐ ๋น์ค์ ๋ด๋นํ๋ StrongLoop ์์ ์ด๋ค ๋ฒ์ ์ ๋
ธ๋๋ฅผ ์ฌ์ฉํด์ผ ํ ์ง ์ ์ํ ๊ฐ์ด๋๋ฅผ ์์ฝํ๋ค.
ํ์ฌ Node.js ์ io.js ์ ์งํ ์ํ
Node.js ์ ๋๋ฉ์ธ์ ๋ฆฌ๋
์ค ํ์ด๋ฐ์ด์
์ผ๋ก ๊ท์๋์๋ค. ์น์ฌ์ดํธ ์ํน ๊ทธ๋ฃน์ด ์๋ก ์ถ๊ฐ ๋์ด ์๋ก์ด ์ฌ์ดํธ๋ฅผ ์ ๋ณด์ด๊ณ ์๋ค.
ํ
ํฌ๋์ปฌ ์คํฐ์ด๋ง ์ปค๋ฏธํฐ(TSC) ๊ฐ ๊ตฌ์ฑ๋์ด ๋ ํ๋ก์ ํธ๋ฅผ ๊ด๋ฆฌํ๋ค. TSC ๋ ๋งค์ฃผ ์์์ผ ๋ฏธํ
์ ๊ฐ์ง๋ฉฐ ํ์ ๋ด์ฉ์ ๋
นํ๋๊ณ ๊ณต๊ฐ๋๋ค.
์ต๊ทผ StrongLoop ์์ ์ถ์ฒํ๋ ๋
ธ๋์ ์ฃผ์ํด์ผํ๋ ๋ฒ์ ์ด ์๋ค๋ฉด?
ํ์คํ ์์ ์ฑ์ ์ํ ๊ฒฝ์ฐ์๋ v0.10 ์ ๋
ธ๋๋ฅผ ์ฌ์ฉํ๊ธธ ๋ฐ๋๋ค. ์ด ๋ฒ์ ์ 1๋
์ด์ ํจ์น๊ฐ ์ด๋ฃจ์ด์ง๊ณ ์๋ค.
ํ์ฌ ์์ ๋ฒ์ ์ v0.12 ๋ค. ์๋ก์ด ํ๋ก์ ํธ๋ฅผ ์์ํ๋ค๋ฉด ์ด ๋ฒ์ ์ ์ถ์ฒํ๋ค.
๋๋ถ๋ถ์ ์ํ๊ณ๊ฐ 0.12 ๋ฅผ ์ง์ํ๋ค. 0.10 ์์ ์
๊ทธ๋ ์ด๋ ํ๊ธฐ๋ ์ฝ๋ค.
์๋ก ์ถ๊ฐ๋ ๋ง์ ๊ธฐ๋ฅ๋ค์ด ์๋ค. (์๋์ ๋ด์ฉ๋ค์ด ์๊ฐ๋๊ณ ์๋ค.)
ํด๋ฌ์คํฐ ๋ผ์ด๋-๋ก๋น ๋ก๋ ๋ฐธ๋ฐ์ฑ
๋จ์ผ ํ๋ก์ธ์ค์์ ๋ค์ค ์ธ์คํด์ค ์คํ
๋๊ธฐํ๋ ์ฐจ์ผ๋ ํ๋ก์ธ์ค API
๋
ธ๋ ์ธ์คํํฐ๋ฅผ ํตํด ํด๋ฌ์คํฐ๋ง ๋ ์ฑ ๋๋ฒ๊น
๋
ธ๋ 0.12 ์ ๊ฐ์ ๋๋ API
๋
ธ๋ 0.12 ์ ๋ณ๊ฒฝ๋๋ C++ API
๋
ธ๋ 0.12 ์ ์ ํ๋ก๊ทธ๋๋ฐ
Node.js ์ io.js ๋ ๋จธ์ง ๊ณผ์ ์ค์ ์๋ค. ์ฌ ๊ฐ์ ์ฏค ํตํฉ๋ ์์ ๋ฒ์ ์ ๋ฆด๋ฆฌ์ฆ ํ ๊ณํ์ด๋ค.
์ฅ๊ธฐ ์ง์ ๋ฒ์ ์ด ์ค๋น๋๊ณ ์๋ค.(LTS ๋ฒ์ )
io.js ๋ ํ์ ์ ์ธ ๊ฐ์ ์ฌํญ์ ๋ด๊ณ ์๋ค. ์ต์ ๊ธฐ๋ฅ์ ์ ํ๊ณ ์ถ๋ค๋ฉด ์ฌ์ฉํด ๋ณด๊ธธ ๊ถํ๋ค.
์ต์ V8 ์์ง์ ๋์ํ๋ ๋น ๋ฅธ ๋ฆด๋ฆฌ์ฆ
๊ทธ๋งํผ ๋น ๋ฅธ ๋ฒ๊ทธ ํฝ์ค์ ๊ฐ์
์ ์ด๋ 3์ฃผ์ ํ ๋ฒ์ฉ ๋ฆด๋ฆฌ์ฆ ๋๊ณ ์๋ค.
io.js ์ ๋์
๋๊ณ ์๋ ํฅ๋ฏธ๋ก์ด ๊ธฐ์ ๋ค
Multi-Isolate (์น์์ปค ๊ด๋ จ)
์ปดํ์ผ ํ์ง ์์๋ ์ฌ์ฉ ๊ฐ๋ฅํ ์น์์ผ
harmony ํ๋๊ทธ ์์ด ์ฌ์ฉ ๊ฐ๋ฅํ ES6 ์คํ
TypedArray ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ฒํผ
io.js ์ ๋ง์ ๊ธฐ๋ฅ๋ค์ ์์ํ์ ๊ฒฐ์ ์ ๋ฐ๋ผ Node.js ์ ์ ์ฉ๋ ์์ ์ด๋ค.