📌秋招八股--项目-全部知识
- 腾讯
- 阿里
- 1.简单介绍项目
- 5.你平时开发中怎么解决问题,假如现在线上有一个告警,你的解决思路,过程
- 6.你们为什么要用mq,遇到过什么问题么,怎么就解决的
- 2.怎么理解异常,它的作用是什么,你们工作中是怎么使用的
- 6.线上有遇到大流量的情况么,产生了什么问题,为什么数据库2000qps就撑不住了,有想过原因么,你们当时怎么处理的
- 7.限流怎么做,如果让你设计一个限流系统,怎么实现
- 9.给了几个场景解决分布式事务问题
- 自我介绍,说简历里没有的东西
- 说几个你最近在看的技术(MySQL,多线程)
- 1. 先自我介绍,讲讲自己基础掌握情况,以及项目经历平时会用到哪些数据结构?
- 1. 扯了下项目、讲一下项目经历 redis的底层数据结构了解多少?
- 5 商城项目中的分布式session系统是怎么实现的?
- 6 redis服务器是单独的对不对?服务器访问延迟大概是多少?你觉得大概是什么数量级的?如果放在本地的内存里面,访问延迟会是多少?也是ms级别吗?
- 7 session的数据量有多少?
- 8 这两个项目都是你研究生课程上做的吗?
- 9 为什么你在简历上没有写一下自己的研究方向和研究内容?大概介绍一下吧
- 10 你没有考虑继续读博是吧?
- 秒杀系统
- 1.项目中数据库用的什么,用了哪些表。
- 2.用户完成了一个商品下单,数据库发生什么变化,修改哪些表。
- 3.如果一张表改了,另外的表没有改,怎么解决,在项目中用过吗,transaction事务具体怎么实现。(这里transaction我没答上来,二面又问到了)
- 4.数据库的事务怎么实现。
- 5.商品表有哪些模块?查询排名第二的商品名称(存在多个一样价格的商品,就是写一个sql,秋招让写sql我就遇到两次,问的也都不难,把牛客的sql前十几道刷了我觉得就没问题了)。
- 6.用户注册登录密码找回怎么做的。
- 7.秒杀系统最难的点在哪里。
- 8.限流在那些地方限流,怎么限流。
- 11.分布式session怎么实现。cookie过期怎么办;
- 12.不同层次的缓存怎么做的。
- 13.URL缓存怎么做的,和刚刚的页面缓存有什么区别。
- 14.cdn(具体不了解,简单和面试官聊了一下概念)
- 7.cdn什么原理,为什么要用。
- 4.Java秒杀是参考了网上哪些东西。
- 5.为什么在服务端做限流。
- 6.想要改进要从哪几个方面思考。
- 8.想要获得更高QPS其他方面怎么简化。
- 9.分布式session功能的作用。
- 10.如何实现这种分布式,session是为了高可用吗,还是为了什么?
- 11.语言上实现来说还能改进吗?或者哪些模块可以改进。
- 12.平时学习时间分配。
- 13.最近在看哪方面?比如刷题有哪些理解?最近做了什么题。其他人从哪个角度来做这道题的。
- 14.阿里的两道笔试题后来有重新做过吗。有重新回想过吗。工作中遇到这种问题怎么处理?解决问题时到哪里搜索答案。有专门关注一些海外的技术发布吗,有做过跟踪吗?
- 15.对什么什么库的了解,里面的什么模块比一般第三方Jar包优秀。源码看过哪些。为什么看这些。看完源码后有哪些总结,解决了什么问题什么困惑。
- 2、jmeter压测怎么样
- 3、挑一个模块说一下你是怎么实现的
- 4、hashmap什么时候生效?一直不正确的话
- 5、Redis被击穿,雪崩,你怎么解决
- 6、本地多个线程时,你的hashmap怎么共享,怎么存?
- 蚂蚁
- 字节
- 1. 讲一下写的项目
- 2. 项目中实现了协程的封装,如何实现
- 1. 项目中定时器的作用?
- 2. 如何实现的定时器?
- 时间轮是什么?
- 介绍实习经历;
- Svrkit(RPC框架)的原理;
- Protocol buffer相对于json的优点;
- 8.秒杀系统是你自己做的还是在哪个公司做的?
- 11.你做这个秒杀商城项目最需要考虑的点有哪些?
- 12.你这样相当于把一次秒杀换成了两次秒杀是吗?
- 13.如何实现接口地址隐藏?
- 14.当时为什么想要做这个项目?
- 15.刚在说缓存的时候,你提到了库存?
- 16.预减完了之后,后面创建订单没有成功,你会把这个缓存再还回去吗?
- 17.异步下单是怎么处理的?前端是什么样的状态?
- 18.你有没有压测过?能同时接受最多多少人下单?
- 1.学习这两个项目的背景是什么;是自己的小练习吗;秒杀怎么做的;
- 2.在什么时候减库存;
- 9 完成一个RPC框架都需要哪些模块?(泛泛的说一下就行,我当时只是简单的了解了一下RPC的作用,会调接口,没有深入了解)
- 2.深挖项目
- 3.数据量很大时如何遍历数据库
- 4.MQ消息堆积时怎么办?
- 5.MQ消费失败怎么办?
- 6.10亿条号码,放入内存,构建一个数据结构,给一个前缀,找出符合这个前缀的所有号码。】
- 1. 聊聊Netty,什么是Nio,select epoll,为什么select 最大监听1024个fd,epoll的回调是通过什么函数实现的
- 2. 刚刚你提到了零拷贝,具体说说什么是零拷贝,什么是DMA
- 3. 你对dubbo 的哪个实现比较熟悉?我说可以聊聊里面一致性哈希是怎么实现的,他相比一般的哈希本质上解决了什么问题
- 实习经历(30分钟。项目难点、项目中使用的技术以及业务思考)
- jwt是什么?原理?和cookie之间的关系(区别)
- 1. 讲一讲实习中做的项目
- 2. 项目中遇到什么挑战性问题?(技术、业务)
- 面试官问了一句也会写前端吗,因为本人项目中也有做前端的。
- 面试官详细问了一下实习做什么负责哪个板块,团队主要的技术架构,微服务还是什么。
- 面试官问了一下在项目(自己的项目)中担任的角色。
- 作为一个组长,你觉得领导一个团队最重要的是什么?怎样激发团队人员的积极性呢?
- 面试官挑了一个项目问「一个类似于石墨文档的项目」,为何最后没有能够做到多人实时协同编辑的功能?那了解现在业界的这种多人文档协作基本的解决方案吗?
- 1. 自我介绍+项目
- 2. 项目中的异步怎么做的?具体说说
- 用户密码的安全性怎么保证的?
- 怎样提高网站的性能:
- 拼多多
- 面试经验总结
腾讯
腾讯CSIG一面-后端开发
1.两分钟简要介绍一下自己以及自己的项目
这里明显面试官就是对服务器项目感兴趣,所以讲了一下我简历上的服务器项目的大致流程
2.项目当中的前端和后端使用什么协议传输的,ATP吗
答:http(ATP我有些懵的,知识储备之外)
WXG 微信支付 一面 挂
讲实习经历和项目
IEG 用户与社区 一面 挂
讲实习经历和项目
IEG 用户与社区 运营开发 一面 挂
讲实习经历和项目
1. 项目中分布式事务怎么解决的
2.XA和TCC有什么区别
3.rocketmq事务消息怎么实现
4.你说的是kafaka的事务消息吧,kafaka和rocketmq怎么选型的
5.rocketmq是怎么存储的
6.存储做了哪些优化
WXG 微信支付 一面 过
讲实习经历和项目
WXG 微信支付 面委
讲实习经历和项目
阿里
1.简单介绍项目
5.你平时开发中怎么解决问题,假如现在线上有一个告警,你的解决思路,过程
6.你们为什么要用mq,遇到过什么问题么,怎么就解决的
2.怎么理解异常,它的作用是什么,你们工作中是怎么使用的
6.线上有遇到大流量的情况么,产生了什么问题,为什么数据库2000qps就撑不住了,有想过原因么,你们当时怎么处理的
7.限流怎么做,如果让你设计一个限流系统,怎么实现
9.给了几个场景解决分布式事务问题
自我介绍,说简历里没有的东西
说几个你最近在看的技术(MySQL,多线程)
1. 先自我介绍,讲讲自己基础掌握情况,以及项目经历平时会用到哪些数据结构?
1. 扯了下项目、讲一下项目经历 redis的底层数据结构了解多少?
5 商城项目中的分布式session系统是怎么实现的?
6 redis服务器是单独的对不对?服务器访问延迟大概是多少?你觉得大概是什么数量级的?如果放在本地的内存里面,访问延迟会是多少?也是ms级别吗?
7 session的数据量有多少?
8 这两个项目都是你研究生课程上做的吗?
9 为什么你在简历上没有写一下自己的研究方向和研究内容?大概介绍一下吧
10 你没有考虑继续读博是吧?
秒杀系统
1.项目中数据库用的什么,用了哪些表。
2.用户完成了一个商品下单,数据库发生什么变化,修改哪些表。
3.如果一张表改了,另外的表没有改,怎么解决,在项目中用过吗,transaction事务具体怎么实现。(这里transaction我没答上来,二面又问到了)
miaoshagoods减库存 下订单添加事务注解
4.数据库的事务怎么实现。
5.商品表有哪些模块?查询排名第二的商品名称(存在多个一样价格的商品,就是写一个sql,秋招让写sql我就遇到两次,问的也都不难,把牛客的sql前十几道刷了我觉得就没问题了)。
方法1,先取得最大的,然后not in 最大的那个,在剩下的取最大的就是第二个。
select Max(Salary ) from Employee where Salary not in (select Max(Salary ) from Employee )
方法2,使用limit
select Salary from Employee order by Salary limit 1,1
方法3,使用limit和 offset
select Salary from Employee order by limit 1 offset 1
- limit子句可以被用于强制SELECT语句返回指定的记录数。Limit接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的位置,第二个参数指定返回从那个记录开始往后的数量。
- 初始记录行的偏移量是 0(而不是 1):
6.用户注册登录密码找回怎么做的。
7.秒杀系统最难的点在哪里。
8.限流在那些地方限流,怎么限流。
11.分布式session怎么实现。cookie过期怎么办;
重新登录即可。
12.不同层次的缓存怎么做的。
- 大并发场景的瓶颈:数据库;
- 解决方案:减少对数据库的访问,有效的手段就是加缓存,如对象缓存、页面缓存等。
13.URL缓存怎么做的,和刚刚的页面缓存有什么区别。
14.cdn(具体不了解,简单和面试官聊了一下概念)
- 静态资源放到内容分发网络CDN服务器。由于动态内容涉及到频繁的与系统后台数据库进行交互,涉及到很多用户信息的更新,如果用CDN来进行分发,那么不能及时的更新,所以需要回源。而静态资源如视频,图片等对更新实时性要求不高,可以利用CDN。CDN对网站进行架构优化,做到网站文件的动静分离的,提升用户访问体验,实现成本可控。
静态请求cdn过程
:用户通过域名访问dns,dns解析出这个域名是cname管理,dns交给cname,cname会分析出距离用户最近cdn,这个cdn如果没有用户需要的静态资源,则会回源到服务器,并将静态资源缓存到cdn。- 对于网页这种静态资源的并发访问,业内早就有成熟的解决方案:内容分发网络(CDN)。我们可以在秒杀开始前,预先把网页的静态资源存放在CDN节点,用户在刷新界面时直接从CDN获取静态资源,
从而降低刷新秒杀界面对服务器造成的压力
。添加了CDN服务之后,秒杀界面有大量用户同时访问和刷新并不会给服务端带来多大压力。
7.cdn什么原理,为什么要用。
4.Java秒杀是参考了网上哪些东西。
5.为什么在服务端做限流。
6.想要改进要从哪几个方面思考。
- 前端层面 基本可以拦截80%的请求。
- 中间层
- 后端优化
- 数据库层
8.想要获得更高QPS其他方面怎么简化。
9.分布式session功能的作用。
10.如何实现这种分布式,session是为了高可用吗,还是为了什么?
11.语言上实现来说还能改进吗?或者哪些模块可以改进。
12.平时学习时间分配。
13.最近在看哪方面?比如刷题有哪些理解?最近做了什么题。其他人从哪个角度来做这道题的。
14.阿里的两道笔试题后来有重新做过吗。有重新回想过吗。工作中遇到这种问题怎么处理?解决问题时到哪里搜索答案。有专门关注一些海外的技术发布吗,有做过跟踪吗?
15.对什么什么库的了解,里面的什么模块比一般第三方Jar包优秀。源码看过哪些。为什么看这些。看完源码后有哪些总结,解决了什么问题什么困惑。
2、jmeter压测怎么样
3、挑一个模块说一下你是怎么实现的
4、hashmap什么时候生效?一直不正确的话
5、Redis被击穿,雪崩,你怎么解决
6、本地多个线程时,你的hashmap怎么共享,怎么存?
蚂蚁
先自我介绍,讲讲自己基础掌握情况,以及项目经历平时会用到哪些数据结构?
字节
1. 讲一下写的项目
2. 项目中实现了协程的封装,如何实现
1. 项目中定时器的作用?
2. 如何实现的定时器?
时间轮是什么?
介绍实习经历;
Svrkit(RPC框架)的原理;
Protocol buffer相对于json的优点;
8.秒杀系统是你自己做的还是在哪个公司做的?
11.你做这个秒杀商城项目最需要考虑的点有哪些?
12.你这样相当于把一次秒杀换成了两次秒杀是吗?
13.如何实现接口地址隐藏?
14.当时为什么想要做这个项目?
15.刚在说缓存的时候,你提到了库存?
16.预减完了之后,后面创建订单没有成功,你会把这个缓存再还回去吗?
17.异步下单是怎么处理的?前端是什么样的状态?
18.你有没有压测过?能同时接受最多多少人下单?
1.学习这两个项目的背景是什么;是自己的小练习吗;秒杀怎么做的;
2.在什么时候减库存;
9 完成一个RPC框架都需要哪些模块?(泛泛的说一下就行,我当时只是简单的了解了一下RPC的作用,会调接口,没有深入了解)
因为我至今对RPC了解的还不够深入,所以就不误人子弟,放一个牛客上的字节大佬总结的RPC知识点,看他的总结:万字总结,RPC项目相关问题及解答
2.深挖项目
3.数据量很大时如何遍历数据库
4.MQ消息堆积时怎么办?
5.MQ消费失败怎么办?
6.10亿条号码,放入内存,构建一个数据结构,给一个前缀,找出符合这个前缀的所有号码。】
1. 聊聊Netty,什么是Nio,select epoll,为什么select 最大监听1024个fd,epoll的回调是通过什么函数实现的
2. 刚刚你提到了零拷贝,具体说说什么是零拷贝,什么是DMA
3. 你对dubbo 的哪个实现比较熟悉?我说可以聊聊里面一致性哈希是怎么实现的,他相比一般的哈希本质上解决了什么问题
实习经历(30分钟。项目难点、项目中使用的技术以及业务思考)
jwt是什么?原理?和cookie之间的关系(区别)
1. 讲一讲实习中做的项目
2. 项目中遇到什么挑战性问题?(技术、业务)
面试官问了一句也会写前端吗,因为本人项目中也有做前端的。
面试官详细问了一下实习做什么负责哪个板块,团队主要的技术架构,微服务还是什么。
面试官问了一下在项目(自己的项目)中担任的角色。
作为一个组长,你觉得领导一个团队最重要的是什么?怎样激发团队人员的积极性呢?
面试官挑了一个项目问「一个类似于石墨文档的项目」,为何最后没有能够做到多人实时协同编辑的功能?那了解现在业界的这种多人文档协作基本的解决方案吗?
1. 自我介绍+项目
2. 项目中的异步怎么做的?具体说说
用户密码的安全性怎么保证的?
怎样提高网站的性能:
- ThymeLeaf 模板引擎的缓存;借助 Kafka 来异步处理事件;用 Redis 做缓存和存储存活期短的信息(如验证码);用 Elasticsearch 做全文搜索(不会吧不会吧,不会还有人用 MySQL 的全文索引吧,手动狗头.jpg);利用线程池的方式,一个线程处理一个请求,同时通过 ThreadLocal 给每个线程绑定当前请求对应的用户信息,比如通过拦截器的方式,请求到达时,检查cookie信息,然后。。。;
- 加入帖子很多,用户数量多,怎么搞:(面试官应该是想我答分库分表,但是我没答出来)
拼多多
9.你认为哪个项目做的更成功一些
10.能介绍一下这个项目吗,为什么做,怎么做的
11.几个人做的,做了多久
12.有考虑做出来想达到什么效果吗,有达到预期吗,还有提升的空间吗
13.有遇到什么难题吗
14.成长收获是什么
15.后面还有做什么吗
16.从哪里看到拼多多的,一看到就投了吗
17.为什么投拼多多
18.有了解其他的吗
19.对部门业务有了解吗
20.找工作对工作地点有要求吗
21.考虑到离家近的原因吗
22.父母对你有要求吗
面试经验总结
技术基础必须扎实
:算法、数据结构、操作系统等,蚂蚁金服面试对技术的基础非常重视,基础扎实的同学有利于在前两轮突出重围。技术宽度
:主要集中在高并发、多线程、分布式架构,大以及常用中间件(缓存等)的选型和比较。技术原理深入
:重点还是提前准备好 JVM、多线程高并发这块。参与的项目总结
:你需要清楚你所做项目的关键细节、优化、特点、原理。很多所用第三方库 &中间件等的原理
,即使你不知道,也要有自己的想法能够说出如何代替实现,比如单点登录的替代方案。
整理不易🚀🚀,关注和收藏后拿走📌📌欢迎留言🧐👋📣✨
快来关注我的公众号🔎AdaCoding 和 GitHub🔎 AdaCoding123