- Part1 高并发架构
- 1.1 消息队列
- 1.2 搜索引擎
- 1.3 缓存
- 1.3.1 在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果?
- 1.3.2 Redis 和 Memcached 有什么区别?Redis 的线程模型是什么?为什么单线程的 Redis 比多线程的 Memcached 效率要高得多?
- 1.3.3 Redis 都有哪些数据类型?分别在哪些场景下使用比较合适?
- 1.3.4 Redis 的过期策略都有哪些?手写一下 LRU 代码实现?
- 1.3.5 如何保证 Redis 高并发、高可用?Redis 的主从复制原理能介绍一下么?Redis 的哨兵原理能介绍一下么?
- 1.3.6 Redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?
- 1.3.7 Redis 集群模式的工作原理能说一下么?在集群模式下,Redis 的 key 是如何寻址的?分布式寻址都有哪些算法?了解一致性 hash 算法吗?如何动态增加和删除一个节点?
- 1.3.8 了解什么是 redis 的雪崩、穿透和击穿?Redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 Redis 的穿透?
- 1.3.9 如何保证缓存与数据库的双写一致性?
- 1.3.10 Redis 的并发竞争问题是什么?如何解决这个问题?了解 Redis 事务的 CAS 方案吗?
- 1.3.11 生产环境中的 Redis 是怎么部署的?
- 1.4 分库分表
- 1.5 读写分离
- 1.6 高并发系统
- Part2 分布式系统
- 2.1 面试连环炮
- 2.2 系统拆分
- 2.3 分布式服务框架
- 2.4 分布式锁
- 2.5 分布式事务
- 2.6 分布式会话
- Part3 高可用架构
- 3.1 Hystrix
- 3.2 高可用系统
- 3.2.1 如何设计一个高可用系统?
- 3.3 限流
- 3.3.1 如何限流?在工作中是怎么做的?说一下具体的实现?
- 3.4 熔断
- 3.4.1 如何进行熔断?
- 3.4.2 熔断框架都有哪些?具体实现原理知道吗?
- 3.5 降级
- 3.5.1 如何进行降级?
- Part4 微服务架构
- 4.1 关于微服务架构的描述
- 4.2 Spring Cloud 微服务架构
- 4.2.1 什么是微服务?微服务之间是如何独立通讯的?
- 4.2.2 Spring Cloud 和 Dubbo 有哪些区别?
- 4.2.3 Spring Boot 和 Spring Cloud,谈谈你对它们的理解?
- 4.2.4 什么是服务熔断?什么是服务降级?
- 4.2.5 微服务的优缺点分别是什么?说一下你在项目开发中碰到的坑?
- 4.2.6 你所知道的微服务技术栈都有哪些?
- 4.2.7 Eureka 和 Zookeeper 都可以提供服务注册与发现的功能,它们有什么区别?
- 4.2.8 ......