版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IT经典面试题及详细答案(通用技术岗)适用岗位:后端开发、运维、测试、全栈、技术支持等通用IT岗位内容说明:全部为一线高频面试原题,答案贴合企业面试标准,简洁实用、落地性强一、计算机网络高频面试题1.简述TCP和UDP的区别?分别适用什么场景?参考答案:TCP是面向连接的可靠传输协议,UDP是无连接的不可靠传输协议,核心区别如下:1.连接性:TCP需要三次握手建立连接、四次挥手断开连接;UDP无需建立连接,直接发包。2.可靠性:TCP有序、无丢失、无重复,具备确认应答、重传机制、滑动窗口;UDP不保证送达、不保证顺序、无重传。3.开销:TCP头部至少20字节,开销大、传输慢;UDP头部仅8字节,开销小、传输速度快。4.控制能力:TCP拥塞控制、流量控制齐全;UDP无任何控制机制。适用场景:TCP:文件传输、网页浏览、邮件、远程登录,对数据完整性要求高的场景。UDP:直播、视频通话、游戏、DNS解析,追求低延迟、能容忍少量丢包的场景。2.详细说一下TCP三次握手、四次挥手过程参考答案:三次握手(建立连接)第一次握手:客户端向服务端发送SYN报文,请求建立连接,客户端进入SYN_SENT状态。第二次握手:服务端收到SYN,回复SYN+ACK报文,表示同意连接,服务端进入SYN_RCVD状态。第三次握手:客户端收到确认后,发送ACK报文,双方状态变为ESTABLISHED,连接正式建立。核心目的:确认双方发送、接收能力均正常。四次挥手(断开连接)第三次挥手:被动方数据发送完毕,发送FIN报文,请求关闭连接。第四次挥手:主动方回复ACK,等待超时后彻底关闭连接,被动方直接关闭。核心原因:TCP是全双工通信,收发通道独立,需要分别关闭。3.为什么TCP连接是三次握手,断开却需要四次挥手?参考答案:建立连接时,服务端收到连接请求后,确认应答和连接请求可以合并为一次报文发送,所以只需三次。断开连接时,一方关闭发送通道后,另一方可能还有数据未传输完成,不能立刻关闭通道,必须先应答确认,等数据传完再发送关闭请求,因此需要四次交互。4.HTTP和HTTPS的区别?HTTPS安全原理是什么?参考答案:1.端口不同:HTTP默认80端口,HTTPS默认443端口。2.安全性:HTTP明文传输,极易被抓包、篡改、窃听;HTTPS加密传输,数据安全。3.协议层级:HTTP是应用层协议;HTTPS是HTTP+SSL/TLS加密协议。4.性能:HTTP速度快、开销小;HTTPS握手、加密解密会产生一定性能损耗。5.证书:HTTPS需要CA数字证书认证,HTTP无需证书。HTTPS安全原理:通过非对称加密交换会话密钥,再通过对称加密传输业务数据,同时通过数字证书校验服务器身份,防止中间人劫持、数据篡改和窃听。5.简述HTTP1.0、HTTP1.1、HTTP2.0的主要区别参考答案:HTTP1.0:短连接,每次请求都要新建TCP连接,请求完成立即断开,开销极大,不支持持久连接。HTTP1.1:默认长连接,支持管线化请求、断点续传、缓存优化,同一连接可多次请求,但存在队头阻塞问题。HTTP2.0:基于HTTPS,支持二进制帧传输、多路复用,彻底解决队头阻塞,支持头部压缩、服务器主动推送资源,传输效率大幅提升。二、操作系统高频面试题1.进程和线程的区别?参考答案:1.资源归属:进程是系统资源分配的最小单位;线程是CPU调度的最小单位,共享所在进程资源。2.开销:进程创建、销毁、切换开销极大;线程开销极小、轻量化。3.隔离性:进程之间完全独立,一个进程崩溃不影响其他进程;线程共享进程内存,一个线程异常可能导致整个进程崩溃。4.通信方式:进程间通信复杂(管道、消息队列、共享内存);线程间直接读写共享内存,通信简单。5.适用场景:多进程适合高隔离、高稳定场景;多线程适合高并发、快速任务处理场景。2.什么是死锁?产生死锁的四个必要条件?如何避免死锁?参考答案:死锁是指多个线程或进程互相持有对方所需资源,同时等待对方释放资源,导致程序永久阻塞的状态。四大必要条件(必须同时满足):1.互斥条件:资源同一时间只能被一个线程占用。2.请求与保持:线程持有已有资源,同时请求新资源。3.不可剥夺:资源不能被强制抢占,只能主动释放。4.循环等待:线程之间形成资源等待环路。避免方案:破坏任意一个条件即可,常用方式:统一资源加锁顺序、设置超时释放、主动释放空闲资源、资源预分配。3.简述内存泄漏是什么?如何排查内存泄漏?参考答案:内存泄漏是程序动态申请内存后,不再使用却没有及时释放,导致内存占用持续升高,最终引发卡顿、OOM崩溃、服务宕机。排查思路:1.监控服务器/程序内存趋势,确认内存只增不减;2.抓取内存快照、堆栈日志,分析常驻对象;3.排查静态集合、全局变量、未关闭连接、循环引用、定时器未销毁等常见问题;4.对比版本迭代,定位新增代码引发的内存异常。三、数据库经典面试题(MySQL为主)1.InnoDB和MyISAM的区别?参考答案:1.事务支持:InnoDB支持事务、ACID;MyISAM不支持事务。2.锁机制:InnoDB支持行级锁、表级锁,并发性能高;MyISAM只有表级锁,读写阻塞严重。3.崩溃恢复:InnoDB支持redo/undo日志,断电可恢复数据;MyISAM崩溃易数据损坏。4.外键:InnoDB支持外键约束;MyISAM不支持。5.性能:MyISAM查询速度快,适合纯读场景;InnoDB读写均衡,适配绝大多数业务场景。目前企业生产环境默认全部使用InnoDB。2.什么是事务?事务的ACID四大特性?参考答案:事务是数据库执行的一组SQL操作,要么全部成功,要么全部失败回滚,是数据库数据一致性的核心保障。ACID四大特性:1.原子性:事务不可分割,整体成功或整体回滚。2.一致性:事务执行前后,数据库数据约束、状态完全合法一致。3.隔离性:多个事务并发执行互不干扰,通过隔离级别控制并发问题。4.持久性:事务提交成功后,数据永久生效,断电重启不丢失。3.MySQL四大隔离级别及对应问题参考答案:1.读未提交:可读取未提交数据,存在脏读、不可重复读、幻读。2.读已提交:只能读取已提交数据,解决脏读,存在不可重复读、幻读。3.可重复读(MySQL默认):保证同一事务多次读取结果一致,解决脏读、不可重复读,存在幻读。4.串行化:最高隔离级别,事务串行执行,解决所有并发问题,性能最低。4.索引的作用?为什么索引能提速?索引一定越快越好吗?参考答案:索引是数据库的查询目录,用于快速定位数据,减少全表扫描,大幅提升查询效率。提速原理:将无序数据查找,转化为索引树有序查找,时间复杂度从O(n)降低为O(logn)。索引不是越多越好:索引会占用磁盘空间,且增删改数据时需要同步更新索引,索引过多会大幅降低写入性能。企业开发遵循“查多建索引、写多少建索引”原则。5.什么是慢查询?如何优化慢SQL?参考答案:慢查询是执行时间超过预设阈值的SQL语句,是数据库性能瓶颈的主要来源。优化通用思路:1.开启慢查询日志,定位低效SQL;2.使用explain分析执行计划,查看是否命中索引、是否全表扫描;3.优化索引,给高频查询字段建立合适索引,避免索引失效;4.优化SQL语句,避免select*、避免模糊前置匹配、避免大量in和子查询嵌套;5.大表分表、冷热数据分离、适当缓存热点数据。四、缓存与并发面试题(Redis高频)1.Redis为什么速度快?参考答案:1.基于内存操作,避免磁盘IO开销;2.单线程模型,无线程切换、无锁竞争开销;3.数据结构设计精简,底层操作高效;4.采用IO多路复用,单线程可监听大量客户端连接;5.协议简单,网络报文开销极低。2.缓存穿透、缓存击穿、缓存雪崩区别及解决方案参考答案:1.缓存穿透:查询不存在的数据,直接穿透到数据库,缓存无数据。解决:空值缓存、布隆过滤器、接口参数校验。2.缓存击穿:热点key过期,瞬间大量请求打向数据库。解决:热点key永不过期、互斥锁、定时预更新热点缓存。3.缓存雪崩:大量key同时过期或缓存宕机,导致数据库瞬间压力过载。解决:过期时间加随机值、集群高可用、多级缓存、服务熔断降级、限流。五、通用编程与职场面试题1.你遇到过的最难的技术问题是什么?怎么解决的?标准面试回答模板:我之前在项目中遇到过线上服务偶发卡顿、接口响应超时的问题。初期日志没有明显报错,很难定位原因。我首先梳理了完整调用链路,排查了网络、数据库、缓存、接口调用情况,通过日志追踪、监控面板发现是慢SQL导致数据库CPU占用过高,进而引发接口超时。随后我通过执行计划分析SQL,优化了失效索引,重构了查询语句,同时对热点数据增加缓存。优化后,接口响应速度提升明显,线上卡顿问题彻底解决。这次问题让我养成了线上问题先抓链路、看监控、定位瓶颈,再针对性优化的排查习惯。2.如何理解高并发、高可用?参考答案:高并发指系统能够承载大量用户、大量请求同时访问,通过缓存、异步、限流、集群、分库分表等方式提升系统吞吐能力。高可用指系统尽量不宕机、少故障,出现问题可以快速恢复。通过集群
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业品牌形象宣传合作协议二篇
- 护理评估:健康与疾病
- 甲状腺病人的心理护理
- 精神病人发病及护理
- 新生儿危重患者护理常规
- 疱疹性咽喉炎护理方法
- 河北经贸大学《农业资源与环境经济分析》模拟考试试卷(含答案)
- 2026全国海船船员考试(船长及甲板部(航海学9208))历年参考题库含答案详解
- 2026全国医用设备使用人员业务能力考评测试(DSA技师)历年参考题库含答案详解
- 2026住院医师规范化培训考试(消化内科)题库历年参考题库含答案详解
- 码头装卸协议书简单
- 国企招聘笔试题及答案-投资专员、投资经理A卷
- 2024苏教版三年级科学上册全册单元测试(含解析)
- 鄂尔多斯市国有资产投资控股集团有限公司招聘笔试真题2024
- 辅导员工作岗位知识培训课件
- 地产尾盘培训知识课件
- DR体位操作技术规范与临床应用
- 一次性医疗用品管理课件
- 公司员工上岗证管理制度
- 列车开行方案列车开行方案高速铁路运营技术64课件
- 江苏省2025年中职职教高考文化统考数学试题
评论
0/150
提交评论