日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

快的離譜! 新的 JS 運(yùn)行時(shí) WinterJS 來了!每秒 150k 請(qǐng)求,速度超過 Bun、Node.js

來源: 責(zé)編: 時(shí)間:2024-03-18 09:40:01 168觀看
導(dǎo)讀WinterJS 1.0 終于發(fā)布了!WinterJS 是一個(gè)使用 Rust 編寫的、與 WinterCG 兼容的 JavaScript 運(yùn)行時(shí),使用 SpiderMonkey 引擎執(zhí)行 JavaScript,并使用 Tokio 處理底層的 HTTP 請(qǐng)求和 JS 事件循環(huán)。WinterJS 運(yùn)行時(shí)還可以

WinterJS 1.0 終于發(fā)布了!9hP28資訊網(wǎng)——每日最新資訊28at.com

WinterJS 是一個(gè)使用 Rust 編寫的、與 WinterCG 兼容的 JavaScript 運(yùn)行時(shí),使用 SpiderMonkey 引擎執(zhí)行 JavaScript,并使用 Tokio 處理底層的 HTTP 請(qǐng)求和 JS 事件循環(huán)。WinterJS 運(yùn)行時(shí)還可以編譯為 WebAssembly,并且因此是第一個(gè)完全可在 Wasmer Edge 中運(yùn)行的生產(chǎn)級(jí)運(yùn)行時(shí)。9hP28資訊網(wǎng)——每日最新資訊28at.com

以下是我們?cè)?WinterJS 1.0 中取得的成就,距離我們的首次公告僅過了四個(gè)月:9hP28資訊網(wǎng)——每日最新資訊28at.com

  • 飛快的速度(比 Bun、WorkerD 和 Node 更快!)
  • WinterJS 現(xiàn)在完全兼容* WinterCG 規(guī)范
  • Cloudflare API 兼容性
  • Web 框架支持:Next.js(支持 React 服務(wù)器組件!)、Hono、Astro、SvelteKit 等

現(xiàn)在,讓我們更詳細(xì)地了解每個(gè)特性!9hP28資訊網(wǎng)——每日最新資訊28at.com

飛快的速度

WinterJS 1.0 在本地執(zhí)行時(shí)能夠處理 150,000 個(gè)請(qǐng)求/秒(使用 WASIX 編譯為 Wasm 后為 20,000 個(gè)請(qǐng)求/秒)。9hP28資訊網(wǎng)——每日最新資訊28at.com

截至今日,WinterJS 比 Bun(117,000 請(qǐng)求/秒)、WorkerD(40,000 請(qǐng)求/秒)和 Node(75,000 請(qǐng)求/秒)處理更多的請(qǐng)求/秒(請(qǐng)參見基準(zhǔn)測(cè)試)。9hP28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片9hP28資訊網(wǎng)——每日最新資訊28at.com

WinterCG 兼容性

WinterCG 是負(fù)責(zé)定義一組全局類和函數(shù)的機(jī)構(gòu)之一,這些類和函數(shù)需要存在才能在一組基礎(chǔ)架構(gòu)上正確運(yùn)行工作負(fù)載。9hP28資訊網(wǎng)——每日最新資訊28at.com

自我們首次公告以來,我們已經(jīng)添加了對(duì)完整一套 API 的支持,包括:9hP28資訊網(wǎng)——每日最新資訊28at.com

  • Data fetching:fetch、URL、Request、Response
  • Files:Blob、File
  • Streams:ReadableStream、WritableStream、TransformStream*
  • Text Encoders:TextEncoder、TextEncoderStream、atob、btoa
  • Cryptography:crypto*

注意:變換流中的反壓和一些(非常見的)加密算法尚未實(shí)現(xiàn)。9hP28資訊網(wǎng)——每日最新資訊28at.com

Cloudflare API 兼容性

我們希望確保大多數(shù)前端框架在 WinterJS 中都能無縫運(yùn)行,無需額外處理。因此,我們有兩個(gè)選擇:9hP28資訊網(wǎng)——每日最新資訊28at.com

  • 為每個(gè)前端框架創(chuàng)建全新的集成
  • 加入一個(gè)現(xiàn)有的提案

經(jīng)過對(duì) Deno、Cloudflare 和 Fastly 適配器的深入分析,我們意識(shí)到最強(qiáng)大的選擇是 Cloudflare,因?yàn)樗呀?jīng)支持了其他 API 框架的大部分功能,并且可能是最常用的。因此,我們決定采用 Cloudflare API 兼容性。9hP28資訊網(wǎng)——每日最新資訊28at.com

