Java微服务项目

推荐个Java的微服务开源项目,项目是仿制的大麦网购票系统,涉及了微服务、分库分表、本地缓存/分布式缓存、消息中间件、线程池、本地锁/分布式锁等主流技术。
有的功能接口比如生成订单还提供了多个版本,针对一些高并发场景逐步进行优化,实现了多种解决方案。

这次秋招突击学习了几周,用这个项目替换了之前的单体项目去面试,很明显的感觉到一面、二面的通过率提升了不少。

面试过程中面试官也问了挺多关于项目的问题,整理了下大概有这些:
1. 使用微服务架构的优势是什么,拆分微服务的依据是什么?
2. 分库分表怎么做的?分库分表在设计时会碰到哪些问题?怎么解决的?
3. 项目中提到针对缓存击穿、缓存雪崩、缓存击穿做了优化,具体是怎么实现的?
4. 分布式链路ID为什么不用Skywalking而是自己实现?异步调用时是怎么解决跨线程传递的?
5. 项目中哪些地方用到了Redis缓存,是如何实现缓存一致性的?
6. 你提到了使用了本地缓存+redis缓存实现多级缓存,怎么保证多级缓存的一致性?多实例情况怎么解决?
7. 项目中哪些地方用到了分布式锁,使用分布式锁的时候有碰到什么问题吗?
8. 你提到项目中实现了自定义的分布式锁组件,为什么要这么做,解决了哪些问题?
9. 项目里提到了用redisson实现了分布式延迟队列,具体是怎么实现的?
10. 购票时的余票扣减是怎么实现的?为什么要用lua+redis来实现,有没有更好的方法?

目前碰到面试官问过的,主要就是这些问题,项目内容还是挺多的,代码量也很大,还有很多知识点都没来得及深入学。
项目本身是完全开源的,具体地址在gitee上搜damai应该就能找到。
全部评论
m
点赞 回复 分享
发布于 2024-10-30 01:01 北京
mark
点赞 回复 分享
发布于 2024-10-31 09:40 四川
m 在哪啊链接
点赞 回复 分享
发布于 2024-11-01 22:19 浙江
佬,问一下这个烂大街了没啊,写了需要包装吗?我双非 怕过不了筛
点赞 回复 分享
发布于 2024-11-04 00:44 浙江
确实不错,最近在看这个,还有技术详解
点赞 回复 分享
发布于 2024-11-05 21:13 河北
m
点赞 回复 分享
发布于 2024-11-11 18:50 湖南
点赞 回复 分享
发布于 2024-11-20 17:24 江西
mark
点赞 回复 分享
发布于 2024-12-03 14:33 广东
mark
点赞 回复 分享
发布于 2024-12-10 18:20 辽宁
有文档吗佬
点赞 回复 分享
发布于 2024-12-23 15:29 广东
mark
点赞 回复 分享
发布于 02-05 19:19 宁夏

相关推荐

不愿透露姓名的神秘牛友
01-26 19:36
沙福林:你把外卖塞到点评里面,点评再整合一下,把登录摘出来作为一个模块,商家侧的后台管理一个模块(上优惠券,改优惠券/店铺信息),用户侧一个大模块下面有:优惠券模块,下单交易模块,社区模块(点赞评论晒图交友),外卖模块(外卖项目你也得整理一下,把toC整合到一个模块,toB整合到一个模块)。 然后异步秒杀用kafka/rocketmq,搜索用es&&同步用mq,考虑mq解耦长链路接口代码。
点赞 评论 收藏
分享
评论
17
84
分享

创作者周榜

更多
牛客网
牛客企业服务