๊ตฌ๊ธ€, ์• ํ”Œ, ๋ชจ์งˆ๋ผ๋Š” ๋ธŒ๋ผ์šฐ์ € ์„ฑ๋Šฅ ๋ฒค์น˜๋งˆํ‚น ๋„๊ตฌ์ธ JetStream 3๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

์›น ๋ธŒ๋ผ์šฐ์ € ์„ฑ๋Šฅ ๋ฒค์น˜๋งˆํ‚น ํˆดํ‚ท์ธ JetStream 3์ด ๊ณต๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํˆดํ‚ท์€ ์—ฐ์‚ฐ ์ง‘์•ฝ์ ์ธ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ๋•Œ JavaScript ๋ฐ WebAssembly ์—”์ง„์˜ ์„ฑ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๊ด€์ ์ด๊ณ  ๋…๋ฆฝ์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด Google, Apple, Mozilla์˜ ๊ฒฝ์Ÿ ๋ธŒ๋ผ์šฐ์ € ์—”์ง„ ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ณต๋™์œผ๋กœ ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” BSD ๋ผ์ด์„ ์Šค ํ•˜์— ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

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

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

WebAssembly(WASM) ํ…Œ์ŠคํŠธ ๊ธฐ๋Šฅ์ด ํฌ๊ฒŒ ํ™•์žฅ๋˜์—ˆ์œผ๋ฉฐ, ์˜ˆ์™ธ ์ฒ˜๋ฆฌ, ๋ฒกํ„ฐ SIMD ๋ช…๋ น์–ด ์‚ฌ์šฉ, ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜ ์–ธ์–ด์—์„œ ํ”„๋กœ์ ํŠธ ์‹คํ–‰์„ ์œ„ํ•œ WasmGC ํ™•์žฅ ๊ธฐ๋Šฅ ๋“ฑ ๊ณ ๊ธ‰ WebAssembly ๊ธฐ๋Šฅ ํ‰๊ฐ€๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. J2CL, Dart2wasm, Kotlin/WASM, Rust ๋ฐ .NET ํˆดํ‚ท์„ ์‚ฌ์šฉํ•˜์—ฌ ๋นŒ๋“œ๋œ WebAssembly ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ Java, Dart, Kotlin, Rust ๋ฐ C# ์ฝ”๋“œ์—์„œ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

WebAssembly ํ…Œ์ŠคํŠธ์— ์‚ฌ์šฉ๋˜๋Š” ์ƒˆ๋กœ์šด ์›Œํฌ๋กœ๋“œ์—๋Š” Argon2 ํ•ด์‹œ ๊ณ„์‚ฐ, ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด SIMD ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋จธ์‹  ๋Ÿฌ๋‹ ๋ชจ๋ธ ์‹คํ–‰, Dart ๋ฐ Kotlin์œผ๋กœ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ, SQLite3 ์‹คํ–‰, WebAssembly๋กœ ์ปดํŒŒ์ผ๋œ .NET ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐ ๋Ÿฐํƒ€์ž„ ์‹คํ–‰ ๋“ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

Babylon.js 3D ์—”์ง„, ed25519 ํƒ€์› ๊ณก์„  ์—ฐ์‚ฐ, MobX ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, prismjs๋ฅผ ์‚ฌ์šฉํ•œ ๊ตฌ๋ฌธ ๊ฐ•์กฐ ํ‘œ์‹œ, ์—ฌ๋Ÿฌ ํ”„๋ก์‹œ ๊ตฌํ˜„, ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ, ํŒŒ์ผ ์‹œ์Šคํ…œ ์ž‘์—…, Three.js 3D ์ž…์ž ๋™์ž‘ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ, TypeScript 5.9 ์ปดํŒŒ์ผ, validator.js๋ฅผ ์‚ฌ์šฉํ•œ ๋ฌธ์ž์—ด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ, React๋ฅผ ์‚ฌ์šฉํ•œ ํŽ˜์ด์ง€ ์ƒ์„ฑ ๋“ฑ 15๊ฐœ์˜ ์ƒˆ๋กœ์šด JavaScript ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ถœ์ฒ˜ : opennet.ru

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