1、分层
分层是将软件进行横向切分。网站软件系统分为应用层,服务层,数据层
分层架构对网站支持高并发向分布式方向发展至关重要。因此在网站规模还很小的时候就应该采用分层的架构,这样
将来网站做大时才能更好地应对。
2、分割
分割是将软件进行纵向切分。将不同的功能和服务分割开来,包装成高内聚低耦合的模块单元。
3、分布式
在网站应用中,常用的分布式方案有以下几种:
1)分布式应用和服务
2)分布式静态资源:动静分离
3)分布式数据和存储:关系数据库和Nosql
4)分布式计算:Hadoop,MapReduce分布式计算框架
4、集群
5、缓存
6、异步
异步架构是典型的的生产者消费者模式,两者不存在直接调用。只要保持数据结构不变,彼此功能实现可以随意变化而不受影响。
使用异步消息队列有如下特性:
1)提高系统可用性
2)加快网站响应速度
3)消除并发访问高峰
7、冗余
8、自动化
目前自动化架构主要集中在发布运维方面,如发布过程自动化,自动化代码管理,自动化部署,自动化监控等。
9、安全