针对于前端的JAMstack开发架构介绍

基于客户端JavaScript,可重用API和预先构建Markup的现代Web开发架构

当我们谈论“堆栈”时,我们不再谈论操作系统,特定Web服务器,后端编程语言或数据库。

 

JAMstack与特定技术无关。这是一种构建网站和应用程序的新方法,可提供更好的性能,更高的安全性,更低的扩展成本以及更好的开发人员体验。

 

什么是JAMstack?

* J(JavaScript):请求/响应周期中的任何动态编程都由JavaScript处理,完全在客户端上运行。这可以是任何前端框架,库,甚至是vanilla JavaScript。

* A(APIs):所有服务器端进程或数据库操作都被抽象为可重用的API,通过HTTPS使用JavaScript进行访问。这些可以是定制的或利用第三方服务。

* M(Markup):模板化标记应该在部署时预先构建,通常使用内容站点的站点生成器或Web应用程序的构建工具。

 

依赖于客户端和服务器之间紧密耦合的任何项目都不是使用JAMstack构建的。这将包括:

* 使用服务器端CMS构建的站点,如WordPress,Drupal,Joomla或Squarespace。

* 一个单片服务器运行的Web应用程序,它依赖于Ruby,Node或其他后端语言。

* 单页应用程序,使用同构呈现在运行时在服务器上构建视图。

 

为何选择JAMstack?

更好的性能:

* 为什么要在部署时生成页面,等待页面动态构建?当谈到最小化第一个字节的时间时,没有什么能比通过CDN提供的预构建文件更好。

安全性更高:

* 将服务器端进程抽象为微服务API,可以减少攻击的表面区域。您还可以利用专业第三方服务的专业知识。

更便宜,更容易扩展

* 当您的部署相当于可以在任何地方提供服务的一堆文件时,扩展就是在更多地方提供这些文件的问题。CDN是完美的,通常包括扩展他们的所有计划。

更好的开发者体验

* 松散的耦合和控制分离允许更有针对性的开发和调试,并且为站点生成器扩展选择CMS选项消除了为内容和营销维护单独堆栈的需要。

 

来源:[https://jamstack.org/](https://jamstack.org/)

感谢 [谷歌翻译](https://translate.google.cn/)


 

更多文章jacktesla的博客

你可能感兴趣的:(jastack,jamstack,js,api,Markup,前端)