怎么知道自己凉了
点赞 1

相关推荐

05-28 19:08
已编辑
门头沟学院 Java
突然收到面试邀请,而且没有hr电话直接就甩了个晚上的面试链接。自我感觉答得不好,估计是挂了,但面试官人很好,氛围相对轻松。public、protected、default、private​重写和重载区别JVM内存模型​类加载过程,字节码加载过程​OOM​AOP​讲讲RPC​算法题:二分查找+测试用例​TCP/IP四层模型​,那一层是IP、那一层是端口​TCP和UDP区别​三次握手及为什么三不能是两次GET和POST区别​Linux 的命令​,查看CPU情况介绍一下做过的项目​电商退款有哪些测试用例​死锁是什么及其原因​慢查询原因及如何定位慢查询​什么字段适合建立索引?innoDB跟myISAM...
一笑而过2222:1. Linux查看CPU情况:使用 top 可实时查看系统CPU整体及各进程占用率,按 1 能展示每个核心运行状态; htop 以可视化界面增强交互性; mpstat -P ALL 精准统计每个CPU核心负载; lscpu 输出CPU架构、缓存等硬件信息; vmstat 综合展示CPU、内存、IO等资源使用趋势; sar -u 基于历史数据统计CPU负载; nproc 直接获取CPU核心数量。实际分析时,先用 top 快速定位异常,再结合 mpstat 等深入排查。 2. 电商退款测试用例:功能测试覆盖全额/部分退款、不同发货状态处理、退款金额计算及多渠道返还;异常测试包含重复退款、越权操作、网络中断恢复;业务规则聚焦退款时效控制、优惠券分摊逻辑、高频退款风控;同时补充兼容性(多终端适配)和性能测试(高并发场景响应),保障退款流程稳定可靠。 3. 死锁及其原因:死锁是多进程/线程因资源竞争形成互相等待、无法推进的阻塞状态,需同时满足互斥(资源独占)、请求保持(占有资源时请求其他资源)、不可剥夺(资源不能被强制释放)、循环等待(形成资源等待环路)四个条件。常见于数据库事务交叉锁定、多线程无序获取锁等场景,可通过资源预分配、顺序加锁预防,依赖日志或线程Dump分析检测。 4. 慢查询原因及定位:慢查询根源在于索引失效(未命中或设计不当)、数据量过大导致全表扫描、复杂查询(嵌套子查询、大量JOIN)、锁冲突(行锁升级表锁)、服务器资源瓶颈(CPU/IO过载)。定位时,先启用慢查询日志并用 pt-query-digest 分析高频慢SQL,再通过 EXPLAIN 剖析执行计划,结合 SHOW ENGINE INNODB STATUS 排查锁等待,必要时借助 Performance Schema 监控资源消耗。 5. 适合建索引的字段:优先对高频出现在 WHERE 、 JOIN 、 ORDER BY 子句中的字段建索引,尤其是高选择性字段(如身份证号、手机号);组合索引遵循最左前缀原则;写入频繁字段谨慎建索引,避免影响性能;大字段类型可使用前缀索引优化查询。 6. InnoDB与MyISAM区别:InnoDB支持事务、外键和行级锁,采用聚簇索引存储数据,适合高并发读写场景,具备崩溃恢复能力;MyISAM使用表级锁,无事务支持,索引与数据分离存储, COUNT(*) 统计高效,但不适用于写密集业务。生产中InnoDB用于核心交易模块,MyISAM适用于只读统计类表。 7. InnoDB锁及表锁升级:InnoDB提供共享锁、排他锁、间隙锁等多种锁机制,并通过MVCC减少冲突。表锁升级常发生于SQL无法命中索引引发全表扫描、大事务更新大量数据导致自适应哈希索引失效、执行 ALTER TABLE 等DDL操作,以及死锁检测后强制升级场景。优化需确保索引覆盖查询,拆分大事务降低锁粒度。
查看20道真题和解析
点赞 评论 收藏
分享
05-26 16:18
门头沟学院 Java
从4月1号的第一次面试到5月13号的滴滴二面,暑期实习也是终于画上句号了。从3月初就开始投 ,投了几十个公司,有笔试有面试的一共有20多个公司。timeline大概如下:3.8      米哈游笔试挂3.16    快手简历挂3.27    蚂蚁笔试后挂3.28    饿了么笔试后挂4.1      美团一面挂4.2      京东一面过4.7      京东二面挂,15分钟结束,kpi4.9      美团捞了一次,可惜没撕出来,又挂4.23    腾讯wxg一面秒挂,太菜了5.7      华为技术面和hr面通过,泡池子中5.8      滴滴一面5.13    滴滴二面5.23    滴滴口头oc5.26    滴滴offer滴滴一面面经1.介绍一下你的项目2.介绍一下短信登录具体是怎么优化的,redis的key和value都是什么3.在更新策略中,为什么采用先操作数据库再删除缓存的策略,为什么不用先删除缓存再操作数据库的策略?先操作数据库再删除缓存的策略是否有问题,应该如何解决?4.如何在不用reentrantlock锁的情况下,用redis分布式锁实现可重入锁?key和value都是什么?5.在优惠券的一人一单模块中,key和value都是什么6.项目中是如何用乐观锁解决缓存超卖的?考虑一个场景,如果一个商户要从供货商进货,还要进行售货,详细说一下用乐观锁的流程?7.现在有一个100层的楼,现在如果想用两个球测试,球从哪一层开始扔会碎,在这一层以上扔的话,球都会碎,在这层往下扔,球不会碎。请问最少需要扔多少次?8.手撕题:打印金字塔9.手撕题:数组中的第k个最大值元素滴滴二面总结1.在项目中,GEO具体是怎么使用的?商户和商户之间计算距离的具体算法是什么?如果多个人都进行附近商户查询时,会不会出现性能问题?2.feed流的推模式和拉模式?一般情况下,拉模式用的比较多,为什么你采用推模式呢?是否注意过朋友圈和微博消息推送时,技术实现的区别?3.在java集合中,有哪些线程安全的集合?你提到了threadlocal,threadlocal具体是做什么的,原理?有哪些问题?你提到了内存泄漏,内存泄漏有时只是几个变量的大小,不会造成多大空间的泄露,还有其他的问题吗?4.JVM的内存模型?5.mysql的事务的隔离级别?6.MySQL的索引有哪些?说一下B树和B+树的原理?B+树在插入节点时,会出现哪些树形结构的变化?7.线程池的参数有哪些?你在项目中是否用到了线程池?在真正使用中,如何选取线程池的参数?如果在一个I/O密集型系统中,如果让核心线程数直接等于CPU核数x2是否不合适,考虑一个场景:如果一个系统需要qps=10000,系统的请求处理时间为100ms,那么核心线程数该怎么设置?8.手撕:在100000个数据中,找到最大的10个数据,topk问题。中间也自闭焦虑过,最后感谢滴滴收留了我,大桔大利。
查看17道真题和解析
点赞 评论 收藏
分享
一面052350min1.自我介绍2.在学校里的经历3.你希望测试开发岗位里的测试工作和开发工作占比是多少?4.实习拷打,详细拷打实习中做过的接口自动化项目5.为什么接口自动化项目选择pytest?6.设计测试用例会考虑哪些点?7.用过jekins的什么功能,了解过它底层的实现吗8.技术栈是?熟悉的编程语言?9.口述思路:二叉树的遍历10.手撕:二分查找11.浏览器输入url到展示页面的全流程?12.进程和线程13.死锁14.慢查询15.读过有关测试的技术书籍吗16.写测试自动化时用过python的哪些库?17.反问(作业帮直播业务,给学生直播上课之类的) 二面052755min1.自我介绍2...
一笑而过2222:1. String和StringBuffer区别:String是不可变、线程安全(因不可变特性)的,每次操作会创建新对象,适合只读场景;StringBuffer是可变、线程安全(方法加锁)的,可直接修改对象,适用于多线程环境下频繁修改字符串的场景 。 2. Java的垃圾回收器:Java垃圾回收器是JVM自动管理内存的组件,基于分代收集理论,通过标记-清除、复制、标记-整理等算法回收不再使用的对象,常见类型有Serial、Parallel、CMS、G1等,分别适用于不同性能需求场景。 3. Java的序列化:Java序列化是将对象转换为字节序列以便存储或传输的机制,对象所属类需实现Serializable接口,反序列化可将字节流恢复为对象,常用于分布式通信、数据持久化和对象深拷贝等场景。
查看24道真题和解析 面经...
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务