阿里一面
我用的马哥的12306项目。感觉之前的秒杀项目用的太多了,面试官估计都烦了,给面试官换换口味。
一、SQL优化问题,如何优化的,查询返回的数据量大吗。在实际工程中可以将需要join的表直接设计在一张表中,用空间换时间。
二、讲一下实习项目的经历,业务理解,其实就是打杂。。。
三、讲一下自己的项目,Rocketmq实现延迟消息的细节,有没有其他的方案
四、Rocketmq消费失败,怎么保证可用性。
五、缓存穿透、缓存击穿、缓存雪崩,讲一下三个场景如何解决。
六、热点数据设置永不过期会将Redis爆内存,有没有其他的解决方案
七、为什么用分布式锁构建缓存,不用分布式可以吗
八、布隆过滤器的作用。
九、如何监听binlog实现数据库和缓存之间的一致性,实时性如何。
binlog一般用于删除缓存的数据,不是更新缓存。
十、扣减库存如何保证不出现超卖问题。
秒杀场景,有没有更高性能的方案,CAS,版本号记录,不打到数据库,将库存放到缓存中,然后用lua脚本实现库存扣减,秒杀商品缓存预热。
十一、分库分表是如何实现的,基因复合算法,异地多活问题,比如在上海和杭州部署了两个节点,大部分请求只打到上海该怎么解决
十二、Rpc服务框架,好几个月前做的,没啥可说的。
十三、下面都是八股,Integer之间的比较,用==还是equal,==是否相等
十四、java的异常体系
十五、jvm内存模型
十六、线程池的拒绝策略,有哪几种
十七、线程池如何设置大小,根据任务场景,I/O密集型和CPU密集型
聊的还可以,偏向场景题多一些。
这里介绍一下12306 这个项目,基本上涵盖了 SpringBoot、SpringCloud 相关技术亮点,比如:
- 设计模式:责任链、简单工厂、策略、模板方法等
- 缓存与数据库一致性
- 分布式锁控制数据一致性
- 数据库分库分表:用户、订单、支付等
- 消息队列
- 幂等解决方案::防止 HTTP 接口以及消息队列重复消费等
项目地址:Gitee 开源平台下搜索 nageoffer/12306
一、SQL优化问题,如何优化的,查询返回的数据量大吗。在实际工程中可以将需要join的表直接设计在一张表中,用空间换时间。
二、讲一下实习项目的经历,业务理解,其实就是打杂。。。
三、讲一下自己的项目,Rocketmq实现延迟消息的细节,有没有其他的方案
四、Rocketmq消费失败,怎么保证可用性。
五、缓存穿透、缓存击穿、缓存雪崩,讲一下三个场景如何解决。
六、热点数据设置永不过期会将Redis爆内存,有没有其他的解决方案
七、为什么用分布式锁构建缓存,不用分布式可以吗
八、布隆过滤器的作用。
九、如何监听binlog实现数据库和缓存之间的一致性,实时性如何。
binlog一般用于删除缓存的数据,不是更新缓存。
十、扣减库存如何保证不出现超卖问题。
秒杀场景,有没有更高性能的方案,CAS,版本号记录,不打到数据库,将库存放到缓存中,然后用lua脚本实现库存扣减,秒杀商品缓存预热。
十一、分库分表是如何实现的,基因复合算法,异地多活问题,比如在上海和杭州部署了两个节点,大部分请求只打到上海该怎么解决
十二、Rpc服务框架,好几个月前做的,没啥可说的。
十三、下面都是八股,Integer之间的比较,用==还是equal,==是否相等
十四、java的异常体系
十五、jvm内存模型
十六、线程池的拒绝策略,有哪几种
十七、线程池如何设置大小,根据任务场景,I/O密集型和CPU密集型
聊的还可以,偏向场景题多一些。
这里介绍一下12306 这个项目,基本上涵盖了 SpringBoot、SpringCloud 相关技术亮点,比如:
- 设计模式:责任链、简单工厂、策略、模板方法等
- 缓存与数据库一致性
- 分布式锁控制数据一致性
- 数据库分库分表:用户、订单、支付等
- 消息队列
- 幂等解决方案::防止 HTTP 接口以及消息队列重复消费等
项目地址:Gitee 开源平台下搜索 nageoffer/12306
全部评论
哥,这个项目我找到了源码,是不是照着他的文档步骤进行即可
谢谢分享
大佬这个项目要做多久呀
m
为什么binlog一般用于删缓存而不是更新缓存呢
大佬12306做了多久?
同学你好,想请教下你,12306项目大概做了多久,在做项目之前有系统学习过高并发分布式的知识吗
这个项目有视频教程吗
m
老哥第一题优化的思路是什么呢
试试这个
插眼
M
m
相关推荐
查看8道真题和解析
点赞 评论 收藏
分享
查看12道真题和解析
点赞 评论 收藏
分享