5.9 AutoMQ暑期实习二面

又是最难绷的一集,本以为一面挂了,没想到第二天就约二面,谁知道二面竟是我经历的面试中最难的一次,面了足足一个多小时(没有做题)

不管结果如何,这次确实学到了很多

  1. 自我介绍;
  2. 介绍做过的项目?
  3. 你的项目是什么类型的,有其他人使用过吗?项目的类型?用户是什么?
  4. 有什么比较难的问题?怎么解决的?
  5. 缓存一致性的方案?有绝对的缓存一致性吗?
  6. 除了难题这个还有吗?
  7. 怎么实现计数统计的?为什么需要缓存?
  8. redis是通过什么指令计数的?
  9. 分类和标签是什么?为什么需要放入缓存?
  10. redis缓存能处理高并发请求的上限是多少?
  11. 如果只有一个redis服务器,又有上千万的并发请求?应该怎么做?(高并发怎么解决?)
  12. 登录认证怎么实现的?具体流程?
  13. 前端怎么判断用户是否完成登录?
  14. 半长连接是什么?和websocket有什么区别?是什么协议?为什么能够实现从服务端向客户端发送消息?
  15. 自动登录是在前端还是后端实现的?具体实现的流程?
  16. 服务端怎么拿到用户输入的验证码的?是怎么找到他所需要的半长连接的?用什么来存储这个半长连接的?如果服务端部署在了两个服务器中,还能登录吗?如果服务器宕机了,那么还能找到对应的连接吗?
  17. 事务的四种隔离级别?他们有什么区别?分别在什么场景下使用?你说的这些的mysql中的事务,还是通用的?
  18. mysql的可重复读能够解决三个问题吗?(为什么?)
  19. 并发事务的会带来哪些问题?不可重复读和幻读有什么区别?不可重复读包括幻读?
  20. 索引创建的原则?数据量比较大创建索引,这个大指多少?控制索引的数量,因为会导致增删改的速度变慢,这个数量又是多少?
  21. 什么情况下需要使用联合索引?联合索引的使用注意事项?比如姓名和性别,应该哪个放在前面?如果两个都会单独查询,应该哪个在前面?加入查询的概率一样,应该哪个放在前面?
  22. 什么情况下索引会失效?
  23. 如果要查询数据,应该用哈希表还是树?

更新,第二天boss上问了面试官,已经挂了
全部评论
请问你有做那个在线编程吗?那个怎么是个会议链接啊?
点赞 回复 分享
发布于 2024-06-18 18:53 陕西
好难啊😦
点赞 回复 分享
发布于 2024-05-16 00:14 陕西
兄弟过了吗?
点赞 回复 分享
发布于 2024-05-13 19:36 安徽
挺细节的,这种面试雀实会有提升哈哈,挺好的,祝你通过
点赞 回复 分享
发布于 2024-05-10 21:32 安徽

相关推荐

