写点什么

Fastify 3.0 改善了性能、日志、模式以及对 TypeScript 的支持

  • 2020-08-06
  • 本文字数:955 字

    阅读完需:约 3 分钟

Fastify 3.0改善了性能、日志、模式以及对TypeScript的支持

Fastify 是一个开源、低性能开销的 Node.js Web 框架。Fastify v3 引入了在 Fastify 中运行 Express 应用的功能、添加了对日志序列化和模式替换的改善,并且提供了对 TypeScript 定义的更好的支持。


Fastify 依然关注轻量级的性能。按照Fastify最新的性能指标,相对于其他的框架,Fastify 每秒钟能够服务于更多的请求,这些其他的框架包括 Koa、Restify、hapi、Express 和内置的 http.Server。Fastify 3.0 版本比早期的 2.x 版本每秒钟的处理能力翻了一倍。


Fastify v3 改善了其类型系统,以支持通用的约束和默认值,以及更高效的模式类型定义。


fastify-express包提供了 Fastify 中完备的 Express 兼容性支持,以便于从 Express 到 Fastify 的迁移。


校验和序列化在 Fastify 3 得到了显著改善。setSchemaCompilersetSchemaResolver选项替换成了setValidatorCompiler,以支持进一步的工具优化。对preParsing和其他 hook 的变更提升了性能和一致性,并利用了更多 Fastify 的内部 API,如 Fastify requests。类似的,Fastify 日志序列化器现在使用了 Fastify Request 和 Reply 对象,以取代原生的对象。现有的 Fastify 用户应该参考Fastify 3.0迁移指南来获取完整的更新列表。


Fastify 现在包含136个官方插件,涵盖的特性包括 Next.js 服务器渲染、WebSockets、Webpack 等。对于 3.0 发布版本来说,支持所有的插件是重要优先级的任务。正如 Elastic 的软件工程师兼 Fastify 的贡献者Tomas Della Vedova所述:


我对 @fastifyjs v3 发布感到非常开心。你现在可能已经知道,我们有一个很大的插件生态系统。在 v2 版本的时候,我们当时并没有明确的升级计划,所以我们只是发布了 Fastify v2,然后慢慢升级所有的插件。今年,我们开始就预发布了所有的插件,所以用户可以通过安装其应用中每个组件的 @.next 版本来测试 Fastify v3。在发布的时候,我们公开了最终版本的 Fastify v3,我和 @matteocollina 发布了所有的插件,所以新老用户在升级的时候不会遇到任何障碍或难以预料的缺陷。明年会继续改善:所有的这些步骤都将会自动化。


Fastify 是一个开源的软件,可以基于 MIT 许可证协议获取,它是 OpenJS 的一部分。欢迎为 Fastify 做出贡献,需遵循贡献指南代码准则


原文链接:


Fastify 3.0 Improves Performance, Logging, Schema, and TypeScript Support


2020-08-06 16:334888

评论

发布
暂无评论
发现更多内容

应用营销策略知多少?

坚果

产品设计 1月月更

使用 esbuild 来打包一个 React 库

CRMEB

知乎基于Palo的用户画像和实时数仓构建实践

百度开发者中心

大数据

龙蜥的朋友圈又大了!知名数据库产品服务商南大通用加入社区

OpenAnolis小助手

开源 社群

【网络安全】红蓝攻防:shellcode的分析

H

网络安全 WEB安全

优化服务器存储架构——Amazon EBS io2 Block Express正式推出!

亚马逊云科技 (Amazon Web Services)

存储

SphereEx 创始人张亮荣获『2021 年度海纳奖——分布式数据库十佳实践人物』

SphereEx

数据库 开源 ShardingSphere SphereEx 海纳奖

通用数据保护条例的监管下,你的数据湖“断舍离”了吗?

亚马逊云科技 (Amazon Web Services)

存储

如何利用Spot,成本与稳定同时兼得

jinjin

spot 热池 spotmax

iOS开发-数据结构与算法学习之排序篇

iOSer

ios 算法 数据结构与算法 ios开发 iOS 知识体系

青藤:业务迁移到容器云上的6个注意事项

青藤云安全

不听话的 Container

百瓶技术

flutter 布局与组件

VuePress 博客优化之添加数据统计功能

冴羽

JavaScript Vue 前端 博客 vuepress

在Amazon SageMaker中灵活使用多种存储服务

亚马逊云科技 (Amazon Web Services)

存储

教程直播第6期 | OceanBase 如何进行 Benchmark 测试及调优

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 社区版

活动预告 | OpenMLDB Meetup No.1

第四范式开发者社区

人工智能 机器学习 开源

有道围棋 AI:智能匹配儿童棋力的良师益友

有道技术团队

网易有道 围棋

设计是表达的艺术,不是艺术的表达

Yisen玩设计

常用开源监控系统分析推荐(必备知识)|附优质监控书籍资源

云智慧AIOps社区

安全 监控宝 监控工具 开源软件 运维管理

敏捷真的是开发者的绊脚石吗?

LigaAI

敏捷开发

浅谈云上攻防——云服务器攻防矩阵

腾讯安全云鼎实验室

云原生 云上安全攻防

以搭建Vuepress文档为例,展示用VSCode来远程开发

为自己带盐

vscode 1月月更 远程开发

手淘 Android 帧率采集与监控详解

阿里巴巴终端技术

android 性能优化 移动开发 客户端

Tableau Day2: 可视化入门图形制作

贾献华

1月月更

Office2021 和Microsoft 365分不清?这样选最划算

淋雨

Office 365

26个主流机器学习算法的实现,获4万好评,这本机器学习宝典终于来了!

图灵教育

机器学习 代码 公式

美容院CRM系统解决方案

低代码小观

CRM 客户关系管理 CRM系统 客户关系管理系统 企业管理工具

低代码音视频开发训练营正在火热报名中!

阿里云CloudImagine

阿里云 低代码 低代码平台 媒体处理 视频云

【量化】量化交易入门系列4:经典的量化交易策略(下)

恒生LIGHT云社区

量化策略 量化投资 量化交易 量化

C++太难学,怎么破?这本书给你指点迷津!

图灵教育

c++ 编程 入门

TDengine助力京东云IoT数据统计改造

TDengine

数据库 tdengine OpenTSDB

Fastify 3.0改善了性能、日志、模式以及对TypeScript的支持_大前端_Dylan Schiemann_InfoQ精选文章