一、背景
我们日常在电商网站购物时经常会遇到一些高并发的场景,例如电商 App 上经常出现的秒杀活动、限量优惠券抢购,还有我们去哪儿网的火车票抢票系统等,这些场景有一个共同特点就是访问量激增,虽然在系统设计时会通过限流、异步、排队等方式优化,但整体的并发还是平时的数倍以上,为了避免并发问题,防止库存超卖,给用户提供一个良好的购物体验,这些系统中都会用到锁的机制。
对于单进程的并发场景,可以使用编程语言及相应的类库提供的锁,如 Java 中的 synchronized 语法以及 ReentrantLock 类等,避免并发问题。
Spring思维导图
Spring源码学习笔记
有关微服务的面试题:
- Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?
- Dubbo 的整体架构设计有哪些分层?
- 什么是 Spring Boot?以及Spring Boot的优劣势?
- 你如何理解 Spring Boot 中的 Starters?
- 服务注册和发现是什么意思?Spring Cloud 如何实现?
- Spring Cloud断路器的作用
- 什么是 Hystrix 断路器?我们需要它吗?
微服务学习笔记
有关分布式的面试题:
- 消息幂等:如何保证消息不被重复消费?
- 高可用:如何实现消息队列的HA?
- 消息队列选型: Kafka如何实现高性能?
- 消息队列选型: RocketMQ 适用哪些场景?
- 高并发场景下如何实现系统限流?
- 降级和熔断:如何增强服务稳定性?
- 如何选择适合业务的负载均衡策略?
- 说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程?
- dubbo 支持哪些通信协议?支持哪些序列化协议?说一下Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的?
- dubbo 负载均衡策略和集群容错策略都有哪些?动态代理策略呢?
- 如何基于 dubbo 进行服务治理、服务降级、失败重试以及超时重试?
- 分布式事务有哪些解决方案?
- 对比两阶段提交,三阶段协议有哪些改进?
分布式学习笔记
一线大厂分布式实战:
Redis相关面试题
- 为什么要用 Redis /为什么要用缓存?
- Redis为什么这么快?
- Redis有哪些数据类型?
- Redis 的持久化机制是什么?各自的优缺点?
- 我们知道通过expire来设置key 的过期时间,那么对过期的数据怎么处理呢?
- Redis的内存淘汰策略有哪些?
- Redis事务保证原子性吗,支持回滚吗?
- 缓存高可用:缓存如何保证高可用?
- redis 集群模式的工作原理能说一下么?
- 在集群模式下,redis 的 key 是如何寻址的?
- 分布式寻址都有哪些算法?了解一致性 hash 算法吗?
- redis 的并发竞争问题是什么?如何解决这个问题?了解redis 事务的 CAS 方案吗?
Redis学习笔记
最后
现在正是金三银四的春招高潮,前阵子小编一直在搭建自己的网站,并整理了全套的**【一线互联网大厂Java核心面试题库+解析】:包括Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等**…都已全部整理上传在**我的腾讯文档上:点击这里前往传送门**并会持续更新…可以star一下。
**我的腾讯文档上:点击这里前往传送门**并会持续更新…可以star一下。