3. 大型网站核心架构要素
什么是架构?
最高层次的规划,难以改变的决定。
软件架构的定义:
有关软件整体结构与组件的抽象描述,用于指导大型软件系统各方面的设计。
「模式」的定义:
每一个模式描述了一个在我们周围不断重复发生的问题及该问题的解决方案的核心。
模式的关键 —— 模式的可重复性。
将系统在横向维度上切分成几个部分,每个部分负责一部分相对比较单一的职责,然后通过上层对下层的依赖和调用组成一个完整的系统。
分层架构模式的目的:规划软件清晰的逻辑结构便于开发维护,支持网站从高并发向分布式方向发展。
网站分层架构 | 职责 |
---|---|
应用层 | 负责具体业务和视图展示,如网站首页及搜索输入和结果展示。 |
服务层 | 为应用层提供服务支持,如用户管理服务,购物车服务。 |
数据层 | 提供数据存储访问服务,如数据库、缓存、文件、搜索引擎等。 |
应用层可以继续细分为:视图层、业务逻辑层。
服务层可以继续细分为:数据接口层、逻辑处理层。
分层面临的挑战:
To be continued.
AWS 的弹性计算云(Elastic Compute Cloud,EC2)服务用来提供虚拟服务器。
虚拟服务器是一台物理服务器的一部分。物理服务器通过软件来隔离其上的各个虚拟服务器。一台虚拟服务器由 CPU、内存、网络接口和存储组成。物理服务器也称为宿主服务器(host serverguest),其上运行的虚拟服务器称为客户机(guest)。虚拟化管理器(hypervisor)负责孤立各个客户机并调度它们对硬件的请求。
参考:AWS 文档:什么是 Amazon EC2