前后端分离架构:从历史发展到未来展望
创作时间:
作者:
@小白创作中心
前后端分离架构:从历史发展到未来展望
引用
1
来源
1.
https://guomaimang.github.io/note/it/arch/front-back-sep.html
前后端分离架构是现代互联网应用的核心技术之一。从最初的纯后端渲染到现在的完全分离架构,前后端分离架构经历了显著的演变,解决了传统架构中的诸多问题。本文将从历史发展的角度,详细解析前后端分离架构的背景、演化过程及其优势和问题。
纯后端渲染架构
纯后端渲染架构是最古老且使用最广泛的架构之一。其主要特点是页面的渲染完全由后端负责,典型技术包括 JSP 和 FreeMarker。
执行流程
- 浏览器发起请求。
- 后端的 Servlet 或 Controller 控制器接收请求。
- 从数据库获取数据。
- 加载模板文件(如 JSP 或 FreeMarker)。
- 使用数据填充模板中的占位符,生成最终的 HTML 文本。
- 返回生成的 HTML 文本至浏览器进行解析。
问题
- 前端团队无法单独调试。
- 前后端职责不清,分工不明。
- 不具备多端应用的潜力。
- 前端开发的静态页面交给后端工程师调整占位符,容易导致渲染结果与预期不符。
- 前端和后端工程师之间的协作容易产生冲突。
- 无法适应多端应用(如 PC 端、移动端、安卓/iOS APP 和第三方接口)的需求。
半分离架构
半分离架构的核心是确保数据和应用之间的解耦。后端只负责数据的提取和返回,而前端负责页面的渲染。
执行流程
- 后端工程师构建 REST Controller,返回 JSON 或 XML 数据。
- 前端开发 HTML 页面,通过 Ajax 请求获取后端数据。
- 前端使用获取的数据进行页面渲染。
优势
- 前后端解耦:后端只负责数据提取,前端负责页面渲染。
- API 和数据重用:不同终端(如 HTML 页面、iOS 和安卓 APP)都可以使用相同的 API。
- 应用渲染灵活:前端团队可以自由决定数据的展示方式。
- 模块化开发:前端可以 MOCK 开发。前后端团队可以并行开发,通过约定接口和数据结构进行无缝联调。
问题
- 前端失去动态性。
- 搜索引擎 SEO 不友好。
- 静态 HTML 容器(如 Nginx 和 Apache)缺乏动态特性,难以实现页面的动态更新。
- Ajax 加载的数据不易被搜索引擎爬虫抓取,影响 SEO。
完全分离架构
完全分离架构进一步增强了前后端的分离,前端通过 Node.js 实现动态页面渲染,并引入应用网关进行请求路由。
执行流程
- 后端:继续使用 REST Controller 提供数据。
- 前端:
- 使用 Node.js 进建立动态页面渲染。
- Node.js 赋予网页动态特征,如页头和页脚的动态组合、本地缓存等。
- 应用网关:
- 处理请求路由,根据设备标识(如 browser、iOS、安卓)决定请求的处理方式。
- 进行垃圾请求过滤、黑白名单处理和身份认证等。
优势
- 动态特性:Node.js 使前端页面具备动态特性,避免重复代码。
- 本地缓存:减少网络通信,提高本地应用执行效率。
- 多端支持:应用网关根据设备标识路由请求,支持多端应用。
问题
- 需要前端工程师掌握更多技能(如 Node.js)。
- 增加了架构的复杂性,需要更多的协调工作。
总结
前后端分离架构的演化
从纯后端渲染到半分离架构,再到完全分离架构,前后端分离架构不断演化,解决了传统架构中的诸多问题,适应了现代互联网应用的需求。
未来展望
前后端分离架构在不断发展,未来将会有更多的技术和工具出现,进一步优化前后端的协作,提高开发效率和用户体验。
热门推荐
美国海军后勤供应链保障体系流程集成经验总结
雨季"三防"怎么做?这份指南请收好
EV主驱IGBT隔离驱动电源方案选择问题探讨
胱抑素C偏高怎么回事?五种常见病因及治疗建议
二月中国赏花攻略|邂逅早春浪漫,这5个绝美花海错过再等一年
磁针抛光机与电解工艺对比:铝件抛光的创新方案
专家解读:危险品仓库选址与存储相关要求
注意!这些信息变了,要及时更新驾驶证!
2024年8月全球粗钢产量分析:同比下降6.5%
取模与取余运算法则,两者间有什么区别
如何理解并应用取余运算的规则?
郑州中招体育考试大变革,健康第一,标准适度下调
右脚无名指肿疼的原因及治疗方法
吃什么疏肝理气解郁
揭秘贩卖人口的买家:神秘买家“石”的惊天罪行
光影与色彩在效果图制作中的应用艺术
如何有效预防失业风险及做好应对准备?这种预防措施有哪些实施难点?
一夜风靡!魔芋爽为何可以征服无数人的胃口?
【石首文苑】小河游记——寻觅油菜花田里的诗意
这种面真不是“垃圾面”,居然一直被误解!这样吃更健康
為什麼大便形狀會改變?7種常見類型與對應改善方法
4分52秒激烈争吵视频来了!俄方:特朗普没动手简直是奇迹
为何有时我们无法共情一个人
年轻铁警春运在岗为旅客排忧解困:“不让小事耽误群众回家团圆”
2024年智能冰箱新趋势:技术革新与品牌竞争激烈,高端配置引领市场
无绳跳绳和有绳跳绳效果一样吗
《三国谋定天下》S6赛季无当飞军兵种阵容推荐
糖尿病患者可以吃香榧吗?专家解读其营养价值与食用建议
云南人餐桌上的春天,有多野?【有手就会的菜谱分享:棠梨花炒火腿+臭菜煎蛋】
云南人餐桌上的春天,有多野?【有手就会的菜谱分享:棠梨花炒火腿+臭菜煎蛋】