作业 -2020-10-18
题目
一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。
回答
依照ppt中内容,进行分层思考
前端架构
vue等前端框架:解决前后端分离,替代原来jsp等技术,职责更清楚,同时也使得后端只要提供rest接口,方便手机端或其他地方也使用同一套后端接口
cdn:内容分发网络,就近加载资源。
图片服务:对象存储?cdn?都算吧。。
dns:采用类似dnspod的内容,解析到不同服务器。
网关及应用层架构
nginx:作为反向代理
lvs、haproxy等:负载均衡
api gateway:zuul,应用层面,提供更丰富的功能
服务层架构
spring cloud:微服务框架
kafka、rabbitMQ:消息队列,解耦,削峰
redis:分布式缓存,提供访问效率,一些热点数据
存储层架构
hdfs、ceph:分布式文件系统,解决大容量文件存储,非结构化数据
关系型数据库:传统SQL形式,行数据库,结构化数据
NoSQL数据库:不少,HBase也算,结构化数据
后台架构
大数据平台:hadoop、spark,主要做数据分析
搜索引擎:ES?
数据仓库:更多是一种理念,前端需要配合ETL工具,建立对应的数据分层,例如原始层等不同数据
评论