架构师训练营 - 第四周命题作业

用户头像
牛牛
关注
发布于: 2020 年 06 月 29 日
架构师训练营 - 第四周命题作业

一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。



  • CDN:加速静态文件的访问速度

  • Nginx:反向代理和负载均衡,提高可用性

  • 集群:每个服务至少部署两个节点,保证可用性

  • 微服务:根据业务或技术选型将大体积的服务拆分多个小体积的服务,可以提高系统整体稳定性,减少服务启动时间,服务发布更灵活,技术选择更灵活。

  • 缓存:提高查询接口响应效率,减少数据库访问。redis作为缓存工具还能实现分布式锁功能,使多个服务协同一致。

  • 数据库主从和读写分离:采用一主多从的结构,写主库读从库,提高数据库访问性能

  • 数据备份:定时备份数据,有全量备份和增量备份两种,用于容灾。

  • Nosql:用于对于数据一致性要求不高但对响应性能有一定要求的功能模块

  • ES搜索引擎:用于关键词搜索和数据统计查询,ELK用于异常信息收集和接口性能分析

  • Kafka消息中间件:用于埋点信息采集、业务流量的削峰填谷

  • Flume:用于数据流分发处理,典型的数据源是kafka

  • 大数据:存储和统计分析待处理的源数据、kafka消息

  • Zookeeper:可作为服务注册中心、分布式锁、配置中心

  • Apollo配置中心:统一管理系统配置、动态刷新配置

  • 异步处理:有两种情况需要异步处理,一是单个请求响应较慢接口不能长时间等待,这时可以先提交到服务端然后轮询获取处理结果,二是请求数与处理速度不匹配且不需要获取结果时,可以利用中间件记录请求,服务端匀速处理这些请求。

  • 自动化:自动监控服务运行状况,实现弹性伸缩。减少人工干预

用户头像

牛牛

关注

还未添加个人签名 2018.02.27 加入

还未添加个人简介

评论

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