性能、可用性、伸缩性、扩展性和安全性是网站架构最核心的几个要素。
3.1 性能
衡量网站性能有一系列指标,重要的有响应时间、TPS、系统性能计数器等。
1)通过测试这些指标以确定系统设计是否达到目标
2)通过监控这些指标可以分析系统瓶颈,预测网站容量,并对异常指标进行报警,保障系统可用性
3.2 可用性
高可用设计的目标就是当服务器宕机的时候,服务或者应用依然可用。
网站高可用的主要手段是冗余,应用部署在多台服务器上同时提供访问,数据存储在多台服务器上互相备份,任何一台服务器宕机都不会影响影响应用的整体可用,也不会导致数据丢失。
3.3 伸缩性
伸缩性是指通过不断向集群中加入服务器的手段来缓解不断上升的用户并发访问压力和不断增长的数据存储需求。
衡量架构伸缩性的主要标准是:
1)是否可以用多台服务器构建集群
2)是否容易向集群中添加新的服务器
3)加入新的服务器是否可以提供和原来服务器无差别的服务
4)集群中可容纳的总的服务器数量是否有限制
3.4 扩展性
网站快速发展,功能不断扩展,如何设计网站的架构使其能够快速响应需求变化,是网站可扩展架构主要的目的。
衡量网站架构扩展性好坏的主要标准是:
1)在网站增加新的业务产品时,是否可以实现对现有产品透明无影响,不需要任何改动或者很少改动既有业务功能就可以上线新产品
2)不同产品之间是否很少耦合,一个产品改动对其他产品无影响,其他产品和功能不需要受牵连进行改动
3.5 安全性
衡量网站安全架构的标准就是针对现存和潜在的各种攻击手段和窃密手段,是否有可靠的应对策略。