暑期实习,腾讯,字节面经

腾讯云SASS部门(一面-三面)

3.5一面

基础八股,3.5面试的了,原谅我记不得问的是啥了

1.问了MQ怎么保证数据不丢。(ack机制,RabbitMQ中的confirmCallback,MQ持久化,MQ集群等)

手撕:数组里面的重复元素

3.8二面

全程询问百度实习,主要拷打了业务中遇到的慢查询,redis大key,MQ,还有多线程方面的知识,比如线程控制,拒绝策略等,由于时间较久,记不得问了哪些具体内容了。

3.14三面(已挂)

没看简历,上来手撕hard,充满了KPI味。感觉是我长时间推迟腾讯面试导致已经招到人了(可能也是我太菜了)

1.计网,mysql,redis基础八股(什么http1.0,1.1,2.0的区别呀;https的TLS握手呀之类的)

2.timewait的作用与坏处,怎么解决?

3.java里面是怎么进行内存分配的?回答JVM进行的,然后介绍了下JVM中的内存结构与垃圾回收

4.g1垃圾回收器相关基础八股

5.假如我设计g1,我会怎么给对象分配内存,加入g1将堆内存分了64个区域,分配到哪个区,为什么?(胡言乱语)

6.数据库分库分表相关八股,包括选择库表算法,怎么连表查询等

7.MySQL的索引与MySQL缓存有什么关系吗?(完全不会,胡言乱语)

8.如果你来设计git,你打算怎么设计(笑了,我的简历上压根没提git,照样胡言乱语)

手撕:K 个一组翻转链表(好久没写了,忘记使用哨兵节点,撕了个大概)

腾讯云服务器开发(过一面)

3.14腾讯云三面挂,3.15就又被腾讯云捞了,希望不是刷kpi

3.19一面(竟然是腾讯做java的部门)

1.java基础八股+拷打实习

2.volatile的作用,他是怎么实现的?

3.volatile在哪些jdk中使用了(最开始说了个多线程下的单例模式创建,后来想到了原子类)

4.原子类有用过吗?原子类怎么实现的?(CAS+volatile做的)

5.JUC相关八股

6.ThreadLocal用过吗?

7.ThreadLocal中的key为什么是弱引用呢?(以为腾讯是做go的,没复习java,没答出来)

8.if-else过多怎么办?(switch,策略+工厂/多态)

9.redis基础八股

10.redis集群负载均衡的方法知道吗?(说了分片集群,面试官不满意。然后就说不知道,看面试官脸色不好赶紧补充了下一般集群是轮询,hash与一致性hash)

11.一致性hash怎么实现的?如果我想新增与删除节点该怎么做?

12.怎么保证新增与删除节点时整个集群仍然可以正常运行?(不会)

13.数据库相关的基础八股,包括两阶段提交。undolog,redolog,commit等等

14.有遇到过慢查询问题吗,怎么解决的?

手撕:1-10000的所有质数

字节跳动商城业务

3.18一面(已挂)

面试官没开摄像头,没看我的简历,这半个月来已经被kpi刷怕了

1.拷打进程与线程,问了孤儿进程与僵尸进程

2.我在父线程中创建了一个线程池,线程池如果没运行完,父线程关闭了,线程池还能继续运行吗?(会,线程池中的线是由线程池创建与管理的,可以参考ThreadPoolExecutor源码

3.http了解吗?他有什么特点?

4.我看你刚刚提到了rpc-framework,说下rpc-framework包含什么?

5.rpc中负载均衡包括那些算法?

6.rpc中服务发现挂了咋办?(我说将服务发现变成集群,他说还有呢?我说直接直连,他说直连维护起来不是代价太高了,我说那就将之前服务发现中的服务表在本地缓存中备份一份)

7.你觉得设计一个服务发现是CP好还是AP好?(我说虽然当下喜欢用zookeeper作为服务发现是CP的,但是服务发现对一致性的要求没那么高,比如某个server新增进来了,没必要马上就让所有client感知到它,如果是CP会造成一段时间的服务发现不可用,所以AP好……胡言乱语

8.redis怎么保证数据不丢?

9.如果刚插入一条数据redis就挂了怎么办?(redis主从同步,aof持久化设置为插入一条持久化一条)

10.这样redis不就做不到高可用了吗?(我说那redis挂了就挂了,之后用cannel进行恢复……再次胡言乱语

11.mysql中事务没有提交就挂了怎么办?(单机就是undolog恢复,分布式就是补偿模式)

12.中间还问了一些基础八股,都比较简单,不列举了

手撕:两个节点的最近公共父节点

#暑期实习复盘##实习面经##腾讯面经##字节面经#
全部评论
没多少会的,这么难
4 回复 分享
发布于 2024-03-20 15:19 江西
好难 看的汗流浃背了
1 回复 分享
发布于 2024-03-20 11:47 辽宁
太难了吧,汗流浃背了都
1 回复 分享
发布于 2024-03-20 15:58 四川
最后一个题是不是应该还有“每个节点有一个父节点的指针”
点赞 回复 分享
发布于 2024-03-20 11:54 重庆
大佬太强了,看到我汗流浃背了
点赞 回复 分享
发布于 2024-03-20 12:57 上海
汗流浃背了,难的一批
点赞 回复 分享
发布于 2024-03-20 16:15 广东
今天面腾讯,面试官也没开摄像头
点赞 回复 分享
发布于 2024-03-20 22:28 北京
大佬推迟了多久,我也推迟了一天,不知道有没有影响😢
点赞 回复 分享
发布于 2024-03-23 16:09 江苏
你这一面怎么这么难
点赞 回复 分享
发布于 2024-03-27 06:16 河南
😅
点赞 回复 分享
发布于 2024-03-27 09:33 上海

相关推荐

Git的工作流程通常包括以下几个步骤:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=f818c6d22c98401682f8662612b9e57f克隆(Clone):首先,通过克隆一个远程仓库到本地,创建一个本地仓库的副本。这样可以在本地进行开发和修改。添加和修改(Add and Modify):在本地仓库中进行代码的添加和修改。开发者可以通过添加新文件、修改现有文件或删除文件来进行开发工作。暂存(Stage):将修改的文件添加到暂存区(也称为索引),准备提交到版本库。暂存区相当于一个缓冲区,用于存放即将提交的修改。提交(Commit):将暂存区的修改提交到版本库。每次提交都会生成一个唯一的提交记录,包含了修改的详细信息,如作者、时间戳和提交消息。推送(Push):将本地的提交推送到远程仓库,与团队成员共享代码。推送操作将本地的提交同步到远程仓库,使得其他人可以看到和使用这些修改。拉取(Pull):从远程仓库拉取最新的代码更新到本地仓库。当其他人推送了新的修改到远程仓库时,开发者可以通过拉取操作获取这些更新。合并(Merge):将不同分支的修改合并到一起。当开发者在不同的分支上进行并行开发时,可以使用合并操作将分支的修改合并到主分支或其他分支上。冲突解决(Conflict Resolution):当多个分支对同一文件进行了不同的修改时,可能会发生冲突。开发者需要手动解决这些冲突,选择保留哪些修改或进行修改的合并。这些步骤构成了Git的基本工作流程。通过这个工作流程,开发者可以有效地管理代码的版本、协作开发和跟踪修改历史。#ai智能作图#
点赞 评论 收藏
分享
评论
25
123
分享
牛客网
牛客企业服务