腾讯视频一面(过)

一共一小时,面完一小时后过

先自我介绍

说我年龄小,聊了一会

介绍项目,问我找工作是 Java ,要非Java 么,我说 go 也可以,我之前做过字节的青训,用go实现抖音demo的api(面试官估计对Java不太懂)

项目相关(全程根据项目提的八股)

  1. 令牌容器的令牌是怎么设计的?为什么能防止超卖?
  2. 比如西安到北京,中间有很多子站,你是怎么判断出来西安到北京真正还剩多少票呢?(这个我没提前准备,说网上有实现好的api可以直接调,我还没看)
  3. 这个系统的框架用的什么(SpringBoot)?有没有部署过,查询过 QPS(看过TPS)?问了我的测试环境(报了一下我的机器配置)?你这个项目的预期 TPS 是多少(我说我没怎么接触过大型项目,就没什么预期)?你有没有看过 12306 真实的 TPS 是多少,在遇到高并发的时候,它是怎么处理的?
  4. 缓存最终一致性,你的项目中的流程介绍一下?那数据是以什么为基准的(MySQL)?你这样每次写数据都要操作数据库,很重,能不能用 Redis(能,Redis 集群部署的话也可以保证较高的可用性)?讲讲 Redis 主从?Redis 哨兵的主哨兵怎么选举的?如果两个候选者的得票相同怎么办(没答上来,我说我猜应该是随机,他说每个候选者会选择一个随机延迟时间,这样很大程度避免了得票再次相同)?
  5. 那你 TPS 这么多,系统是怎么处理这么多的请求呢(IO多路复用)?你知道 IO 多路复用的几种方式?select、poll、epoll的区别?怎么减少用户态缓冲区和内核态缓冲区的切换(零拷贝)?内存映射的底层怎么实现的?
  6. 分库分表怎么实现的(用的 ShardingSphere)?你知道这个工具的底层怎么实现分库分表的么(我说我猜是 hash)?如果有两个分片键的话怎么实现(底层我不太懂,他说要知道工具的底层,才能优化)?

做题

找第 K 大的数(小顶堆维持着前 K 大的数)20min

闲聊

  1. 家是哪的
  2. 对工作地点有没有要求
  3. 能实习多久

反问

  1. 如果过了或者挂了什么时候出结果
  2. 项目组是干嘛的,用什么语言

全部评论
我都过了一个礼拜了还没约二面......
1 回复
分享
发布于 03-25 21:12 上海

相关推荐

1、拷打项目。具体介绍一下无障碍权限。项目中gemini是干什么的?如何实现版本更新提醒的?如果提示更新时发生异常,比如网络状况不好,怎么处理?网络请求怎么实现的,用了第三方库吗?(OKHTTP3)了解过这个库的原理吗?(没有)那你具体用了库中的哪些方法?2、安卓中view绘制的过程经历了哪些阶段、哪些函数?3、了解过安卓中UI控件分发的机制吗?在relative layout中有一个button,点击button,事件是怎么转发的?4、从点击安装apk,到icon出现在桌面上,这个过程中系统发生了哪些事?从icon出现在桌面上,到应用的界面出现,又经历了什么过程呢?activity调用onCreate之前发生了什么?5、知道AFS(Andrew File System)和PFS(没听清,也查不到)吗?6、介绍一下Java中的反射机制。(拿了一个题,写Java反射的示例)。反射最主要的特点是什么?7、了解Java中的String类是怎么实现的吗?8、在你的安卓项目中遇到过内存泄漏吗?有哪些技术,如果使用不好可能会引起内存泄漏?9、了解过安卓里的handler吗?handler会引起内存泄漏吗?如果handler不指认线程,那它会在哪个线程上?10、介绍一下面向对象的特点。你了解哪些面向对象的设计原则?了解过单一职责原则、迪米特法则、依赖倒置吗?11、设计模式从哪学的?写一下你写过的最全面的单例模式。12、了解过HashMap的底层原理吗?是单一地用红黑树吗?什么时候会转化成红黑树呢?(链表长度大于8)为什么是8个?13、了解过HTTPS吗?加密用的什么机制?14、进程和进程的区别是什么?协程和进程的区别是什么?了解进程间通讯吗?15、算法 毒蘑菇、找出string B中的所有字母是否在string A中很注重知识的全面性,经常追问“还有吗”反问:技术栈是什么?(Java+Swift)如何提升算法能力?(其实不太重要,针对面试就是贪心、DP)
点赞 评论 收藏
转发
4 44 评论
分享
牛客网
牛客企业服务