京东零售 二面
- 你在学校里面做过哪些项目?
- 你的技术栈什么?
- 你在学校里面有没有竞赛专利,奖项?
- Java你大概学了多久?
- 项目单个模块里面就说一下有哪些技术栈,涉及的表有哪些怎么设计这些表的。
- 能说就是这几张表的设计,表里边的字段都涉及哪些,为什么这么设计呢?
- 怎么做乐观锁,乐观锁是怎么解决超卖和一人一单的?
- 如何保证数据一致性?举个例子,我再给这个库存里面再加东西,然后你怎么让 Redis 里边的数据和 MySQL 的数据是一致的?就是因为我这个库存还在上架,数据一直在变,这种极端场景是怎么处理的?
- 解决了这个超卖,你有没有在就是压力的情况下去解决这个超卖的问题?就是多个用户去抢,有压力的情况下,在上库存的过程中,怎么去解决超卖?
- cache aside 是什么策略,怎么实现的?
- 用缓存做库存,过期时间是怎么设置的?你认为是否是对的?就是说你举个例子,我也许是正售卖,正想要去买你的东西,你说库存没了因为过期了,然后又从数据库里取,你是怎么样去设置这种库存的过期时间呢?
- MQ 你是用来做什么的?
- 你刚才说用 MQ 进行异步操作,你把哪些环节做了异步?
- MQ 的原理了解吗?
- JWT 是什么?
- 你这个 TOKEN 为什么要双 TOKEN?这是什么意思呢?
- Redis GeoHash你具体是用来做什么的?实现原理是什么?
- Redis 它的实现原理,它为什么查询比较快呢?
- Redis的过期策略一般都有哪些?
- 你在用 Redis 里边有没有哪一些性能问题啊?你觉着它的一般平均耗时是多少?你是怎么去处理这种超时的?
- 你把 big key 哈希了以后,你怎么去找到它呢?
- 随机过期时间是干嘛的?逻辑过期这种都是做什么?
- 你怎么去做这个系统的压测以及系统的线上问题处理?你的系统有没有模拟过一些出现的问题?你有没有去做呢?有没有思考过?