#

Java

#
4516745次浏览 60863人互动
此刻你想和大家分享什么
热门 最新
03-26 00:31
已编辑
吉林大学 后端
26届美团暑期实习后端开发一面面经(面完马上约二面)
总结:项目+算法+围绕简历问八股,感觉是贴主面得最差劲的一次,比之前的腾讯和阿里都要差(背的八股记得不太熟练),结果面完不一会就约二面了有点出乎意料,3.25已oc#美团# #美团求职进展汇总# #Java# #后端# 首先自我介绍还是老套路把面试官往项目上引1.问在项目中参与的角色,以及为什么做这个项目答:个人项目,参照开源项目做的,为了深入学习Spring开发流程(略)2.你在项目中redis和数据库的一致性保障怎么保障答:采取“先更新数据库,再删除Redis缓存“的策略,引入消息队列,让消费者来删除缓存,如果失败可以重新消费,这种重试机制进一步保证了一致性。(补充:还可以通过订阅MySQL的binlog,用里面的数据库更新信息来操作更新缓存)3.采用Kafka作为消息队列如何就能对系统进行解耦呢?答:Kafka采用异步通信形式,将生产者和消费者解耦,生产者将消息发送到Kafka,消费者从Kafka中读取消息,生产者和消费者不再直接依赖于对方的实现,彼此之间不需要知道对方的存在,只通过消息队列来传递信息。这种模式使得两个系统之间的耦合度大大降低4.那了解Spring微服务框架吗?答:不了解,我的论坛系统项目是基于Spring Boot开发的,没有使用Spring Cloud5.那Spring Boot和原生Spring之间有什么差别答:原生Spring配置起来更为复杂,需要写很多的xml,而Spring Boot配置更为简单,开发起来可以更注重于业务逻辑而不是繁琐的配置6.问项目二,你为什么会想去自己手写一个Spring框架答:深入自己对Spring框架的理解,进一步的了解他的底层7.那Spring的IOC你是怎么理解的答:(我把IOC和依赖注入一起讲了,后面面试官提醒我只需要讲IOC),就是把需要自己通过代码进行管理的对象创建和依赖关系管理交给Spring容器,这减少了应用程序中的耦合度,提高了代码的可维护性和扩展性。8.面试官发现我简历上手写Spring框架采用了TDD开发模式,说她们自己在工作中都很少会用到这种开发模式,感到很惊讶,询问我为什么使用TDD开发模式?(我跟着卡哥做的手写Spring,跟着用的TDD)答:背诵了项目面试题里的TDD开发模式流程与好处9.其实我只是想问你是因为什么导致你去采用这个TDD开发模式答:(答了好处居然都不好使,我瞎编说是浏览文章时学习到了这个开发模式,所以就想应用一下试试看)10.那你应用完这个开发模式后学到了什么?答:因为是先写测试用例再写逻辑代码,使得代码错误率降低,开发出来的代码质量更高,学到了以后写代码前都认真准备相应测试用例,避免出现更多bug11.jvm内存结构答:(之前背过但有点忘了,甚至因为试图去想起来的时间太久,面试官还调侃我刚刚不会是去问ai了吧)粗略说了堆区和栈区12.看你项目中用了ThreadLocal,说说用在哪答:说在论坛项目中,获取当前登录角色,使用ThreadLoacl使得每个线程都能获得一份互相独立当前用户副本13.那ThreadLocal的实现原理呢?答:(之前用的时候粗看过,但是后面忘了)老实交代不熟悉14.那你在项目中使用了哪些设计模式答:创建Bean使用工厂模式,实现JDK动态代理和CGLIB代理使用了代理模式,许多代码块使用了模版方法模式,实现MVC时请求的传入处理过程采用了责任链模式15.责任链模式优点答:解耦,将每个阶段独立开来,可以对此进行单独配置扩展16.那你使用责任链模式的时候,要是我中途一个阶段出现了问题,我前面的数据怎么进行回滚答:(完了盲区)老实交代我做的MVC处理请求这里没有涉及事物的回滚,这方面我不熟悉17.那我在一个代码块里大量使用了if-else,采用什么设计模式优化好答:策略模式,将不同的逻辑封装成不同策略类中18.数据库的隔离级别了解吗?答:Read Uncommitted,Read Committed,Repeatable Read,Serializable19.Repeatable Read具体是啥,怎么实现的答:可重复读,就是多次读取数据是一致的,通过加共享锁和排他锁,或在MySQL中通过mvcc实现,原理就是通过read view...20.那什么是排他锁?答:施加了排他锁的数据,在给他施加排他锁的事务释放锁前,其他事务都无法读或写该数据21.那你举例一个发生死锁的场景,并说解决方法答:没答对(面后补充:假设这个数据库隔离等级为可重复读,比如我在一个订单表里,每次插入操作前想保证操作幂等性,先查查表里有没有这个id的订单,就执行select。。。for update,这时有两个不同的事务一个查了id为1007的,一个查了id为1008的,这时候两个事务在查找for update时都获取了间隙锁,因为间隙锁是可以兼容的,所以两个表都获得了,但是后面两个表要执行插入操作前要插入意向锁,但是意向锁不兼容间隙锁,两个事务都在等待对方释放锁,就造成了死锁。除了在设计层面避免出现死锁的场景,在发生死锁后可以通过设置事务等待锁的超时时间,超时则回滚避免死锁,或者添加死锁检测机制,检测到系统死锁就对事务进行回滚)22.MySQL的索引了解吗?一级索引二级索引说一说?答:了解,(八股背少了,一时没想起一级索引二级索引是啥)说了个主键索引和非主键索引23.索引的底层实现是什么?答:B+树,数据存储在叶子节点,节点直接像链表一样用指针相连,对查询范围数据很有效24.(很明显对我MySQL不太满意)你们学校学MySQL了吗?Java呢?答:学了MySQL,但Java是选修课25.(面试官默认我是研究生,其实我是本科生)那你在学校实验室里和导师做哪方面研究呢?答:说自己是本科生,没有导师做研究26.那你在学校有和老师做什么研究吗?答:有个大创项目,是无人机路径规划,但是是机器学习方面的,不是我的侧重点27.那你实习能实习几个月,一周来几天?答:我说我不是研究生学校束缚不了我,可以四月干到九月,一周出勤五天及以上28.你自己的优势?答:对新技术的学习比较热爱,学习能力和规划能力比较强,比如我的项目,Java以及Spring相关的学习都不是学校教学的,是我通过自己指定计划自学的,再运用到实际开发中来。29.那你是怎么自学的?答:csdn找文章,b站找视频,制定好学习路线,通过跟着视频、文章,或者阅读Spring的官方手册文档,循序渐进的进行学习30.算法题又是快速排序,之前腾讯面试也是快速排序,给了十五分钟5分钟不到速通了,原本十五分钟后差不多就到时间了,后悔写太快了,导致后面问我有没答出来的31.Redis缓存穿透、缓存击穿、缓存雪崩,及其解决方案答:Redis三剑客,八股照着背32.Redis主从复制答:有主服务器和从服务器,Redis会将数据从主服务器复制到从服务器上,哨兵机制保证主服务器宕机就切换到从服务器,这样不至于主服务器宕机后Redis就无法使用33.看了简历上写了GC,就问GC的的垃圾回收器有哪些答:(后悔了面之前简历没有背牢)答非所问的回答了垃圾回收算法,因为回收器我记不得了只记得算法34.你使用Kafka有遇到重复消费吗?重复消费会怎样?答:重复消费会导致通知推送多次,比如QQ发一条消息应该只推送一条通知,重复消费的话推送多条通知35.(面试官之前问出来我MySQL掌握不牢,最后两分钟继续发问MySQL)那sql如何优化?sql执行后底层是怎么样的?答:瞎说了几个感觉的sql优化方式,然后执行后底层回答不知道(面后补充:sql优化首先从索引入手,可以尝试使用覆盖索引,这样可以避免查询时使用二级索引引发的回表问题,插入数据时多行插入,以及为数据库引入缓存等;以一条select语句为例,首先MySQL由Server层和存储引擎层组成,首先在Server层先经过连接器,通过用户输入的用户和密码尝试建立客户端与服务器的连接,连接完成后进行第二步,第二步查找缓存,Server以键值对的形式存储sql查询结果,key为sql语句,value为查询返回值,如果查找到对应的key则直接返回value,否则进行下一步,但是这个查找缓存的功能在经常更新里的数据库很鸡肋,在MySQL8.0之后就被删掉了,然后呢就Server层的解析器,解析SQL语句,首先进行词法分析,提出select,form这样的关键词,然后对sql进行语法分析,判断语法正确与否,正确就构建SQL语法树,不对直接返回报错,正确之后呢就进入SQL执行过程,首先预处理阶段,看看是否有这个表或是否有对应字段,然后进入优化器阶段,确定SQL的搜索方案(就是根据索引搜索成本选索引),然后执行器和引擎交互执行SQL。然后在引擎方面,如果select传进来是主键,就直接在主键索引建立的B+树,由根节点进行二分查找找到主键key的指针,再递归指针指向的节点,找到对应数据返回,如果传入的是二级索引,则要在二级索引树上找到主键索引再去重复上述过程,最终将找到的结果返回给客户端。)反问流程:感觉自己面得稀碎,都不好意思反问,直接道谢下播了没想到刚面完一个多小时,美团就来电话约2面了
嵐jlu:贴主会更新每一个面试的面经,可以点进贴主主页查看其他面经(都会写的详细),可以关注我获得最新面经通知。
点赞 评论 收藏
分享
03-20 12:57
已编辑
吉林大学 后端
26届腾讯QQ暑期实习后台开发一面面经
#腾讯# #腾讯求职进展汇总# #腾讯2025实习生招聘# #计算机# #Java# 贴主会更新每一个面试的面经,可以点进贴主主页查看其他面经(都会写的详细),可以关注我获得最新面经通知。总结基本纯八股,基本没有问项目,算法两道贴主的第一次面试(3.11图里是3.10是因为延后了一天),全程十分的紧张。首先面试官让自我介绍,应该是想从我的的介绍里引出问题,可是过于紧张只介绍了自己目前的大学大三的一名软件工程学生,没有谈到任何项目和获奖经历,面试官听完我讲完愣了一下,才开始转入面试1.现在主推语言(先说大二Cpp,大三做项目转Java)2.介绍一下java中的集合(先紧张卡壳了一下,然后讲了Collection和Map两方面,讲到Map的时候面试官继续发问)3.说到HashMap,他是线程安全的吗?(回答不是,然后说有CurrentHashMap有线程安全)4.CurrentHashMap怎么保证线程安全(回答使用了分段锁,介绍了分段锁机制)5.那除了你刚刚说的CurrentHashMap还有什么方法保证HashMap线程安全(又答了个synchronizedMap,也是通过锁的机制保证线程安全)6.那还有使得HashMap线程安全的其他方法吗(没答上来)7.那CurrentHashMap相比于synchronizedMap,通过不同的加锁方式,哪一个性能更好(这我不知道也没答上来)8.HashMap怎么解决冲突(细说了拉链法解决哈希冲突,提到了哈希表变大之后会变成红黑树存储)9.红黑树应用于哈希表性能好在哪里?(我从时间复杂度上解释O(logn)优于O(n))10.还有其他的解决哈希冲突的方式吗?(想起来有线性探测法,但是说不出详细的)11.查看简历后询问mysql包含哪些索引(组件索引,普通索引,唯一索引,全文索引,然后说了下索引工作方式)12.mysql常见存储引擎(InnoDB,介绍了innoDB的机制)13.InnoDB的底层数据结构(B+树,说了B+树的结构)14.为什么不用B树呢?(先说B+树相对于B树的优点,其中提到使用B+树磁盘读写性能更高)15.怎么使得读写性能更高?(从B+树存储和查找原理入手,B+树叶子结点存储数据,非叶子结点存储索引,从而使得每个节点存储更多索引信息,降低树的高度,B+树进行查找路径更短,所以磁盘读写操作更少)16.详细讲讲为什么范围查找性能更好?(从B+树节点有序相连入手,叶子结点通过指针相连形成有序链表,使得查询一旦找到要查的的范围起始点,就可以沿着链表顺序快速访问,而且B+树结构非常适合二分查找,相对的时间复杂度会更低)17.说B+树的时候提到了Redis也应用了有类似于B+树优势的数据结构,面试官直接抓住发问Redis使用情况(讲了项目里对Redis的使用)18.Redis常用的数据结构(String项目里用来存储用户信息,set项目里使用来管理帖子赞踩以及并集管理共同关注,还有list和sorted set)19.那Redis里的Hash你有用过吗?(又是Hash,这部分我背的不熟,老实交代用的不熟练)20.Sorted Set的底层数据机构是什么?(先想起来有一个跳表,面试关追问还有吗,想了很久说压缩链表,并说只知道名字,不知道具体实现,因为我前面说到的都细致解释了)21.问Redis持久化机制(回答两种,RDB持久化和AOF持久化)22.马上询问RDB底层的运行原理和具体执行(说了自动配置和手动配置,提到BGSAVE)23.追问BGSAVE具体执行(老实交代只记得这个命令,对底层执行还不清楚)24.开始问计网,TCP和UDP(细说了TCP的三次握手和四次挥手和UDP传输快但是不可靠)25.TCP的头部结构说一下(开始按顺序说TCP的头部存储的不同参数)26.那头部里的校验和占多少位?(16位)27.http中403错误码什么含义?(禁止访问,服务器拒绝客户端发送的请求,权限或者资源问题)手撕算法,面试官调试腾讯会议上面的ide,调试了五分钟没搞好,让我自己直接在自己的ide上写十五分钟内完成快速排序和二叉树中序遍历用c++写,二叉树写的时候被要求不能用递归要用迭代法算法都不难,但是因为没有腾讯会议上的输入样例提示,面试官也没说具体的输入样例核心逻辑很快就写好了,但是样例的输入尤其是二叉树那里一时没处理好(向输入前序然后输出后序来着)到时候面试官上来说因为没有在腾讯会议上写,就不要求运行写输入样例了,要求我细说两个算法的逻辑即可28.快速排序——经典的分治算法,寻找一个基准数,将小于他的排左边,大于他的排在右边,然后递归处理左右两边29.快排稳定吗?(不稳定)30.细说快排不稳定的原因(依赖于交换操作,可能导致数值相等的元素排序后相对位置发生变化)31.说几个稳定的排序算法(冒泡排序、插入排序、归并排序)32.二叉树中序遍历——利用栈模拟递归过程,首先将根节点以及其左子节点一次入栈知道左节点为空,然后弹出栈顶节点,再将右子节点作为新的根节点,重复这个过程到时间了,让我反问,不知道说什么,就问面试官,这是我的第一次面试,您认为我的表现如何,面试官官方回答:”我只是如实的记录你的面试表现然后把档案给上面的leader进行横向评估,这不由我说了算而由leader说了算。“也不知道这样反问稳不稳妥,说出去的时候其实就有点后悔了,然后向面试官道谢,面试结束。
wuwuwuoow:说说我自己对这些八股的理解,有问题可以一起讨论: 1.CurrentHashMap,面试官应该是想让你回答 JDK1.7 和 JDK1.8 的实现区别,为什么 1.8 的更好?1.7 是分段锁,但是锁的粒度还是比较大。所以 1.8 做了改进,如果目标位置上的节点为 null,就先 CAS 把节点直接放进去,避免加锁。如果目标位置存在节点,就使用 synchronized 对“头节点”加锁,接下来读写链表或红黑树就可以保证线程安全了,因为只有一个线程能访问该链表或红黑树。总结就是 CAS + synchronized 更小的锁粒度 + 避免创建 Segment 节约内存 2.哈希冲突的解决方案。开放寻址法,在数组中找到下一个位置放入元素,常见的有线性探测、二次探测、双重哈希。在 ThreadLocal 中,就采用了线性探测法;拉链法,典型的就是 hashmap;扩容,hashmap 和 ThreadLocal 都有通过扩容的方式解决哈希冲突,会设置一个负载因子,比如 0.75,达到该值就扩容。一般就是「扩容+拉链法」解决,拉链法可以解决哈希冲突问题,但哈希冲突多了性能就差了,通过适当地扩容可以降低因哈希冲突过多导致的性能问题,但不限制地扩容又浪费内存。所以要在内存和性能之间做权衡
点赞 评论 收藏
分享
03-26 00:28
已编辑
吉林大学 后端
26届美团暑期实习后端开发二面面经(已oc)
总结:没问专业知识+闲聊+hard算法,36min(居然没问专业知识,一面感觉面得不好害怕是kpi面)#美团# #美团求职进展汇总# #Java# #后端# #美团二面# 最新进展:第二天就oc了自我介绍,大二Cpp程序竞赛省奖+国奖,大三做独立全栈Java项目1.你觉得C++和Java的区别答:回答语法方面差别不大,主要区别在内存方面,cpp需要自己手动管理内存,有内存泄露风险,Java中的JVM有GC(垃圾自动处理机制),不用自己手动管理内存,会自动回收不被引用的对象,但正是因为Java有GC机制和JVM,所以运行速度要比cpp要慢一些。2.那你学习JVM和GC有遇到什么困难吗答:我学习的主要是理论方面知识,比如JVM的内存模型,GC的回收算法和回收器,因为这些都是Java隐式执行的,不需要我自己去操作调用,只学习理论方面对我来说没什么困难,主要就了解他的底层。3.说说你在学校里最有成就的事答:说了大二研究算法最后获得省奖、国奖;和大三独立做项目,花很多时间去学习新技术,最后项目功能完善的成功上线,获得巨大成就感4.问我项目的开发过程,为什么我独立做,没有其他组员协助答:老实交代以宿舍为单位分组做,舍友学习进度没有我相对那么好,也没有我那么热爱,就一个人做5.你不会不爽吗?不去压力他们吗?答:都一个宿舍的,和睦一点很有必要,我有能力多帮帮他们也挺好的6.那如果你入职之后,组内有成员也不做事,让你多做,你会怎么办答:如果他一时间抽不开身,我可以帮帮他多做一点,要是他一直这么干,我就要反映给领导了7.你们宿舍的人打游戏吗?你和他们一起打吗?答:都玩,但是我没和他们一起玩8.你玩游戏多吗?都玩什么游戏?答:玩的不算多,最喜欢玩《炉石传说》,有闲暇就会玩两把,从初中就开始玩了9.炉石传说是偏策略的对吧?那你在项目开发中,有别人提出什么意见吗?你又是怎么做的?答:有的,我会和班上其他高手一起讨论项目的开发,比如我的项目系统最先是将用户密码明文存到数据库的,但是和其他同学讨论,他们说我这样存不好,我就参考了他的意见,最后采取MD5加密与加盐的方式将密码以加密的形式存到数据库,这样即使我的后端数据库被攻破,也无法从中直接获取用户密码,进一步确保用户信息安全性。面对别人对我方案提出的意见,我都会虚心的接受,然后一起纳入我的考虑范围,我觉得别人能给我提意见这是很好的,能帮我考虑的更周全。10.你现在在长春是吗?老家哪的?答:是的,老家广c人11.你平时喜欢什么体育锻炼,来释放自己的压力?答:之前有健身,但是后面沉醉于研究算法和做项目,就有段时间没去了12.如果现在让你入手一个新项目,你会怎么入手?答:首先去阅读项目的文档,了解这个项目运行的基本逻辑,掌握项目的使用方法13.还有呢?答:假设我接手之后要负责后端数据库方面,那我就去仔细了解后端数据库方面的逻辑与构造,然后根据需求或者发生的问题去针对性的作出更改14.如果项目里有涉及新技术呢?答:新技术的话我反而会比较兴奋,因为我开发项目和做算法都是一直在学新的东西,还挺喜欢新的技术的,一门新的技术出现,我会去查资料、看文档、看相关视频,尽快的把这个新技术消化,然后运用到实际项目中来15.你实习的话能几月到岗?答:我说我时间比较自由,4月就可以到岗,可以干到9月、10月16.那你学校的课程呢?答:我说我必修课已经修完了,现在只剩下选修课17.选修课没有要求吗?答:说选修课教的都是很过时的技术,比如20多年的JavaWeb和jdbc,为了拿到学分我只需要完成期末的大作业就行,远比不上去企业学习前沿的技术来得实在18.算法题:LeetCode 25. K 个一组翻转链表(查leetcode前都没发现居然是hard算法,还以为是mid)这题是写过的,还是和之前一样速通ac了,耗时6分钟这时候才过去半小时,面试官让我反问:1.面试官负责什么业务?2.实习薪资如何,能负担得起我过去租房居住吗?结束,许愿oc,求求别是kpi面!
不要开盒我:问这种基本上是稳了
查看18道真题和解析
点赞 评论 收藏
分享
四战字节依旧败了 面经分享
部门:字节云一面:1. tcp和udp的区别2. tcp三次握手,为什么需要三次3. tcp四次挥手,为什么需要四次4. 了解哪些拥塞控制的方法(慢启动,拥塞避免,拥塞发生,快速发生)5. 讲解一下慢启动和拥塞发生6. 个人经验角度来讲,如果发生了问题如何去排查7. 讲一下继承和多态8. 类加载的过程9. 双亲委派机制, 这个机制的作用是什么10. threadlocal内存泄露问题11. 慢sql优化的思路12. 假如我是一个完全不懂redis的人,你给我讲讲这个为何要选用redis来实现分布式锁和好处13. 建数据库表的时候,如何思考字段的类型14. varchar和text的区别15. 分布式链路追踪,该在哪些位置打点呢,如何思考16. 手撕:反转字符串 编辑距离 17. 是否了解 service mash二面:1. 配置中心的服务端是否考虑主从2. 那同步配置的时候是否会出现时延的情况3. git的原理4. 热更新的时候会出现流量的中断吗?5. 本地缓存设计的考量6. 如果要设计一个注册中心要考虑哪些方面?7. cap8. raft算法9. 手撕: 判断是否存在一个长度大于等于3的递增的子序列,要求on时间复杂度败后反思,预计是这个二面的算法,刚开始只写了on^2的算法,面试官让优化,这一块用了一定的时间。#字节跳动# #Java# #面经##牛客创作赏金赛#
字节跳动二面426人在聊 查看26道真题和解析
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-10 14:44
已编辑
携程暑期实习 Java 一面面经
咩咩子_:缓存击穿两种:要么逻辑过期 然后异步重建,要么加锁 静态变量是在准备阶段开辟空间,赋初值,然后在类加载的初始化阶段赋值,是保存至方法区的,也就是metaspace;如果是静态常量则是在准备阶段开辟空间 + 赋值 redis在集群部署有数据不一致问题,可以用redisson的redlock基于raft协议来实现加锁,性能稍差
查看8道真题和解析
点赞 评论 收藏
分享
03-28 19:27
已编辑
重庆大学 Java
淘天一面
电话面试,中途还因为手机没电的原因断线了几分钟,不过面试官是个大好人主动打回来了😭1、进程与线程的区别2、进程和线程的关系3、多线程场景下会有什么问题4、具体一点呢,这个数据是哪里不一致的(我说的是CPU三级缓存和主存不一致、MESI协议)4、进程通信的方式有哪些(漏了socket,不过面试官提醒了)5、tcp和udp的区别,各自的优缺点6、tcp的滑动窗口和拥塞控制简单介绍一下(滑动窗口没说好)7、介绍一下二叉树8、平衡树的概念以及优点9、树这个结构在数据库中应用最广泛的地方是什么10、聚簇索引和非聚簇索引这两个概念有什么区别11、MySQL中一个表中id是主键,这个主键是聚簇索引吗(直接说了是,但是后面看来面试官说的是MySQL,但没说是InnoDB,如果是MyISAM就不是了)12、那select这张表where id = 1这个语句的查询计划是怎么样的或者说它是怎么从索引找到整行的数据的13、那这个是只要查到叶子节点就能查到这行所有的数据对吗14、那我们现在有一个普通的索引,叫name,然后查询条件时where name = 什么什么,那在刚才的执行流程上它会有什么区别,它在哪一层开始有的区别15、那有一个联合索引name 和 age,还是刚才的查询,能用到这个索引吗16、简单介绍一下快排的思路和伪代码,那快排的时间复杂度是多少17、介绍一下项目吧18、手机没电了,你不许介绍😡19、给手机充电,并且重新开机20、等面试官回电话,因为太紧张了,介绍到一半卡死,面试官还安慰我别紧张,给我时间缓一缓21、先更新完数据库后异步更新缓存有什么数据一致性的问题22、怎么避免消息重复消费23、假设现在消息中间件是集群部署,消息发送的时候哪条消息先到broker是不确定的,消息消费的顺序性无法保证,在数据库更新完成的情况下,怎么保证缓存更新的最终一致性(面试官说加分布式锁,然后更新缓存的时候回查一下数据库里的数据,得到数据库里的正确的数据就好了,不用管消息顺序的问题。我的理解是这个异步消息就是一个通知,本身没有携带什么要更新到缓存的信息,也不用管消息重不重复是否顺序,只是收到这个消息就回查一下数据库把数据库里的数据刷到缓存就行了,不知道对不对)24、你用游标分页解决深分页的问题是怎么做的再次感谢面试官,没答出来的也会说没关系,也在一直给提示,是我太菜了😫更新,今天晚上约二面了,这居然能过,我给一面面试官哥哥跪了#淘天一面# #后端# #Java#
淘天集团一面209人在聊 查看22道真题和解析
点赞 评论 收藏
分享
26届 Java日常实习timeline
中上985本 软件工程 练习Java将近两年半暑假开始背八股,小林coding三刷(os只看了两遍),JavaGuide大部分三刷,面试鸭都过了一遍,lc  200+。11.1开始大面积投大厂(除了字节美团)结果将近一周都没有回应,后来才知道官网投递是效率最低的方式。过一周后开始在ssob上大面积投。11.8 美国道富 一面 ssob oc拒11.11 快手电商 一面 官网 挂 因为是第一次大厂面试 有点紧张而且部分八股没覆盖好 手撕是岛屿问题和判断两个二叉树相等11.12 阿里健康-小鹿中医 一面过 ssob11.12 高德 一面挂 ssob 八股比较基础 都打上来了 但是手撕很简单的没撕出来 所以挂了 比较可惜11.14 喜马拉雅 一面挂 ssob 八股答的好 但是手撕没写出来 是买卖股票问题的一道题 两次买卖的那道 当时没刷到所以没写出来 11.14 阿里健康-小鹿中医 二面后无后续11.21 快手商业化 一面过 官网捞起来的 八股打得很好 算法卡了一下 但是也写出来了11.28 快手商业化 二面挂 无八股 一些小场景 手撕快排 写出来了但是线上编译环境一致输出不正确 二面挂(面试官看着不太正经 体验较差)12.4 字节国际化短视频直播 一面过 官网 结合项目问场景和八股 手撕是岛屿问题12.9 字节国际化短视频直播 二面过 一直在问场景 有点被拷打 手撕是二叉树层序遍历 最后也是过了12.16 字节三面 一直疯狂场景:亿级点赞系统设计 缓存设计 冷热数据 手撕是之前快手一面手撕原题 秒撕 最后还是挂了 应该是场景答的一般 内心比较崩溃#Java#12.20 Momenta 数仓 一面 内推 纯做题 三个sql 两个手撕 最后挂了 可能是手撕没撕好12.23 字节复活后一面 无八股 sql题+智力题+中序和前序遍历构建二叉树 sql很简单但是卡了一下不太应该 智力题没整明白 第二天感谢信12.25 中科软 一面oc 后来才知道是个大外包.....12.26 唯品会一面 ssob 手撕+八股+场景 手撕没ac但是也过了12.26 华为一面 官网 八股+手撕都挺好 面试后5min通过12.27 杭州每刻 一面oc12.28 京东一面过 四十分钟八股盛宴 发挥比较完美12.28 华为leader面 沟通过程中ld说部门不是搞Java的 所以当场就说没意向去了 故挂1.2 车来了 ssob 一面oc1.3 京东hr面 当晚电话oc1.7 京东offer 1.7 唯品会 二面拒总结下这两个多月:boss上投了有500以上 官网上投递了20+大厂 其中boss上都是些小公司,官网约面的只有字节、快手、京东,大厂面试寥寥无几(可能是本人没有好实习经历的原因),其中快手二面挂、字节三面挂都蛮搞心态的。甚至深深陷入了自我怀疑,经常半夜睡不着觉。但最后的京东也是靠扎实的八股拿下了,也是将自己从无尽的焦虑中解救了出来。对于日常实习个人摸索出了一些经验:八股大部分都比较常规 不会有特别深入底层的 基本都是八股网站上比较重点的(小林coding+javaguide吃透就足够) 对于算法(手撕)一定要准备好再去面试!!!因为就算八股答的很好 手撕写不出来也会寄 本人高德 喜马拉雅就是因为lc当时没刷好挂掉的 至少也要lc 200道(代码sxl+hot 100)熟了以后再面 的话 90%的概率可以写得出来。现在开始冲完全来得及暑期实习。补:大厂真的爱问场景题,尤其是二三面基本是场景居多,面字节的时候一二三面基本都是结合项目场景,完全没有八股,所以场景题还是蛮考验平时的沉淀程度的,所以八股不要只是背下来,要去多了解背后的原理(包括优缺点,为什么选择什么什么技术),多沉淀系统架构设计上的知识。而且最重要的一点!!! 不要对大厂怯魅,因为大厂问的东西也很正常 放松心态 相信自己的积累也可以拿下还有一点 日常实习真的运气占50%以上 有的岗位你来的早就是你的 而且有的面试比较水而且只有一面 说不定运气好就可以直接oc,要相信自己的努力总会有结果的
爱吃狮子头8:个人经验,一般boss上技术岗员工主动私聊要简历的比较稳
点赞 评论 收藏
分享
26届双非蚂蚁暑期实习一面(安全部门)
13号走的内推。18号下午打电话约面,3.19号下午四点开始面试。开局就先做了20分钟的笔试题。笔试题不是算法题,是那种场景题。例如给你一个订单Order类,使用Stream流对其进行处理,取出金额是前100的Order并进行排序,并且按照不同的订单类型拆出来多个List。只要不是算法题就直接拿捏了。之后开始面试⚽1.自我介绍⚽2.实习业务⚽3.你们这个项目的优势是什么,他解决了什么场景下的问题?        讲了一下一整个平台的技术演进历史,强调我们一整个平台的技术演进都是为了敏捷开发。这个项目的优势就是实现          了快速处理海量需求,避免了传统后端模式的发版测试流程。⚽4.代码热部署的技术选型是怎么做的?为什么不选择Groovy(包太重,6.8M对线上压力大,而且有学习成本)⚽5.为什么要对类加载器手动置空,仅仅依赖JVM的垃圾回收不可以吗?        线上脚本多,即使是测试接口也需要进行动态加载,残余下来的类需要被回收掉,降低元空间压力。⚽6.你说你们在测试接口的时候,会置空对应的热部署脚本的类加载器?如何做到的?            提供两个接口测试和部署,抽出来热部署的逻辑作为公共方法。在测试接口中进行手动置空类加载器让其回收⚽7.统计接口的调用量的技术是怎么做的?用了本地缓存+redis+MQ,有没有考虑到消息丢失和重复消费的问题?        强调业务更加关注数量级,接口调用量每隔一个小时进行调用。丢失一个小时的数据对于整体的接口调用量不构成什么大的影响。考虑风险和收益比没有做这个功能。⚽8.你认为你这段实习中,收获最大的是什么?       1.技术增长       2.理解业务,不同的业务有不同的适用技术和解决场景。自己在美团的这四个月会更加考虑一个业务下的解决方案。              追求风险和收益比,而不是死磕技术。比如在做接口调用量的时候,我一开始也会考虑幂等和丢失,在写代码上造             成了很大的困难,mt指导之后才明白不是所有的问题都需要从技术上解决⚽9.为什么不考研?        表明自己有自己的规划,将来要做知识付费和网络教育。考研只是手段而不是目的。我既然有自己的目标,那相比较          于考研来讲,尽早的进入一家优秀的公司,在四五年时间来进行快速的成长才是自己想要的。⚽10.频繁的full gc怎么看?    拉dump文件在本地分析,强调说dump是堆状态,因此拉dump文件的方式只能查看堆空间的oom,排查不出来   元空     间的,因为元空间在本地内存。但是元空间很好排查,基本就是加载的类太多了。到这里就直接爽了,面试官说最后在快速的过一下八股,这些应该对我都挺简单的。这话一说我就知道稳了。⚽11.讲一讲线程池的核心参数和对应的执行流程⚽12.在Spring 的框架中加一个AOP,他的实现原理是怎么样的?        这里引到了Cglib。因为前面有讲到java agent。这里提了一嘴Cglib底层是依赖于asm这种字节码修改框架。而Java           agent之所以可以动态的修改线上服务,其实也是因为使用了asm这个字节码修改框架。⚽13.SQL慢了你会考虑从哪些维度排查?    索引失效,索引选错,查的数据太多,数据库抖动(脏页正在flush到磁盘),多表join,查询的语句没有索引⚽14.在用mq的时候会考虑什么?数据预估不要把mq打爆。对应的业务场景允不允许消息丢失,允不允许重复消费,重试机制,死信队列,人工告警,配消费者和生产者的时候不要出现跨地域的情况。例如不要出现消息投递到上海的机器之后,北京的消费者进行消费。尽量选择同一地域的。⚽15.在使用redis的时候会考虑什么一致性问题⚽16.除了单例和工厂模式之外,自己还有没有用过其他的设计模式策略模式,简历中有提到⚽17.syn和reentrantlock的底层原理直接秒,和面试官多扯了一会AQS开放性问题:⚽1.平时有没有关注过大模型?知道底层原理吗?双非本科真是跪了,平时哪有接触过这个。和面试官聊了一下自己平时会用windsurf生成demo来学习以及借助windsurf看源码。⚽2.为什么写公众号,创作动力是什么?想做知识付费,大一大二的时候在tg和V2EX上受到过很多帮助,要传递热情。输出倒逼输入。⚽3.原创占比多少?我反问了一下面试官认为什么是原创,面试官说看我CSDN很多都是已经有的内容,问我是不是只是在做归纳总结的工作。向面试官表达自己在最开始的时候是写CSDN,当时刚开始学Java,也没有什么自己的思考,所以就像他说的一样只是在归纳总结。但是随着自己学习的深入和有一段美团实习之后,自己就开始全面转向微信公众号。开始输出一些自己的思考和对中间件源码的解读。举了一下自己写过的京东hotkey探测中间件源码的解读。表达自己认为自己的博客一共有两个阶段,CSDN是归纳总结,后期转向微信公众号开始正式做自己的内容输出。⚽4.对一段实习的要求是什么?有什么想法吗?⚽5.对工作地点在成都有什么什么看法?有了美团实习之后的第一次面试。很爽,自己也开始慢慢的表达自己对于一些观念的看法。和面试官聊的很不错,等待二面ing#牛客AI配图神器##牛客激励计划##蚂蚁##Java#
查看22道真题和解析
点赞 评论 收藏
分享
03-09 20:57
已编辑
中央民族大学 Java
字节跳动 tt 二面 3.5
更新,收到感谢信了-------------------------------------------------------1. 项目2. 数据一致性3. 如何减少系统之间的强耦合依赖?4. 如果两个不同的consumer消费同一个topic消息,有办法来保证两个消费者的有序性吗?5. 监听binlog如果消息发生了堆积,如何处理6. rocketmq如何保证的消息可靠性7. 如何进行的消息持久化? ack是否会对这个消息有影响8. rocketmq集群架构9. rocketmq master和slave的主从机制10. broker节点和nameserver的心跳包机制11. 如果broker节点挂了, nameserver起到什么作用12. redis主从 哨兵 集群13. redis集群模式下如果节点宕机,如何进行的收缩和扩容14. 在哈希环里面,如果访问到的节点宕掉,那这个数据就丢失了吗?15. 按你说的有rdb和aof持久化,那是说redis集群的数据可靠性要强依赖日志吗?16. 异步刷盘可能会导致数据丢失,以你的角度来看如何综合考量刷盘时机17. 项目中的本地缓存如何思考设计18. 之后开始闲聊了:19. 大学哪些课程你觉得学的最好20. 看你有了两端实习经历了,之前是翘课去的吗,学校是什么态度21. 能实习多长时间22. 个人发展角度来看,你希望在这段实习里面收获什么23. 反问: 表现如何(没回答) 业务是做啥的面试官人很好,没有手撕,全程都在问实习的项目设计,结合方案去问一些中间件的设计思路,结合了一些自己的理解可能有的地方不对,不过面试官还是给予了肯定。许愿oc#字节跳动##实习##后端##Java##牛客创作赏金赛#
查看21道真题和解析
点赞 评论 收藏
分享
03-18 14:22
已编辑
安徽工业大学 Java
双非大二Java后端实习生有感
那会我大一下中途转去学完前端后暑假紧接着做项目和学springcloud,上学期开学不久看到了一篇分析当前就业形势的不错的牛客文章,于是被吸引加入了这个大家庭,那天晚上我失眠了,看了一晚上的帖子,实力远超于我的学长们在诉苦与不公,同龄人甚至有的在大一暑假便开始了实习,我原以为我自学速度还行,一切尽在掌握之中,经过那几天脑中只有:耳濡目染行业寒冬,未来又该何去何从,从那时起我变了,开始疯狂的翘课和学习,你问我快乐吗,我不快乐,那段时间我感觉我自己已经身魂分离,娱乐时间变成了刷牛客,有一次晚上因为半夜忘记把电脑亮度调低,影响舍友休息吵了一架,你问我快乐吗,我也快乐,我感觉自己每天都在拼搏,我开始直播写力扣,认识越来越多志同道合的朋友,我感觉自己的进度被大大提前,原计划暑假前写简历开始找暑假实习,变成了直接开始写简历开始找实习,开始面试,开始发面经,仿佛每一次面经的发布都在宣告自己的胜利,好似一跃冲出深渊,但只不过是被拉入更深的深渊。在两个极点来回拉扯下,我选择静下来思考,我的身心真的适合这种氛围吗,我的理想是什么,我的人生目标又是什么,我真的快乐吗?之后,我开始有意识的不看牛客,每晚从自习室回来就和舍友一起打游戏,也不会去特意熬夜学习了,如今我也找到了实习,虽然是一家小厂,工资不高,好在氛围很好,有前辈指导。前面的描述可能有些夸张了,你也能看出我是一个容易被外界影响的人,同时我也遇到了很多像我一样觉得焦虑的人,我想表达的意思是处于这种氛围来说有好的一面也有坏的一面,我希望大家针对当前就业形势,不要对宣泄负面情绪的文章过度同感,把握自己,希望大家每天开心,快乐,快半年没发帖了,发一篇讲讲自己的感受#Java##面试##实习##牛客创作赏金赛#
ming_ri:
点赞 评论 收藏
分享
03-28 12:43
已编辑
广东工业大学 Java
【有变化就更】双非硕菜鸡的暑期实习投递记录 更新运营开发凉经
#后端# #软件开发投递记录# #Java# BG: 26届 学院本机械  广工计硕   数学建模国二+一段小厂实习去年11月才搞完论文 all in java  纯后端选手阿里系的卡学历基本都寄了   马上开始找日常了  暑期实习基本无望了 都是按秋招提前批的规格招人  流程慢 泡池子 卡本科 唉 3.26:逐渐麻木了  唉=======已挂的==========饿了么 :3.4已投---简历挂(三个意向分别三天内挂了  补发了通知邮件)VIVO:2.28已投--泡池子直到截止也没消息  默认挂 (依旧初筛中 离谱了)蚂蚁:3.4已投---简历挂 重新投了新部门看运气吧拼多多:3.5已投---简历挂(吐槽牛客上的校园大使 骗我组内有同校师兄  脸都不要了)虾皮:3.6已投---暂不匹配(邮件告知进人才库  泡池子和挂简历的中间态)淘天:3.4已投---简历挂阿里云:3.5已投--简历挂携程:3.5已投--测评已做--3.12没收到笔试 算挂oppo:3.3已投  ---3.14 简历挂快手(暑期):3.5已投--初筛中--3.12已寄---改投其他岗位-挂了网易雷火:3.7已投-简历挂小马智行:3.17已投--秒挂网易互娱:3.3已投  ---第一志向挂--等第二志向-挂众安保险暑期:3.15已投--简历挂网易日常:3.15已投--挂了小红书日常:3.14已投--挂挂挂  百度暑期:3.15已投--复筛--挂快手日常:3.14已投--挂挂挂  美团:3.3 已投 ----3.7收到笔试和AI面--申了15号的笔试-3.15二笔已做 筛选中---一志愿挂 等二志愿--二志愿也挂了 估计没戏了----进人才库小米日常:3.14已投---评估中--卡我暑期 撤销了================还在流程和泡池子的====================腾讯:3.3已投 --3.5 QQ部门一面---一面秒挂---3.7复活等捞---3.12运营部门捞了 考虑过后接了---3.19一面--挂了--等捞吧---3.25再捞  26号面--已挂QQ部门一面面经:https://www.nowcoder.com/feed/main/detail/1af701b1f4754289b9cc97108d68af6d?sourceSSR=users运营开发一面面经:https://www.nowcoder.com/discuss/731846076927438848计费部运营开发一面面经:https://www.nowcoder.com/discuss/734358705642168320腾讯音乐 :3.4已投作业帮:3.4 已投---笔试已做京东:3.5已投--测评--初筛中字节:3.5已投--简历评估快两周了    泡泡泡泡 (很奇怪 字节内推和字节校园招聘不是一个网站吗?怎么招聘记录不一样)汇丰:3.7已投---素质测评---3.19技术测评--可以约面试 但是没有任何时间段可以约B站:3.7已投----3.18官网转笔试  没邮件--3.23笔试吉比特/雷霆游戏:3.10已投--3.19进笔--3.26笔试美的:3.11已投---3.14进笔试-笔试评估中--3.17AI面--3.25一面---3.30线下二面一面面经https://www.nowcoder.com/discuss/734120955835891712腾讯云智:3.11已投小米暑期:3.25已投 平安科技:3.14已投灵犀互娱:3.14已投  投着玩的华泰证券暑期:3.15已投南方基金暑期:3.15已投文远智行:3.17已投比亚迪:3.17已投---测评联想:3.17已投招银:3.17已投菜鸟:3.20已投海康威视:3.19已投盒马:3.19 已投华为:3.18已投飞猪和阿里国际 :3.23已投荣耀:3.25已投 哈啰日常:3.26已投mmt:3.27已投拓竹:3.27已投希音日常:3.28已投======以下暂时没投的想法 ====三七互娱:暂无后端实习搜狐畅游 无后端实习mihoyo 得物 暂无后端实习
洗菜吗喽:我擦一摸一样,甚至连挂的都一样,阿里系简历直接噶,刚面完腾讯cdg,同样也面完秒挂,哥们笔试题还没敲完他就说懂我思路了,估计时间到了kpi完成了😅
点赞 评论 收藏
分享
2月27日滴滴后端实习一面面经
自我介绍实习拷打如何保证数据库和缓存的一致性采用消息队列保证的话,这个中间件有宕机风险怎么办如何保证消息队列可靠性如果生产后消息在传输过程中丢失,消息队列的持久化的意义在哪如何解决重复消费消息队列支持事务吗对比 MySQL 和 Redis 的事务机制Redis 事务支持回滚吗,为什么不支持Redis 有哪些搭建集群的方案了解 Memcached、etcd、zookeeper 等其他吗redis 的主从复制原理AOF 和 RDBAOF 和 RDB 分别在什么场景CAP 了解吗你觉得 Redis 是哪种类型其他缓存有了解吗redis 的数据类型redis4.0/5.0/6.0 的区别是什么大key和热key是什么,有什么危害,怎么解决写一个 Linux 命令,统计一个一个日志文件存放了请求信息(包括IP、ID等)统计UV和PVLinux 常用命令了解吗awk 知道吗TIME_WAIT 堆积是什么原因如何解决DNS 在哪一层DNS 基于什么协议实现DNS 为什么不用TCPMySQL 执行一条更新语句过程是什么,底层不同日志的记录顺序是什么样的请教一下大家数据库和缓存的一致性这块怎么答比较好,今天多答了引入消息队列被质疑每增加一个中间件都会带来风险,重点是不是放在回答【先更新数据库 + 再删除缓存】和【延时双删】上,就不提消息队列了?#实习##面经##Java##滴滴##后端#
查看28道真题和解析
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客企业服务