WinterJS 1.0 終于發布了!
WinterJS 是一個使用 Rust 編寫的、與 WinterCG 兼容的 JavaScript 運行時,使用 SpiderMonkey 引擎執行 JavaScript,并使用 Tokio 處理底層的 HTTP 請求和 JS 事件循環。WinterJS 運行時還可以編譯為 WebAssembly,并且因此是第一個完全可在 Wasmer Edge 中運行的生產級運行時。
以下是我們在 WinterJS 1.0 中取得的成就,距離我們的首次公告僅過了四個月:
現在,讓我們更詳細地了解每個特性!
WinterJS 1.0 在本地執行時能夠處理 150,000 個請求/秒(使用 WASIX 編譯為 Wasm 后為 20,000 個請求/秒)。
截至今日,WinterJS 比 Bun(117,000 請求/秒)、WorkerD(40,000 請求/秒)和 Node(75,000 請求/秒)處理更多的請求/秒(請參見基準測試)。
圖片
WinterCG 是負責定義一組全局類和函數的機構之一,這些類和函數需要存在才能在一組基礎架構上正確運行工作負載。
自我們首次公告以來,我們已經添加了對完整一套 API 的支持,包括:
注意:變換流中的反壓和一些(非常見的)加密算法尚未實現。
我們希望確保大多數前端框架在 WinterJS 中都能無縫運行,無需額外處理。因此,我們有兩個選擇:
經過對 Deno、Cloudflare 和 Fastly 適配器的深入分析,我們意識到最強大的選擇是 Cloudflare,因為它已經支持了其他 API 框架的大部分功能,并且可能是最常用的。因此,我們決定采用 Cloudflare API 兼容性。
為了支持 Cloudflare Worker 的工作負載,我們著手解決了四個主要方面的問題:
_worker.jsindex.htmlmystaticimage.jpg
export default { async fetch(request, env, ctx) { return new Response('Hello World!'); },}
以及 env.ASSETS API,它允許通過 Rust 的超級優化的靜態 Web 服務器直接提供靜態資產,因此您可以執行:
export default { async fetch(request, env) { const url = new URL(request.url); if (url.pathname.startsWith('/api/')) { // TODO: Add your custom /api/* logic here. return new Response('Ok'); } // Otherwise, serve the static assets. // Without this, the Worker will error and no assets will be served. return env.ASSETS.fetch(request); },}}
[請在此處查看完整的自定義 Cloudflare fetch API:](https://developers.cloudflare.com/workers/runtime-apis/handlers/fetch/)
在獲得所有這些功能之后,我們幾乎可以通過傳遞 --mode=cloudflare 來運行任何其他網絡框架。
winterjs --mode=cloudflare output/static # OR (using WASIX)wasmer run wasmer/winterjs --net --mapdir=output/static:/web -- --mode=cloudflare /web
由于與 Cloudflare Workers API 的新兼容性,我們現在完全支持以下框架,不僅可以提供框架生成的靜態網站,還可以讓這些框架進行服務器端渲染(SSR):
我們取得的最具挑戰性的成就之一是運行具有服務器組件支持的 Next.js 服務器,因此渲染可以完全在服務器端完成。
努力使 React 服務器組件完全可用有助于我們發現我們的流實現與規范存在一些細微但重要的差異。我們還意識到我們的獲取實現有一些怪癖需要修復,但最終,在經過許多汗水和不眠之夜后,我們完全做到了!
本文鏈接:http://www.www897cc.com/showinfo-26-76506-0.html快的離譜! 新的 JS 運行時 WinterJS 來了!每秒 150k 請求,速度超過 Bun、Node.js
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
下一篇: 如何使用增強現實優化數據中心和IT規劃