為了支持 Cloudflare Worker 的工作負(fù)載,我們著手解決了四個(gè)主要方面的問題:9hP28資訊網(wǎng)——每日最新資訊28at.com

  • 通過 import 語法支持 ES 模塊
  • 通過 Node.js 兼容性 API 支持
  • 通過node:async_hooks 支持 AsyncLocalStorage
  • 通過 _routes.json 支持調(diào)用路由
  • 支持文件系統(tǒng)結(jié)構(gòu)
_worker.jsindex.htmlmystaticimage.jpg
  • 支持 Cloudflare 的 WinterCG 自定義 fetch API
export default { async fetch(request, env, ctx) {  return new Response('Hello World!'); },}

以及 env.ASSETS API,它允許通過 Rust 的超級(jí)優(yōu)化的靜態(tài) Web 服務(wù)器直接提供靜態(tài)資產(chǎn),因此您可以執(zhí)行:9hP28資訊網(wǎng)——每日最新資訊28at.com

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);  },}}

[請(qǐng)?jiān)诖颂幉榭赐暾淖远x Cloudflare fetch API:](https://developers.cloudflare.com/workers/runtime-apis/handlers/fetch/)9hP28資訊網(wǎng)——每日最新資訊28at.com

在獲得所有這些功能之后,我們幾乎可以通過傳遞 --mode=cloudflare 來運(yùn)行任何其他網(wǎng)絡(luò)框架。9hP28資訊網(wǎng)——每日最新資訊28at.com

winterjs --mode=cloudflare output/static  # OR (using WASIX)wasmer run wasmer/winterjs --net --mapdir=output/static:/web -- --mode=cloudflare /web

現(xiàn)有 Web 框架的兼容性

由于與 Cloudflare Workers API 的新兼容性,我們現(xiàn)在完全支持以下框架,不僅可以提供框架生成的靜態(tài)網(wǎng)站,還可以讓這些框架進(jìn)行服務(wù)器端渲染(SSR):9hP28資訊網(wǎng)——每日最新資訊28at.com

  • Next.js(應(yīng)用模板,演示)
  • Next.js React 服務(wù)器組件(應(yīng)用模板,演示)- 注意:服務(wù)器端獲取緩存尚未實(shí)現(xiàn)
  • Hono(應(yīng)用模板,演示)
  • Astro.build(應(yīng)用模板,演示)
  • Remix.run(應(yīng)用模板,演示)
  • Svelte(應(yīng)用模板,演示)
  • Gatsby(應(yīng)用模板,演示)
  • Nuxt(應(yīng)用模板,演示)

支持 React 服務(wù)器組件

我們?nèi)〉玫淖罹咛魬?zhàn)性的成就之一是運(yùn)行具有服務(wù)器組件支持的 Next.js 服務(wù)器,因此渲染可以完全在服務(wù)器端完成。9hP28資訊網(wǎng)——每日最新資訊28at.com

努力使 React 服務(wù)器組件完全可用有助于我們發(fā)現(xiàn)我們的流實(shí)現(xiàn)與規(guī)范存在一些細(xì)微但重要的差異。我們還意識(shí)到我們的獲取實(shí)現(xiàn)有一些怪癖需要修復(fù),但最終,在經(jīng)過許多汗水和不眠之夜后,我們完全做到了!

本文鏈接:http://www.www897cc.com/showinfo-26-76506-0.html快的離譜! 新的 JS 運(yùn)行時(shí) WinterJS 來了!每秒 150k 請(qǐng)求,速度超過 Bun、Node.js

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: ASP.Net Core讀取配置文件的三種方法

下一篇: 如何使用增強(qiáng)現(xiàn)實(shí)優(yōu)化數(shù)據(jù)中心和IT規(guī)劃

標(biāo)簽:
  • 熱門焦點(diǎn)
Top 主站蜘蛛池模板: 安顺市| 江西省| 芮城县| 民乐县| 澄迈县| 新宾| 庆城县| 陵水| 汕头市| 佛山市| 额尔古纳市| 仁寿县| 海宁市| 阿拉善盟| 日喀则市| 东阿县| 萨嘎县| 德格县| 吴江市| 资兴市| 邯郸县| 将乐县| 简阳市| 壤塘县| 凌云县| 海口市| 田东县| 孟州市| 济宁市| 德州市| 民丰县| 新竹县| 乌苏市| 岚皋县| 宽甸| 四子王旗| 延川县| 玉环县| 柯坪县| 垣曲县| 东阿县|