随着我毕业以后进入职场接触正式的开发和对大学知识的实际应用,我最近半年有了一些个人的心得体会,我想和各位牛客的小伙伴一起分享一下。第一点就是我认为进化程序员全栈是一个很重要的发展方向,以后纯后端或者前端的程序员岗位会越来越少。我是这样认为的,现在ai大模型对于辅助编程有很大的帮助,掌握一个新技术需要的时间会大大缩短;而且最近大环境不好,老板们都想画一分钱招一个能干两个人活的程序员;而且据我观察很多ai新贵公司,比如月之暗面,deepseek等公司除了算法开发他们也招业务开发程序员,但他们都招全栈,在这种新锐公司的影响下我认为未来几年全栈一定会是个重要的改变。我个人本身是Java后端得方向,现在也在学习vue相关的内容,我认为不管是vue还是react,后端程序员至少手上也要有个前端的活。第二点就是关于微服务我的看法发生了改变,就拿我个人来说吧,我之前认为springcloud框架是springboot的升级版,但我现在明白了微服务是在业务量很大,团队规模很大的情况下把业务做到拆分,方便团队责任的划分和沟通。我在真实的企业进行开发的时候发现其实市场上大多数公司其实根本用不到微服务,第一是开发团队没那么大,第二是QPS也没那么大,根本用不到微服务熔断降流的那一套,很多时候加个Redis做缓存就不错了。所以说我目前认为微服务只是单体服务的一种版本,而不是升级版。我目前的技术库里面重点要求自己能吃透springboot,MySQL,Redis,kafka,es这五大技术,学的简单一些,大道至简。微服务那一套我打算稍微放一下,而且就算学习微服务也不能只看表面,微服务常见的场景问题,比如Redis的缓存雪崩,消息队列的延迟支付,部署的CICD问题也要重点掌握,就是学微服务不能只学微服务,也要看清这个技术真实的实际价值和优化的问题。第三点就是关于ai方面吧,现在程序员all in AI是个大趋势,不过也不要被网上的答案所迷惑,说什么现在AI可以完全取代程序员都是完全骗那些不懂编程的人说的话,如果我对编程完全不会,那我如何用专业术语给AI写提示词都不会,而且很多时候我用AI辅助编程都不敢完全信任,很多时候AI都是一本正经的胡说八道,很多时候我都是百度加至少两个AI,这个得到的答案才比较正确。而且很多时候AI只能回答简单的问题,说白了就是顺风强,但打不了逆风仗。一遇到很多意想不到不过的时候AI就知道说一些片汤话,而问百度就能在你意向不到的地方指出问题。在正式开发的情况下,没报错比有报错还难定位bug,有个AI只能说比查百度快,控制台有报错把日志一输入就很容易给出答案,但距离完全取代程序员还有距离。只能说AI降低了程序员的标准,让一个六十分的程序员也能达到八十分,或者是高级程序员配上AI就不需要初级程序员了,但并不意味可以完全取代程序员。第四点就是很多小伙伴进入新的公司被导师安排一个任务,里面有的技术可能之前没有接触过,到了截止日期没有完成,最后被导师批评或者被辞退。我今天就坦白说一下实话吧。要聊这个问题之前我想给大家明确一个概念,工作中的任务分为硬仗和虐菜。就比如说前端有个技术叫echart,这个技术你的导师天天在用,公司的业务也可能只用其中的某几个模块,那么对于你的导师来说这就是虐菜,因为孰能生巧,使用这个技术并结合公司的代码对于他来说就跟吃饭一样。但你以前没有接触过这个技术,就算开资料勉强快速掌握了也不一定就能结合公司的代码很好的用出来,那对于你来说就是硬仗。所以你看看,一样的任务,对于不同的人就是天壤之别的难度,所以也就算没搞出来被导师批评或者被辞退都不要怀疑自己不是当程序员的料子,只能说这个导师的不适合带新人或者公司的培养体系不健全。我们面对这种情况要做的就是提高快速学习能力和借助开源项目的能力,而且很多时候可以跳过你的导师,和你的+1领导去谈这个需求任务,从源头了解为什么有这个需求,为什么用这个技术,从源头理顺思路其实更有效率。就比如说我的第一份实习,我的导师当我完成一个基于Redis缓存token的登录系统的demo,然后我在网上找到了jwt这个token生成的中间件,然后我跟导师讨论一下,他居然说我找到的jwt这个东西是敷衍他,网上随便找个玩意骗他的,然后就把我辞退了;很多时候其实你的导师技术能力和学习新东西的能力很可能还不如你,只不过他手头的技术栈是能每天给公司产出而已,其实现在想想我当年的第一个实习导师技术简直差的令人发指,都2023年居然不知道jwt这个小技术,别人提出这个技术他居然还当场觉得下不了台就把我辞退了。以上四点就是我想跟大家分享的一些内容,如果大家有其他想法可以评论区发一下,以前讨论讨论。
投递百度等公司10个岗位
点赞 评论 收藏
分享
评论
10
46
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务