第四周学习总结
在互联网时代,各个领域与互联网结合的系统应用也越来越多,随之而来的挑战也需要我们关注,并使用相应的措施改善我们的应用。挑战主要有以下几个方面:
1.高并发,大流量
2.用户分布广泛
3.高可用
4.需求变更频繁
5.渐进式发展
6.系统安全
解决高并发的两个方向:
1.垂直伸缩,通过升级单一服务器的配置增强计算能力,使用高速磁盘阵列提升IO吞吐量及访问速度,使用高速内存,使用高带宽的网络,使用高性能处理器。在用户量激增到一定的程度,带来的成本越来越高,也存在物理极限。
2.水平伸缩,根据职责建立不同的分布式服务集群,根据实际的访问压力进行弹性伸缩,本质是通过分摊压力来达到整体处理能力的提升。相比垂直伸缩,在后期带来成本更低。通过集群提供服务也能避免单点故障。
架构演化几个阶段:
应用及数据分离->缓存改善性能->应用服务器集群->读写分离->CDN和反向代理(动静分离,负载均衡)->分布式文件系统和数据库->NoSQL和搜索引擎->业务拆分及微服务中台化->大数据和智能化
架构模式及要素:
模式:分层,分割,分布式,集群,缓存,异步,冗余
要素:高性能,高可用,可伸缩,可扩展,安全性
网关及应用层架构:
网关架构,负载均衡,动态页面静态化,业务拆分
服务层架构:
1.微服务架构
2.分布式消息队列,分布式缓存,分布式一致性服务。
后台架构:
大数据平台,搜索引擎,推荐引擎,数据仓库
评论