随着网站系统的应用场景越来越多,网站系统的内部也会变得越来越复杂, 你会听到很多技术名词, SaaS、PaaS、前端、后端、Nginx、CDN、数据库等一系列技术名词, 大量的技术应用使整个网站系统的技术架构变得庞杂,让人无从下手 但是,如果我们把一个庞大的技术架构分为独立的几个部分, 那么技术架构就会变得相对容易理解。
网站系统的技术架构可以从两个维度作分层
1、按 SaaS、PaaS、IaaS 分层
2、按 前端、后端、云计算服务 分层
一、按 SaaS、PaaS、IaaS 分层
SaaS、PaaS、IaaS分层是目前比较认可的分层方式。
视频网站在IaaS、PaaS、SaaS分层下的技术架构
(1)SaaS层指的是服务层,说白了就是开发团队开发的部分, 包括前端网页、后端接口、云计算服务软件等。 (2)PssS层指的是平台层,就是现成的软件, 包括数据库、分布式文件系统、Tomcat、Nginx等。 (3)IssS层指的是基础设施层,就是硬件部分, 包括服务器、网络设备、存储设备等。
二、按 前端、后端、云计算服务 分层
前端、后端、云计算服务分层其实是对上述提到的SaaS层进一步分层。
前端、后端、云计算服务分层的技术架构
以一个中大型的B/S架构网站为例, (1)前端指的是视图层,包括PC网页、手机网页、APP等; (2)后端指的是业务处理层,一般是API接口,处理的是业务请求,如数据的增删改查等; (3)云计算服务处理的是运行时间比较长的任务,一般受后端软件调度,如视频转码、智能审核等; 云计算服务可能是第三方云计算服务平台提供的,也可能是自身团队开发的。 需要注意的是:这里需要选定好开发用到的技术,如Java、Springboot、MyBatis、VUE等 另外根据业务架构划分好子系统,且把主要的功能点体现出来。
总结
一个完整的技术架构其实就是把上面提到的两种分层合并起来, 具体项目可以根据实际情况添加或删减一些技术细节。
完整的技术架构
架构设计的难点在于, 从宏观看清整个系统结构的前提下需要把尽量多的问题考虑进来并制定尽量少的规则解决这些问题。 注:平常听到的SaaS服务,其实指的是第三方云计算服务