第四周作业
一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?
在成本接受范围内,如果可以通过使用垂直伸缩满足需求优先使用垂直伸缩,立竿见影,比如购买oracle数据库提升数据库性能
客户端请求通过使用GeDNS将请求分发到离用户最近的服务器。
动静资源分离,用户访问频率高的一些热点资源比如图片、视频存放到CDN服务器中
静态页面缓存,比如一些热点商品详情页数据可以通过反向代理服务器缓存,直接返回。
负载均衡,对于一些动态的数据需要访问后端服务可以通过集群方式提供服务。
接入层负载均衡使用VIP,配置standby服务器保证高可用
服务按照业务维度进行垂直拆分、拆分好的服务进行分布式部署。每个集群方式满足伸缩特性。
服务访问的热点数据可以存储在缓存中提升性能,缓存可以是内存环境、分布式缓存
服务可以通过异步方式处理非关键逻辑。提升核心功能的性能。有些场景下可以通过分布式消息队列进行削峰使得后端服务可以平滑应对请求尖刺。
数据库层可以通过一主多从。针对读多的场景提升数据库对于读的能力。
按照不同业务边界将数据库进行垂直拆分,每个业务读写对应的数据库。提升读写能力,互相不干扰
针对跨库场景的搜索可以使用搜索引擎,聚合多张表建立索引。提供复杂条件查询能力
用户ugc数据分析可以使用大数据平台,进行分析反哺业务。
评论