【腾讯】Java岗-非科班面试总结

一面82分钟:

首先问到了项目的架构设计,然后扩展,如果自己项目需要满足10W QPS的需求,架构如何设计?

项目里面高并发下如何实现请求的过滤以及消峰?

集群环境下如何保证数据的一致性?

服务器集群以后如何做到数据的共享?

说一说一致性Hash吧?

问我MySQL主从复制会不会?回答不会。

那你自己设计一下MySQL的主从复制应该如何解决?画一下你的思路?

最后面试官告诉了我MySQL主从复制的原理。然后和他探讨了一下我对这个原理的疑惑。

当时是使用了Redis主从复制的思想来考虑的。

你这种解决办法是从结果来考虑,是不能从原因角度考虑?

说一下STL的Map?

我说我不会,然后讲了一下java的实现,画了一下数据结构图。

讲一下红黑树?

我说您直接看我博客吧,里面有对他的分析。

ali云用的linux什么版本?虚拟机的呢?

说一下常用的shell命令?

看过那些书?

选择出最好的三本?

学习过程?

为什么硕士不报计算机?

你项目里面的这些架构的设计是怎么学习的?

还有一些架构设计的问题忘了了。

二面:

面试开始(被吊打之旅开始,完完全全被吊打的没有还手之力):

一轮面试官对你评价比较好啊,说你是自学Java的?说一下过程?

你懂不懂C++呢?说一些你会的就行。

-1的二进制码是多少?

说一说大小端?

描述一下客户端和服务端进行socket的系统的过程吧?

系统调用是怎样的?

如果服务端在listen以后sleep了,那么client的connect还能接收到么?

进程间通信说一下?

选择一种说一下实现原理?

那么管道和消息队列之间有什么区别么?

为什么有这个区别?

快排思路说一下?

手下一下,拍照片给我。

知道队列么?

手写一下用数组实现的循环队列吧,只需要两个方法入队以及出队?

在改进一下?

为什么使用这种写法?这样就会有一个空间没有利用。可以不可在改一下?

发表评论

后才能评论