1. 自我介绍2. 你现在做了什么项目?3. 你最满意的项目是哪一个?(负载均衡式的在线OJ系统)4. 介绍一下项目5. 你在项目中遇到了什么困难?6. 为什么要把编译运行和oj_server分开?(因为编译运行需要的时间长,便于分离部署等)7. 如何实现的负载均衡?此处省略一堆细节,都是问的项目细节,如,负载如何计算等8. 在开发过程中,你是如何调试的?(gdb,vscode插件)9. 发生过核心转储的问题没,如何使用gdb看核心转储报错?(有,core-file xxxx)如何在编译时带调试信息?(–g)10.项目使用的是什么协议(http或者tcp),tcp和udp有什么不同?(特点)tcp是如何保证可靠性的(校验和,确认应答,确认序号,超时重传,流量控制,拥塞控制),tcp如何保证发送顺序?(确认序号)11. 在oj_server给编译器发送请求的过程中,你是怎么进行调试的?(LOG日志)12. 还有其他方法吗?(postman)好像还有本地测试,这个我忘了┭┮﹏┭┮13. 一个编译服务器一次只编译运行一个请求是不是太浪费了,能不能优化一下?(多线程)14. 除了多线程呢,能不能在不改代码的情况下优化呢?(没答出来,我以为和系统、信号什么有关,想偏了,答案是一个服务器多用几个端口(绑定端口不用写代码吗?????))15. 省略一大堆项目细节。。。。16. 算法题:给你一个整形数组,再给一个目标值,求哪数组两个数字相加等于目标值,输出其下标。(没写好,第一次面试,太紧张了,写的排序+双指针,时间复杂度为O(nlogn),其实用哈希表O(n)就行,后悔呀!)。17. 问面试官问题背的八股是啥都没有,只问项目,不知道能不能过🧐,希望第一次面试能开个好头。