大型互联网应用系统技术和手段
一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?
答:1、数据库
数据是系统必不可少的东西。
a、关系型数据库:mysql、oracle (两者区别不大,主要oracle收费)
b、非关系型数据库和缓存数据库: redis、memcached (redis一开始以单线程、速度快为优,最近新出了多线程版本)
c、分布式数据库: 分库分表,分布式数据存储方案
d、聚合型数据库: es 快速搜索
2、消息中间件
解决不同系统之间的通信
kafka、RocketMq
3、分布式事务
解决最终一致性问题
4、分布式锁
可以基于mysql、redis、zk等实现
5、任务调度中心
管理定时任务
6、配置中心
维护配置文件,管理配置
7、注册中心
微服务注册中心
eureka、zookeeper
8、网关
服务分配,zuul、gateway
9、负载均衡
DNS
10、服务监控
11、全链路跟踪
12、熔断、降级、限流
评论