微軟向其它JavaScript引擎開放Node.js
隨著 ChakraCore JavaScript引擎計劃 的發展,微軟正在開發一套可以兼容各種不同虛擬機的Node.js服務器端平臺標準接口。現在,在Linux和MacOS平臺,ChakraCore已經作為Node.js V8引擎的一個替代品了。
上周,微軟發布了一個 Linux版Node-ChakraCore預覽 ——可以將ChakraCore和流行的服務端Node.js連接在一起。微軟還在開發一個實驗性的新特性,在Linux x64和MacOS上運行ChakraCore。ChakraCore是僅支持Windows的Chakra JavaScript引擎的開源核心,這個引擎驅動了微軟的 Edge瀏覽器 和 所有Windows平臺 。
微軟想要打破目前束縛Node.js的枷鎖——Google的V8 JavaScript引擎。微軟想要通過“打造一套標準的Node接口,使Node變得無關虛擬機。”Arunesh Chandra,微軟ChakraCore的高級程序經理在上周的San Francisco Node總結大會上說道,他還指出,“V8引擎給Node帶來的變動很大,經常打破生態平衡”,微軟試圖聯合其它公司,例如IBM,來實現這項愿望。
也有一些將Node向其它虛擬機開放的努力,例如 SpiderNode ,微軟想將他們吸收進來,進行標準化。
ChakraShim是一個驅動ChakraCore的V8 API。它實現了必要的 V8 APIs,通過基礎的JavaScript引擎來支持Node.js。這個項目還在開發中,不是官方對Node.js的支持。
微軟宣布,ChakraCore將支持Linux和MacOS X,開發者可以使用這個引擎開發跨平臺的應用。對于Linux,開發和測試最常用的平臺是Ubuntu 16.04 LTS,但也會支持其它的發行版。
然而,這個引擎現在對非Windows平臺的支持還很有限。Chandra說,“現在還只是實驗性的build,還沒有JIT技術和高性能的垃圾回收線程。”