2025技术预测|AI研究与应用|小红书、华为仓颉的AI实践 了解详情
写点什么

Vapor 5 将实现 Swift 服务器端开发

  • 2024-10-15
    北京
  • 本文字数:950 字

    阅读完需:约 3 分钟

Vapor 5 将实现 Swift 服务器端开发

自当前版本发布 4 年多以来,Swift 服务器端开发框架 Vapor 的幕后团队一直在为 Vapor 5 可以利用 Swift 6 的并发能力以及框架的未来发展打基础。该框架的 Alpha 版本计划在 Swift 6 正式发布时发布。


Vapor 5 的主要目标是支持完全结构化并发的原生 API,采用 Swift 生态系统中更为现代化的包,以及完全重写 WebSocket 和 MultipartKit API。


采用结构化并发意味着 Vapor 5 将抛弃在 Vapor 3 中引入的EventLoopFuture,那也是 Vapor 4 中基于async/await的 API 的基础。取而代之,Vapor 5 将从一开始就使用结构化并发,而且会完全弃用EventLoopFuture,从而简化代码推理,并简化 Xcode 的高级结构化并发诊断。


Vapor 5 还将利用一些近年来变得非常流行的第三方库,包括一个启动和停止服务的库 Swift Service Lifecycle;一个为 HTTP 请求和响应提供一组通用表示的库 Swift HTTP Types;以及一个基于 Hummingbird 的新 HTTP 服务器,它将支持 gRPC、异步请求 / 响应体流式传输和 SSE。此外,Vapor 5 将迁移到 Swift Foundation。这是一个轻量级的基础层,取代了 iOS 和 macOS 提供的 Foundation API。Vapor 团队表示,这将在所有平台上提供一致的行为,并减少可能给多平台开发者带来的困惑。


关于 Vapor 5,最后需要说明的一点是,它将引入新的 WebSocket 和 MultipartKit API 实现。MultipartKit 的当前实现有一个主要的限制是不支持 multipart 请求 / 响应体的流式传输,这使得它很难处理非常大的文件或像 NIOFileSystem 这样的 API。Vapor 5 的新实现将解决这个问题。类似地,当前的 WebSocket API 在async-await领域很难使用,新版本将提供一个更容易使用的新 API。


Vapor 由 4 个主要组件组成,包括一个核心包,用于处理路由、JSON 编码 / 解码和管理 HTTP 请求;Fluent,让开发人员可以使用 noSQL 数据库创建数据模型;JWT,用于在 Swift 中创建签名和验证 JSON Web 令牌;Leaf,一个可以从简单语法生成 HTML 的模板引擎。


Vapor 在 GitHub 上有超过 24k 的星星和近 250 个贡献者,它似乎是 用 Swift 构建 HTTP Web 应用程序或 API 时最受欢迎的选项。


如前所述,Vapor 5 的早期版本将与 Swift 6 一起发布,主要是提供一个纯异步技术栈,并删除所有的EventLoopFuture API。


原文链接:

https://www.infoq.com/news/2024/09/swift-vapor-5-roadmap/

2024-10-15 08:151

评论

发布
暂无评论

京东秒送售后系统退款业务重构心得| 京东零售技术团队

京东科技开发者

Office Installer Plus(一键部署微软 Office) v1.15 特别版

iMac小白

Flink的状态原语详述

木南曌

实时计算

英特尔推进面向未来节点的技术创新,在2025年后巩固制程领先性

E科讯

京东JD商品sku信息API返回值解读:数据驱动的商品属性研究

技术冰糖葫芦

API boy API 接口 API 文档

通过MVEL表达式和Apache Chain职责链模式解耦MQ消息处理节点的实践应用

京东科技开发者

win版WinCatalog 2024(磁盘管理)特别版

iMac小白

win版Microsoft Office 2016免激活专业增强版

iMac小白

Office 2016 下载 Office 2016激活版

Python异常处理:基础到进阶的实用指南

我再BUG界嘎嘎乱杀

Python 编程语言 软件开发 异常处理

win版SketchUp Pro 2024 (草图大师2024)特别版下载

iMac小白

SketchUp2024下载 SketchUp2024激活版 SketchUp2024破解版

从内存泄露聊聊python内存管理

我再BUG界嘎嘎乱杀

Python 编程语言 内存管理 开发语言

“她”来了,陪伴赛道巨变!为GPT-4o加上你的一个数字分身

京东科技开发者

软件适应性定义以及作用简单讲解-行云管家

行云管家

软件 行云管家 软件适应性

win版Windows System Control Center(WSCC)v7.0.9.1 注册版

iMac小白

win版Stardock Start11(Win11开始菜单工具) v2.08直装版

iMac小白

INFINI Labs 产品更新 | Console 1.24.0 操作日志审计功能发布

极限实验室

console Gateway 极限科技 产品更新发布

低成本、高稳定性 | 满帮集团 Eureka 和 ZooKeeper 的上云实践

阿里巴巴云原生

阿里云 微服务 云原生 nacos

win版IDimager Photo Supreme 2024(图片管理软件)激活版

iMac小白

软件测试学习笔记丨黑盒测试方法论-场景法

测试人

软件测试

VueScan Pro(专业扫描工具) v9.8.33 特别版下载

iMac小白

VueScan下载

谈谈 JVM 垃圾回收机制

快乐非自愿限量之名

JVM 虚拟机 垃圾回收

DevOps 进阶实践课,连续 4 期,看看有你想听的吗?

阿里云云效

阿里云 DevOps 云原生

Oracle到PostgreSQL的不停机数据库迁移!

NineData

oracle postgresql NineData 无停机迁移 异常告警

解锁高效创新:IPD策略如何重塑产品开发流程

不在线第一只蜗牛

大数据 产品开发

win版Directory Opus(文件管理器) 专业版下载

iMac小白

Directory Opus下载 Directory Opus破解版 Directory Opus激活版

老去在温暖的空间中,老去在智能的光芒里

脑极体

AI

暗水印——空域:音频水印(看不见我吧 啦啦啦~)

京东科技开发者

门保真度达99.9%,英特尔展示领先自旋量子比特器件性能

E科讯

win版VovSoft Batch URL Downloader(批量网址下载器)激活版

iMac小白

Vapor 5 将实现 Swift 服务器端开发_云端开发_Sergio De Simone_InfoQ精选文章