获赞
108
粉丝
92
关注
12
看过 TA
1516
门头沟学院
2026
C++
IP属地:天津
暂未填写个人简介
私信
关注
查看17道真题和解析
0 点赞 评论 收藏
分享
全程项目拷打,全程大概65分钟左右项目拷打了大概45分钟左右,好多记不清了,大概把能记住的说一下总结:项目基本要刨根问底问你怎么做的,基本不是自己做的根本回答不上来,随便一个点都能刨根问底# 项目1. 介绍项目2. 你这个项目和飞书有什么异同点,不会答,就说以前用飞书做过文档,很好用,但是底层的通讯原理肯定也是类似于WebSocket这样的架构,或者是用TCP直接做长连接进行数据通信,面试官点了点头没继续追问,不知道是不满意还是为什么3. 讲一下rpc调用的基本原理,回答说基本组成有4个部分,客户端服务端以及它们的stub存根,存根封装了底层的网络通信,rpc调用可以直接处理上层的业务,像调用本地方法一样调用远端的方法4. 讲一下WebSocket协议的内容,说状态什么的,也不太会答,反正最后说原来的项目是用TCP直接做的长连接通信,第二个版本迭代的结果是用WebSocket,具体的还没太了解5. 说一下为什么rpc快,回答说对brpc了解比较少,但是另外一个项目用的是grpc,grpc是Google开发的一个框架,快体现在内部实现了Http2.0的传输方式,然后说了一下Http2.0的优势和缺点,然后说了使用protobuf比较快,然后面试官追问为什么快,我说内部有实现了一些特殊的编码和解码的方式,然后继续追问怎么实现的,举个例子,不会说6. 说一下GateServer的基本大体架构,我说http请求为主,也有WebSocket推送资源,把基本调用流程说了一遍,没后续追问7. 选一个模块进行详细说明,xxxx介绍了一堆8. 问文件传输模块怎么实现的,简单说了一下,最后补充如果大文件传输可能有问题,可能需要用分片等方法进行优化,现在可以实现文件头像等内容的上传和下载,面试官没继续追问9. 问了nginx,我说第二个项目我自己加了域名,所以用nginx做了反向代理,追问反向代理和正向代理的区别,也答出来了,又问nginx怎么实现正向代理和反向代理,我说只用过反向代理,点了点头没再追问10. 你这个项目的日志怎么排查,我说用spdlog可以分级输出,对于特定日志可以tail -n查看最后几行11. 问项目怎么进行部署,我说直接用Linux的Service服务,systemctl就能进行启动,然后讲用Etcd做注册中心,如果一个挂了也没关系,直接可以用systemctl Service自动重启,后面再上去看为什么挂了就可以,有对应的日志系统就能看12. Redis当中存的什么?追问如果集群处理怎么办?回答了有类似于raft算法来保证数据一致性,后面又追问负载均衡怎么用,我说我的项目里面主要用的是RR轮转,后面又讲了一致性哈希和哈希槽的原理,继续点头没有追问13. MySQL表怎么设计,把六张表的原理和用途说了一下,无后续追问14. 为什么用消息队列?说到了削峰填谷,模拟了一个场景,然后问怎么实现的,我说声明Broker和Channel和product和Consumer,错误判断后就可以使用了,面试官说直接用的封装好的库吗,我说是的15. 问短信服务和语音识别,我说直接看的百度云和阿里云的demo代码,然后自己封装了一套接口就没了,直接调用那边的服务16. 问Http传输只能传输json吗?我说我传json多,但是也能传其他的数据,Http2.0也直接优化成二进制进行传输,数据更快17. 项目都是单点吗?我说是的,后续的优化方向会考虑做集群,包括分库分表这些,点点头没追问18. 问Zookeeper和Etcd的原理,怎么保证数据一致性的,我说这两个主要满足的是CAP理论里面的CP理论,主要也是保证了数据的强一致,但是牺牲了对应的服务可用性,本来想说Kafka废弃Zookeeper,怕追问Kafka就没说,后续没追问19. 问为什么用微服务不用单点,我说我另外一个项目最开始就是单点,只实现了一个类似于Lucene的架构,后来服务比较多了以后导致如果有一个模块挂了整个就全挂了,所以就用微服务改造了一下,这个就直接上微服务了,没继续追问20. 又问ES怎么使用,怎么创建索引,不会答,就说直接学的API,没学操作,后面提了一嘴怎么用,没听清21. 项目里面用过锁吗?我说没有,然后讲了一下MySQL InnoDB里面的行级锁,举了点例子,怎么防止出现幻读的情况,大概就是说了一下MVCC和行级锁这些,也没追问项目基本就记得这么多,但是比这个问的还要多,其他的记不清了,有印象就这些# 算法22. 无重复字符的最长子串,直接默写,3分钟秒了,问了一下时间复杂度和空间复杂度# 测试23. 问了点测试理论,答的好像不太行,后面又追问了一点,问项目怎么测试的,有没有什么印象深刻的地方,没太准备这些,答的不怎么样24. 后面追问怎么设计朋友圈的设计,除了性能测试以外其他都说出来了,然后说安全测试怎么防止别人删你的朋友圈,我说肯定要验权限,只有比你高的权限才能删你的朋友圈,平级的不能删,点了点头没追问25. 问我有没有做过性能测试,我说只用过webbench,其他的没用过# 反问25. 什么时候出结果,答曰1-3天26. 面试官问我是大三升大四吗,我说我现在开学是大三,问我为什么这么早出来实习,我说感觉学的还可以,想实际体验一下开发流程,问我能实习多久,我说能一直实习,问学校没课吗?我说学校课少,期末考试回去考一下就可以,点头没追问后面面试官感觉有事,已经抱着电脑出会议室了,就没再继续问
查看27道真题和解析
0 点赞 评论 收藏
分享
早上起来发现已经8月1号了,感到时间过的很快,之前一直有每个月总结的习惯,突然发现从去年8月总结到现在,已经总结正好一年了,再加上这个月过的非常快,因此决定把总结写到这里,大佬轻喷,求指点看了一下上一条动态是6月13日写的,那会基本写出来了一版简历,投递无果后向牛友求助,也是得到了不少意见,后来应付学校的期末,也就没再过多学习,所以基本可以说是从6月中旬到现在的一个总结也不为过下面是现在更新后的简历1. 7月看别人的项目用到了gRPC通信实现的微服务分布式架构,比较感兴趣,所以第一个就是学了一下gRPC分布式,然后也优化了一下项目,把架构升级成微服务模式(不得不说cpp在Linux安装gRPC真是费死劲,要不然是版本不兼容,要不然是下载不下来,要不然是编译出问题),也做了一个Qt的项目,看了一下大佬的Qt做法,光是界面UI的处理就学到了不少,还有各种事件处理的方式2. 现在网络学习资源非常多,小林coding,阿秀的网站都有相当多资料,之前也是看了小林的网络Redis和MySQL进行查缺补漏学习,但是也没系统性总结,7月做的另外一个大工程基本就是进行了规范总结,用思维导图画了不少框总结出来,总体来说不管用处大不大,基本的思维框架还是搭建起来了,也在阿秀的网站看了不少八股,阿秀网站以问答的形式写八股,小林主要是系统的写文章,总的来说搭配起来我感觉效果还是比较不错的,思维导图这些也都公开到了个人博客里面,也有网盘的链接,大佬看了后如果有建议也可以尽管提3. 搞了一个域名,不过现在还在备案,截止目前还没通过,听说是不能进行访问,也切断了解析的功能,不知道什么时候才能备案成功,正常进行访问4. 7月学了不少分布式,但是总的来说不知道有什么学的方向,在b站看到了mit的课程,还没系统学习,也不知道怎么学,不知道从哪里下手,这两天主要在看分布式事务,柔性刚性事务,Seata这些概念,感觉看了也不知道怎么用,现在对于分布式的理解停留在服务之间进行的RPC调用,进行解耦合的概念,求大佬指点5. 分布式里面大量用到了消息队列的概念,再加上本身我的项目里面也带有消息队列的项目,所以直接干脆学了一下消息队列,没详细跟着书学,主要是看了一下视频和一些八股,对比了一下RocketMQ和Kafka,简单看了一下RabbitMQ,感觉大家还是相对推崇RocketMQ和Kafka,不知道是不是拉取模式的原因?但是也没怎么实践,只是偏理论的学习,可能后续还需要想想办法找点相关的项目看一看,起码写写demo理解一下吧6. 剩下就是比较常规的项目了,总结一些博客,刷了刷力扣,主要是刷了一下SQL题和hot100,SQL题还是很多写不出来,总怕面试的时候问SQL傻眼,但是SQL真的好难7. 也看到了网上的不少消息,也有观点认为,cpp不应该全部梭哈互联网,可以把目光放到制造业工业这些领域,相对来说薪资待遇没互联网高,但相对稳定,不知牛友有没有在这些领域有开发经验的,求传递一些经验,提前表示感谢总体来说,感觉7月应该是人生过的最快的一个月了,基本节奏就是早上起来运动一下,回家吃完早饭就开始学习八股,中午午休2个小时,下午继续干,晚上刷刷题就该睡觉了,也和朋友出去玩了两次,同时也求大佬指点:1. 分布式在面试场或者是在实际的开发中需要具备什么知识,如果想在项目体现需要具备什么能力2. 如果选择去非传统互联网,走cpp这样的技术栈是否还通用呢?3. 简历是否还有优化的建议,个人可能倾向于进去公司后转语言写后端,也学过用python进行selenium测试,还是比较倾向于学后端#我的简历长这样##双非本科求职如何逆袭##如何写一份好简历##简历中的项目经历要怎么写##总结和分享#
创少:小林coding等都不够,相当于别人总结好。最好去看第一手资料(计算机经典书籍),如操作系统导论,mysql是怎么运行起来的,回答八股才有自己的理解
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务