软件架构,有关软件整体架构与组件的抽象描述,用于指导大型软件系统各个方面的设计。
性能
在浏览器端通过浏览器缓存,页面压缩,合理布局页面,减少Cookie传输等改善性能。
CDN、反向代理服务器,缓存热点文件
应用服务端,本地缓存和分布式缓存(缓存的主从备份,热备份)
代码层,多线程和改善内存管理
数据库服务端,索引,缓存,SQL优化
可用性
网站可用的主要的手段是冗余。多台服务器数据多台互相备份,任何一个宕机都不会影响应用的整体可用。
对应用服务器,多台服务器通过负载均衡组成一个集群共同对外服务
对于存储服务器,由于其上存储着数据,需要数据进行实时备份。
发布验证,自动化测试,自动化发布,灰度发布
伸缩性
伸缩性是指通过增加服务器,缓解不断上升的用户并发访问和不断增加
改进缓存路由算法保证缓存数据的可访问性
扩展性
如何设计网站的架构使用其能快速的响应需求变化
网站可扩展性架构主要手段:事件驱动架构和分布式服务
安全性
安全架构是保护网站不受恶意访问和攻击,保护网站的重要数据不被窃取。
小结
性能,可用性,伸缩性,扩展性和安全性是网站架构最核心的几个要素。
时间: 2024-10-21 09:36:53