写点什么

Web 框架 Astro 2.0 发布,在静态和动态渲染之外提供了混合渲染能力

  • 2023-04-14
    北京
  • 本文字数:1044 字

    阅读完需:约 3 分钟

Web框架Astro 2.0发布,在静态和动态渲染之外提供了混合渲染能力

Web 框架 Astro 最近发布了2.0版本,在原先的静态和动态服务器渲染功能之上提供了新的混合渲染功能。混合渲染可用于渲染特定页面,以此来获得更高的渲染性能。


Astro Web 框架旨在普及一种叫作“组件岛”的前端架构,这也是 Astro 推出混合渲染的动机:


在将近一年的时间里,Astro 都只允许用户在静态(SSG)和服务器(SSR)渲染之间二选一。静态网站提供了令人难以置信的性能,但缺少为不同请求按需生成 HTML 的能力。


Astro 2.0 的混合渲染把这两种渲染能力结合在了一起。


将静态和动态内容混合在一起可以带来新的可能性:


1. 提高热度页面的渲染性能;

2. 提高大型站点的构建性能;

3. 向已有的静态站点中加入 API。


在之前的版本中,使用 Astro 的开发人员必须在静态渲染(针对静态的、内容主导的网站)或服务器端渲染之间做出选择。有了混合渲染,开发人员可以在构建时预渲染特定的页面或服务器端点,无需放弃已部署的服务器。


大型网站通常有适合使用预渲染技术生成内容的部分,也有需要在请求时生成内容的部分。例如,电子商务网站会预先渲染主页和各种以营销为重点的内容,而产品、价格或折扣页面则使用服务器端渲染,以呈现最新可用的数据。这种混合方法可能会降低渲染网页所需的计算资源量和相关的成本。


对于使用Jamstack的大型站点,比较有价值的是增量静态生成,这是由应用程序框架 Next.js 推广的一种渲染方式。


Astro 新版本还提供了重新设计的错误叠加,改进了对开发阶段模块热加载的支持,并使用了新发布的Vite 4.0来构建内容。


Astro 是一个旨在为以内容为中心的网站提升用户体验的 Web 框架。为此,Astro 尽可能少向客户端发送 JavaScript,确保页面的交互性是可用的。对于完全静态的页面,根本不发送 JavaScript。Astro 为此提出了“组件岛”架构。Web 页面被划分为静态 HTML 内容,其中穿插着称为 Astro 岛的交互式 UI 组件。组件岛是独立渲染的,可以使用任意的 UI 框架(例如,React、Preact、Svelte、Vue、Solid、Lit)。


Astro 宣称自己是“专为速度而设计的一体化 Web 框架”。其基准测试(基于Chrome用户体验报告[CrUX]The HTTP Archive核心Web重要技术报告)报告显示,Astro 的性能优于其他 Web 框架(Sveltekit、Gatsby、Remix、WordPress、Next、Nuxt)。


Astro 是一个采用了 MIT 许可的开源项目。欢迎开发者参与贡献和反馈


原文链接

https://www.infoq.com/news/2023/04/astro-2-hybrid-rendering/


相关阅读:

Web 前端开发最好用的几个 WebGL 框架

Web、移动端、桌面端自动化测试工具或框架推荐

Web 前端设计开发工具集(JS 框架、CSS 预处理)

传统 Web 框架部署与迁移

2023-04-14 14:106362

评论

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

JAVA笔记(三)--变量及运算符

加百利

Java 程序员 后端 6月日更

618 技术特辑(一)不知不觉超预算3倍,你为何买买买停不下来?

华为云开发者联盟

电商 图数据库 知识图谱 618 图引擎服务

针对 MySQL IO 特点进行的存储优化揭秘

焱融科技

MySQL 技术 分布式 高性能 文件存储

6月26日,HarmonyOS开发者日将于杭州举办

科技汇

pprof排查Golang服务内存问题

循环智能

pprof 性能分析 Go 语言

[译] 规避供应商以及特定版本的 VM Bugs

Antway

6月日更

618 技术特辑(二)几百万人同时下单的秒杀,为什么越来越容易抢到了

华为云开发者联盟

数据库 服务器 流量 618 弹性负载均衡

MySQL中的pid与socket是什么?

Simon

MySQL

校友会小程序开发笔记一:背景与技术方案的选型

CC同学

小程序云开发 校友录小程序 校友会小程序

校友会小程序开发笔记二:功能需求设计

CC同学

小程序云开发 校友录小程序 校友会小程序

开发者如何构建技术影响力

不脱发的程序猿

程序人生 开发者如何构建技术影响力 技术影响力

教你两招,解决数据膨胀

华为云开发者联盟

数据 GaussDB(DWS) VACUUM 数据膨胀 FSM

Bzz节点分币系统开发,云算力矿机租赁系统搭建

可视化协助矿山,打造“高效率运营战略”,年降成本500W

一只数据鲸鱼

数据可视化 工业4.0 智慧矿山

分布式能解决一切问题吗?百度架构师为你解答架构真正奥义!

Java架构师迁哥

校友会小程序开发笔记三:数据库设计

CC同学

小程序云开发 校友录小程序 校友会小程序

详解 Go 程序的启动流程,你知道 g0,m0 是什么吗?

煎鱼

Java php 后端 Go 语言

5W1H聊开源之Who/When/Where——谁在何时何地“发明”了开源?

禅道项目管理

Linux 开源 软件

新思科技宣布收购 Code Dx公司 添加软件漏洞关联、优先级和合并风险报告

InfoQ_434670063458

新思科技

译文 | AI产品经理:如何打造一款SaaS+AI的优质产品

LigaAI

产品经理 研发管理

阿里云视频云 Retina 多媒体 AI 体验馆开张啦!

阿里云CloudImagine

阿里云 短视频 视频处理 媒体处理 视频制作

校友会小程序开发笔记四:UI基本元素设计

CC同学

小程序云开发

凭这份pdf每天花2小时学习,3个月后拿下阿里/美团/京东等offer

Java 程序员 架构 面试

WebRTC 传输安全机制第二话:深入显出 SRTP 协议

阿里云CloudImagine

音视频 WebRTC 通信 流媒体开发 SRS流媒体服务器

【LeetCode】石子游戏Java题解

Albert

算法 LeetCode 6月日更

🌏【架构师指南】分布式技术知识点总结(上)

码界西柚

分布式 raft协议 paxos协议 6月日更

测试工程师如何收拾交接项目的烂摊子

陈磊@Criss

测试

谁说双非本就一定无缘阿里!(四年crud经验已拿下P7)面经分享

Java 程序员 架构 面试 计算机

公安情报研判分析系统解决方案,合成作战系统搭建

拍乐云受邀2021亚太CDN峰会,技术创新赋能行业新价值

拍乐云Pano

RTC

JavaScript 学习(三)

空城机

JavaScript 大前端 6月日更

Web框架Astro 2.0发布,在静态和动态渲染之外提供了混合渲染能力_大前端_Bruno Couriol_InfoQ精选文章