第四周学习总结

发布于: 2020 年 07 月 01 日

本周主要介绍的是互联网应用的架构演变和采用的技术。

1. 互联网应用面临的挑战

互联网应用面临的挑战主要包括:高并发、高流量;应用要保证高可用;需要对海量数据进行处理;用户分布广泛,网络情况复杂;安全环境恶劣;需求快速变更、发布频繁等等。其中高并发是主要的问题。针对高并发的需求,初期采用服务器垂直伸缩的方式解决,解决问题较快。但垂直伸缩到一定点后会达到瓶颈,满足不了业务的高速发展。后续都采用了水平伸缩的方法。

2. 互联网应用架构的演化

当前互联网应用架构不是一开始就是这样的,是随着业务的增长,在不断解决增长中带来的各种问题慢慢演化成今天的模样。从应用和存储部署在本地,到应用、存储、文件系统分开部署,到利用缓存来改善访问性能,到通过利用集群水平扩展来提高并发能力;从单一数据库到读写分离和主从复制,提高数据库访问效率;利用反向代理和CDN来加速网站响应;文件系统和数据发展成为分布式,提高可用性;再到利用搜索引擎和NoSQL技术,来提升信息检索的效率;从单一业务应用进行业务拆分,再到业务微服务化和中台化,加速新业务扩展开发的速度和;再到现在利用大数据和人工智能技术等等。架构的演化不会停止,会随着新业务的出现和增长,给技术提出新的问题,从而进行演化。

3. 互联网的架构模式

互联网的架构模式一般有以下:分层(系统横向维度切分)、分割(按照功能和服务分割成功高内聚低耦合的模块)、分布式、集群、缓存、异步、冗余、自动化等等。这些架构模式,都是为了能设计一个高性能、高可用、可伸缩(向集群添加服务器)、可扩展(功能需求扩展对当前业务不造成影响)、安全的系统。

4. 互联网采用的一般技术

按照架构分层,可以分为前端架构、网关及应用架构、服务层架构、存储层架构、后台架构、安全架构、数据采集及监控架构。每一层有相应的技术。

前端架构技术包括App及Web开发技术、浏览器及HTTP优化技术、CDN、反向代理等。

网关及应用架构技术主要包括负载均衡、动态页面静态化、业务拆分等。

服务层架构主要包括微服务框架、分布式消息队列、分布式缓存等。

存储层架构存储层架构技术主要包括分布式文件、NoSQL数据库等。

后台架构技术包括大数据平台、搜索引擎、推荐引擎等。

安全及运维架构的技术包括数据采集、数据和系统监控技术、安全防护、数据加解密技术等。

(技术的介绍见作业)

用户头像

子豪sirius

关注

还未添加个人签名 2018.05.03 加入

还未添加个人简介

评论

发布
暂无评论
第四周学习总结