腾讯CSIG 中间件部门 一面过二面挂面经
#发面经攒人品#
一面:吹水聊天,聊AI,聊发展 无手撕
二面:实习深挖+少量八股拷打+简单题手撕
把接口响应延迟优化到 150ms,具体做了哪些事情?
原来业务有哪些性能瓶颈?做了哪些优化?
150ms 是怎么压测出来的?用什么工具?
TTS 服务核心是不是两步:文本预处理 → 音频处理?
在这两步里,挑一个效果最好的优化点详细讲讲。
你说的分级内存池、四个内存块,具体是怎么设计的?
这些音频处理是在 TTS 服务内部,还是调用第三方服务?
接口输入是一句话、一段话还是长文本?
四个内存池是对同一个接口内的数据拆分,还是不同请求之间共用?
内存池主要优化的是不是 GC?
优化前接口延迟大概多少?(你回答 600+ms)
这个接口应该是核心接口吧?之前为什么没人做优化?
全双工 / 流式方案是你自己设计的,还是团队讨论的?
你参考了哪些友商方案?
三、项目:Redis ZSet 实时积分排行榜
用 Redis ZSet 实现实时积分排行榜,详细讲一下场景和结构。
为什么不用其他结构,而用 ZSet?
举个例子:一个用户原来第 50 名,加分后升到前面,ZSet 是怎么实现的?
动态更新排名、动态抓取排名的原理是什么?
Redis ZSet 底层用什么数据结构?
跳表怎么实现排序?详细讲一下。
一个节点分数更新后,跳表是怎么把它挪到新位置的?
如果让你自己实现一个有序列表,怎么做?
用户量很大时(比如千万级),链表从头遍历效率低,怎么优化?
四、登录模块实现(JWT + 短信验证码)
讲一下你项目里登录模块大概怎么实现。
前端每次请求带 token,你怎么验证 token 有效、是否过期、是否被篡改?
JWT token 里面编码了哪些信息?
token 过期后,用户还在活跃,会不会刷新 token?怎么做无感续签?
JWT 是对称加密还是非对称加密?
token 被中间人截取,有没有可能被篡改伪造?
五、缓存三大问题:穿透 / 击穿 / 雪崩
讲一下缓存穿透、击穿、雪崩的区别和场景。
项目中遇到过哪些?分别用什么手段解决?
防止缓存击穿加锁,会不会导致性能下降?怎么权衡?
六、算法题
写一道简单题:判断一棵二叉树是否对称。 -秒了
二面后3小时官网显示挂
#牛客AI配图神器#
一面:吹水聊天,聊AI,聊发展 无手撕
二面:实习深挖+少量八股拷打+简单题手撕
把接口响应延迟优化到 150ms,具体做了哪些事情?
原来业务有哪些性能瓶颈?做了哪些优化?
150ms 是怎么压测出来的?用什么工具?
TTS 服务核心是不是两步:文本预处理 → 音频处理?
在这两步里,挑一个效果最好的优化点详细讲讲。
你说的分级内存池、四个内存块,具体是怎么设计的?
这些音频处理是在 TTS 服务内部,还是调用第三方服务?
接口输入是一句话、一段话还是长文本?
四个内存池是对同一个接口内的数据拆分,还是不同请求之间共用?
内存池主要优化的是不是 GC?
优化前接口延迟大概多少?(你回答 600+ms)
这个接口应该是核心接口吧?之前为什么没人做优化?
全双工 / 流式方案是你自己设计的,还是团队讨论的?
你参考了哪些友商方案?
三、项目:Redis ZSet 实时积分排行榜
用 Redis ZSet 实现实时积分排行榜,详细讲一下场景和结构。
为什么不用其他结构,而用 ZSet?
举个例子:一个用户原来第 50 名,加分后升到前面,ZSet 是怎么实现的?
动态更新排名、动态抓取排名的原理是什么?
Redis ZSet 底层用什么数据结构?
跳表怎么实现排序?详细讲一下。
一个节点分数更新后,跳表是怎么把它挪到新位置的?
如果让你自己实现一个有序列表,怎么做?
用户量很大时(比如千万级),链表从头遍历效率低,怎么优化?
四、登录模块实现(JWT + 短信验证码)
讲一下你项目里登录模块大概怎么实现。
前端每次请求带 token,你怎么验证 token 有效、是否过期、是否被篡改?
JWT token 里面编码了哪些信息?
token 过期后,用户还在活跃,会不会刷新 token?怎么做无感续签?
JWT 是对称加密还是非对称加密?
token 被中间人截取,有没有可能被篡改伪造?
五、缓存三大问题:穿透 / 击穿 / 雪崩
讲一下缓存穿透、击穿、雪崩的区别和场景。
项目中遇到过哪些?分别用什么手段解决?
防止缓存击穿加锁,会不会导致性能下降?怎么权衡?
六、算法题
写一道简单题:判断一棵二叉树是否对称。 -秒了
二面后3小时官网显示挂
#牛客AI配图神器#
全部评论
挂的多了,反而不焦虑了。继续沉淀
这些人有猫病 答的好好的也挂
相关推荐
查看10道真题和解析