架构师训练营 第四周 作业

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

当用户在浏览器输入网站地址之后,请求最开始到达GeoDNS,基于位置的DNS,因为跨地区的访问会比不跨地区的访问慢一些,而这个技术会根据用户的请求ip为用户分配最近的服务器去处理。

用户拿到服务器ip之后,请求到达反向代理服务器,反向代理缓存一些静态化资源,如果发现没有用户访问的资源,那么此时请求会到达负载均衡服务器。

负载均衡服务器根据负载算法,将请求分发到不同的网关服务器上。

网关会进行身份校验等等一些切面性的通用业务,或者提供聚合功能。网关将请求转发到后台微服务。

微服务提供具体的业务处理能力,使用微服务,能将一个庞大的业务切分成很多小业务,这些小业务能独立部署,加快发布上线的速度。每个微服务都可以有自己的数据库,从而减轻数据库的压力。

数据库读写分离,一主多读的数据库架构,可以让大多数的读操作都在从库中,从而增加数据库的处理能力。

缓存技术,互联网应用中大部分操作都是读,可以将一些热点数据放到缓存中,这样就不用每次都访问数据库,减轻数据库压力。

消息队列,消息队列的主要功能:解耦、异步、削峰。使用消息队列,可以减少网站中的微服务的相互依赖。对于一些非实时的操作,比如邮件发送,可以将邮件发送放到消息队列,这样请求就能快速返回,加快请求响应速度。削峰,业务过来之后就放到消息队列中,由消息消费者慢慢处理。

搜索引擎,使用搜索引擎技术,可以将一些复杂的搜索功能放在搜索引擎中,加快搜索速度,减轻数据库压力。

CDN,内容分发,缓存静态资源,减轻服务器压力。



用户头像

Poplar

关注

还未添加个人签名 2018.04.23 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营 第四周 作业