第四周学习总结

用户头像
麻辣
关注
发布于: 2020 年 07 月 01 日

通过第四周的学习,概要地了解到一个典型的互联网系统的架构模式有哪些,主要要解决的问题是什么。

首先,与传统的应用系统类似,一个互联网的应用系统要满足两个方面的需求:功能性需求与非功能性需求。非功能性方面,主要要解决:高性能,高可用,可伸缩,可以扩展,安全等方面问题。



再者,对于一个通用的互联网应用架构,可以按功能从前到后,从上到下大致分成6层:前端,网关,服务,存储,后台,基础设施;同时安全、与监控贯穿6个层次。每个层次主要的技术点有:

前端:APP及WEB,浏览器,CDN,动静分离,图片,反向代理,DNS。

网关:网关,负载均衡,动态页面静态化,业务拆分

服务:微服务, service mesh,消息队列(rabbitmq, kafka, ),分布式缓存(redis, memcache),分布式一致性

存储:分布式文件,数据库,NOSQL(mongodb),HDFS, HBASE,

后台:大数据,搜索引擎,推荐引擎,数据仓库

基础设施:openstack, kubernetes, vpn

安全:WAF, IPS, 等

监控: zabbix, grafana, Prometheus, opentracing, jeaber等



然后,为了解决系统通用的架构问题,有一下常规的架构模式:

分层:横向维度上分几个部分。网关、微服务、应用,数据....

分割:纵向进行切分,按照业务进行分割。保持高内聚,低耦合。

分布式:不同的模块部署不同的服务器上,通过远程调用协调工作,可以使用更多的CPU,内存,存储资源

集群:对于单一业务多个访问节点。

缓存:对象缓存,页面缓存。

异步:提高系统可用,加快响应,消除并发高峰

冗余: 高可用



最后,通过分享分析了淘宝,宅米,wiki等网站的架构,将各种架构技术串在了一起,真实感触什么是架构,体会到了架构在一个系统中的意义。



用户头像

麻辣

关注

还未添加个人签名 2018.10.13 加入

还未添加个人简介

评论

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