当前位置:首页 > 科技  > 软件

快的离谱! 新的 JS 运行时 WinterJS 来了!每秒 150k 请求,速度超过 Bun、Node.js

来源: 责编: 时间:2024-03-18 09:40:01 287观看
导读WinterJS 1.0 终于发布了!WinterJS 是一个使用 Rust 编写的、与 WinterCG 兼容的 JavaScript 运行时,使用 SpiderMonkey 引擎执行 JavaScript,并使用 Tokio 处理底层的 HTTP 请求和 JS 事件循环。WinterJS 运行时还可以

WinterJS 1.0 终于发布了!Mb528资讯网——每日最新资讯28at.com

WinterJS 是一个使用 Rust 编写的、与 WinterCG 兼容的 JavaScript 运行时,使用 SpiderMonkey 引擎执行 JavaScript,并使用 Tokio 处理底层的 HTTP 请求和 JS 事件循环。WinterJS 运行时还可以编译为 WebAssembly,并且因此是第一个完全可在 Wasmer Edge 中运行的生产级运行时。Mb528资讯网——每日最新资讯28at.com

以下是我们在 WinterJS 1.0 中取得的成就,距离我们的首次公告仅过了四个月:Mb528资讯网——每日最新资讯28at.com

  • 飞快的速度(比 Bun、WorkerD 和 Node 更快!)
  • WinterJS 现在完全兼容* WinterCG 规范
  • Cloudflare API 兼容性
  • Web 框架支持:Next.js(支持 React 服务器组件!)、Hono、Astro、SvelteKit 等

现在,让我们更详细地了解每个特性!Mb528资讯网——每日最新资讯28at.com

飞快的速度

WinterJS 1.0 在本地执行时能够处理 150,000 个请求/秒(使用 WASIX 编译为 Wasm 后为 20,000 个请求/秒)。Mb528资讯网——每日最新资讯28at.com

截至今日,WinterJS 比 Bun(117,000 请求/秒)、WorkerD(40,000 请求/秒)和 Node(75,000 请求/秒)处理更多的请求/秒(请参见基准测试)。Mb528资讯网——每日最新资讯28at.com

图片图片Mb528资讯网——每日最新资讯28at.com

WinterCG 兼容性

WinterCG 是负责定义一组全局类和函数的机构之一,这些类和函数需要存在才能在一组基础架构上正确运行工作负载。Mb528资讯网——每日最新资讯28at.com

自我们首次公告以来,我们已经添加了对完整一套 API 的支持,包括:Mb528资讯网——每日最新资讯28at.com

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

注意:变换流中的反压和一些(非常见的)加密算法尚未实现。Mb528资讯网——每日最新资讯28at.com

Cloudflare API 兼容性

我们希望确保大多数前端框架在 WinterJS 中都能无缝运行,无需额外处理。因此,我们有两个选择:Mb528资讯网——每日最新资讯28at.com

  • 为每个前端框架创建全新的集成
  • 加入一个现有的提案

经过对 Deno、Cloudflare 和 Fastly 适配器的深入分析,我们意识到最强大的选择是 Cloudflare,因为它已经支持了其他 API 框架的大部分功能,并且可能是最常用的。因此,我们决定采用 Cloudflare API 兼容性。Mb528资讯网——每日最新资讯28at.com

为了支持 Cloudflare Worker 的工作负载,我们着手解决了四个主要方面的问题:Mb528资讯网——每日最新资讯28at.com

  • 通过 import 语法支持 ES 模块
  • 通过 Node.js 兼容性 API 支持
  • 通过node:async_hooks 支持 AsyncLocalStorage
  • 通过 _routes.json 支持调用路由
  • 支持文件系统结构
_worker.jsindex.htmlmystaticimage.jpg
  • 支持 Cloudflare 的 WinterCG 自定义 fetch API
export default { async fetch(request, env, ctx) {  return new Response('Hello World!'); },}

以及 env.ASSETS API,它允许通过 Rust 的超级优化的静态 Web 服务器直接提供静态资产,因此您可以执行:Mb528资讯网——每日最新资讯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);  },}}

