【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

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:105558

评论

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

Java开发岗还不会这些问题,一文轻松搞定

Geek_f90455

Java 程序员 后端

招商银行信用卡卡号识别项目(第一篇),Python OpenCV 图像处理取经之旅第 53 篇

梦想橡皮擦

8月日更

【Flutter 专题】79 图解 Android Native 集成 FlutterBoost 小尝试 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

波宝TronLink钱包APP系统开发介绍

Geek_23f0c3

钱包系统开发 DAPP智能合约交易系统开发 波宝钱包

☕️【系统设计】如何设计出优雅且实用的API接口

码农架构

Java 架构设计 架构设计实战

十大排序算法--选择排序

Ayue、

排序算法 8月日更

Java工程师跳槽经验分享,看完跪了

Geek_f90455

Java 程序员 后端

Seldon 使用 (五): engine & graph

托内多

tensorflow kubeflow seldon

外包学生管理系统架构设计文档

君子意如何

架构师训练营第 1 期 「架构师训练营第 1 期」

架构实战营-毕业设计

En wei

架构实战营

Java多线程从基础到并发模型统统帮你搞定!面试总结

Geek_f90455

Java 程序员 后端

Pandas入门教程-开篇之作

Peter

Python pandas 数据分析师 #python

在线短视频缩略图剪切工具

入门小站

工具

02-架构图

Lane

用5W1H告诉你如何规划合理的测试策略

华为云开发者联盟

敏捷 敏捷开发 测试 测试策略 缺陷

Rust从0到1-模式-使用场景

rust 模式 Patterns Matching

分布式存储系统可靠性:系统量化估算

vivo互联网技术

分布式存储

Java大厂74道高级面试合集,附面试题

Geek_f90455

Java 程序员 后端

Pandas入门教程-Series类型数据

Peter

Python 数据分析 数据 pandas

啊哈!这段时间的学习感受

Nydia

8月日更

FastApi-01-初识

Python研究所

FastApi 8月日更

Java多线程实现方式及并发与同步,写的太详细了

Geek_f90455

Java 程序员 后端

手撸二叉树之最小高度树

HelloWorld杰少

数据结构与算法 8月日更

Java开发热门前沿知识,架构师必备技能

Geek_f90455

Java 程序员 后端

ECMAScript 2020(ES11)新特性简介

程序那些事

JavaScript ecmascript nodejs ES11 程序那些事

几百行代码写个Mybatis,原理搞的透透的!

小傅哥

Java spring 源码 mybatis 代理

从 Druid 控制台(Druid console)中进行查询

HoneyMoose

docker部署redis记录,楼主亲测无异常

小鲍侃java

8月日更

Java开发究竟该如何学习,一文轻松搞定

Geek_f90455

Java 程序员 后端

缓存使用的一些问题

旺仔大菜包

redis

架构实战营毕业总结

En wei

架构实战营

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