大型网站架构模式
1.分层
通过分层,可以很好地将一个庞大的系统切分成不同的部分,便于分工合作开发和维护;各层之间具有一定的独立性,只要维持调用接口不变,隔层可以根据需要独立演化。
但是分层架构也有一些挑战,就是必须合理规划层次边界和接口,在开发中严格遵守分层架构的约束,禁止跨层次之间的调用(应用层直接调数据层)或逆向调用(数据层调用服务层,或服务层调用应用层)
2.分割
网站越大,功能越复杂,服务和数据处理的种类也就越多。
在应用层、服务层都可以根据需要将服务切分为合适的模块。
3.分布式
分层和分割的目的是为了便于分布式。
切莫为了分布式而分布式
4.集群与负载均衡
目的:提高系统可用性
5.缓存
将数据存放在距离计算最近的位置(用户处);使用多级缓存
6.异步
目的:系统解耦
模式:发布订阅,生产者与消费者模型
7.冗余
目的:提高可用性,可靠性
8.自动化
目的:减少人工干预,降低出错率
9.安全
安全无小事。内部安全与网站安全。