[请在此处查看完整的自定义 Cloudflare fetch API:](https://developers.cloudflare.com/workers/runtime-apis/handlers/fetch/)Mb528资讯网——每日最新资讯28at.com

在获得所有这些功能之后,我们几乎可以通过传递 --mode=cloudflare 来运行任何其他网络框架。Mb528资讯网——每日最新资讯28at.com

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

现有 Web 框架的兼容性

由于与 Cloudflare Workers API 的新兼容性,我们现在完全支持以下框架,不仅可以提供框架生成的静态网站,还可以让这些框架进行服务器端渲染(SSR):Mb528资讯网——每日最新资讯28at.com

  • Next.js(应用模板,演示)
  • Next.js React 服务器组件(应用模板,演示)- 注意:服务器端获取缓存尚未实现
  • Hono(应用模板,演示)
  • Astro.build(应用模板,演示)
  • Remix.run(应用模板,演示)
  • Svelte(应用模板,演示)
  • Gatsby(应用模板,演示)
  • Nuxt(应用模板,演示)

支持 React 服务器组件

我们取得的最具挑战性的成就之一是运行具有服务器组件支持的 Next.js 服务器,因此渲染可以完全在服务器端完成。Mb528资讯网——每日最新资讯28at.com

努力使 React 服务器组件完全可用有助于我们发现我们的流实现与规范存在一些细微但重要的差异。我们还意识到我们的获取实现有一些怪癖需要修复,但最终,在经过许多汗水和不眠之夜后,我们完全做到了!

本文链接:http://www.28at.com/showinfo-26-76506-0.html快的离谱! 新的 JS 运行时 WinterJS 来了!每秒 150k 请求,速度超过 Bun、Node.js

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

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

下一篇: 如何使用增强现实优化数据中心和IT规划

标签:
  • 热门焦点
  • 天猫精灵Sound Pro体验:智能音箱没有音质?来听听我的

    这几年除了手机作为智能生活终端最主要的核心之外,第二个可以成为中心点的产品是什么?——是智能音箱。 手机在执行命令的时候有两种操作方式,手和智能语音助手,而智能音箱只
  • 三言两语说透柯里化和反柯里化

    JavaScript中的柯里化(Currying)和反柯里化(Uncurrying)是两种很有用的技术,可以帮助我们写出更加优雅、泛用的函数。本文将首先介绍柯里化和反柯里化的概念、实现原理和应用
  • 中国家电海外掘金正当时|出海专题

    作者|吴南南编辑|胡展嘉运营|陈佳慧出品|零态LT(ID:LingTai_LT)2023年,出海市场战况空前,中国创业者在海外纷纷摩拳擦掌,以期能够把中国的商业模式、创业理念、战略打法输出海外,他们依
  • 腾讯盖楼,字节拆墙

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之“想重温暴刷深渊、30+技能搭配暴搓到爽的游戏体验吗?一起上晶核,即刻暴打!”曾凭借直播腾讯旗下代理格斗游戏《DNF》一
  • 花7万退货退款无门:谁在纵容淘宝珠宝商家造假?

    来源:极点商业作者:杨铭在淘宝购买珠宝玉石后,因为保证金不够赔付,店铺关闭,退货退款难、维权无门的比比皆是。“提供相关产品鉴定证书,支持全国复检,可以30天无理由退换货。&
  • 网红炒股不为了赚钱,那就是耍流氓!

    来源:首席商业评论6月26日高调宣布入市,网络名嘴大v胡锡进居然进军了股市。在一次财经媒体峰会上,几个财经圈媒体大佬就“胡锡进炒股是否知道认真报道”展开讨论。有
  • iQOO 11S或7月上市:搭载“鸡血版”骁龙8Gen2 史上最强5G Soc

    去年底,iQOO推出了“电竞旗舰”iQOO 11系列,作为一款性能强机,iQOO 11不仅全球首发2K 144Hz E6全感屏,搭载了第二代骁龙8平台及144Hz电竞屏,同时在快充
  • iQOO Neo8系列新品发布会

    旗舰双芯 更强更Pro
  • 2022爆款:ROG魔霸6 冰川散热系统持续护航

    喜逢开学季,各大商家开始推出自己的新产品,进行打折促销活动。对于忠实的端游爱好者来说,能够拥有一款梦寐以求的笔记本电脑是一件十分开心的事。但是现在的
Top