写点什么

Week4- 总结

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

程序的架构

    设计原则,设计模式

系统的架构

    

系统架构概述:互联网系统面临怎样的挑战?



垂直伸缩

    增强服务器

水平伸缩

    增加服务器



google大概有多少服务器?200W台左右

理论上伸缩能够无限伸缩



架构演化第零阶段:最简单的互联网架构

单体应用



架构演化第一阶段:应用数据分离

拆分服务器



架构演化第二阶段:使用缓存改善系统性能

    本地缓存或者远程分布式缓存服务器



架构演化第三阶段:使用应用服务器集群改善系统的并发处理能力

    集群方式,使用负载均衡调度服务器

架构演化第四阶段:数据库读写分离



架构演化第五阶段:使用反向代理和CDN加速网站响应

    CDN内容分发网络,eg 淘宝在各地放个服务器,用户可以就近访问,主要是静态资源

    CDN本质上是个缓存服务,CDN资源是有限的,会去反向代理服务器,看看反向代理服务器里有没有

    

    大部分请求时CDN返回的



架构演化第六阶段:使用分布式文件系统和分布式数据库系统

    如果写的压力大了 eg 淘宝早期 垂直伸缩

    分布式小文件系统

    

架构演化第七阶段:  使用Nosql和搜索引擎

架构演化第八阶段: 业务拆分

    核心拆分:拆分多个团队去维护

    消息队列 数据在多个系统中传递



架构演化第九阶段:微服务及中台化

    jar包依赖-》微服务依赖

    服务可复用,应用层面便于开发



架构演化第十阶段:大数据与智能化

    eg 今日头条



架构模式

    分层 (横向)

        网关 

        微服务

        基础设施层   缓存 数据库 消息队列

    分割(纵向)

        按业务进行分



    分布式

        独立一块

    集群

        多台机器提供同一个单一的服务



    缓存

        就近获得数据



    异步

        MQ



    冗余

        冗余备份,互相可替代,提高可用性



    自动化

        主要集中在自动化运维

    安全

        加密 防攻击

    

互联网核心要素

    高可用,高性能,可伸缩,可扩展,安全





前端架构

    App及web开发技术

    浏览器及http优化技术

    cdn

    动静分离

    图片服务

    反向代理

    DNS



网关及应用层架构

    网关架构

    负载均衡

    动态页面静态化

    业务拆分



服务层架构

微服务框架

分布式消息队列

分布式缓存

分布式一致性(锁)服务



存储架构

分布式文件

分布式关系数据库

NoSql数据库



后台架构

大数据平台

搜索引擎

推荐引擎

数据仓库



运维与安全

数据采集与展示

数据监控与报警

攻击与防护

数据加密与解密



用户头像

龙7

关注

还未添加个人签名 2019.02.12 加入

还未添加个人简介

评论

发布
暂无评论
Week4-总结