常山懒羊羊 level
获赞
6
粉丝
7
关注
9
看过 TA
152
西北大学
2027
Java
IP属地:陕西
我乃常山懒羊羊
私信
关注
04-15 11:19
已编辑
西北大学 Java
一面:吹水聊天,聊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小时官网显示挂
发面经攒人品
0 点赞 评论 收藏
分享
04-03 12:18
西北大学 Java
一、个人 & 实习背景HTTP 协议讲讲只是把 HTTP 改成 WebSocket,那内部处理流程或编排具体有什么变化?关键是怎么把完整音频基于什么维度切割?延迟从 800ms 降到 200ms,这个 800ms 是处理完成返回的时间吗?是发起请求之后,完整响应吗?从请求到所有 response 收完?确认一下延迟口径:是接口请求维度,从发起网络请求到数据全部接收完成?端到端的链路流程说一下?二、计算机网络 & 操作系统HTTP 请求信息里面有哪些内容?Request 里都有什么?HTTP 和 HTTPS 的区别是什么?HTTPS 传输过程中具体是怎么保证数据安全的?现在浏览器都是多进程,进程之间协作通信方式有哪些?进程之间的通信方式有哪些?方法的入参、出参、局部变量在内存哪块区域?三、Redis & MySQL & 中间件Redis、MySQL 这些组件用过吗?缓存怎么使用 Redis?具体怎么用?积分排行榜是整个站点所有用户积分排名吗?Redis List 有数量上限,量大后性能会有问题,几万几十万用户还能用吗?Redis 集群解决了什么问题?排行榜是一个 key,集群怎么分?100 万用户按 1 万一组分片:新用户进来往哪个分片加?边缘用户积分变动,跨分片时数据怎么处理?有更好的方案吗?Redis 还用过其他功能吗?不重复领优惠券是什么场景?Lua 脚本里查,其他人同时执行不也会有问题吗?Redis 持久化方式有哪些?MySQL InnoDB 为什么用 B+ 树?MQ 用过吗?了解吗?知道是做什么、解决什么问题吗?四、项目 & 架构之前做的都是 Spring Boot 单体服务吗?有没有接触过微服务架构?五、算法题第 k 个排列有思路吗?hard题:60. 排列序列
0 点赞 评论 收藏
分享
04-02 20:41
西北大学 Java
一、基础信息与求职意向类你现在是在哪?你对工作地点有什么要求吗?(北上广深都 OK 吗?)二、项目相关类(用户答题项目)你挑一个项目来聊一下。这个题目是什么题目类型,这些是怎么规定的?所有的题目都是依赖于你们自己去写吗?题目是随机生成的,它的范围是随机生成吗?会生成各种难易程度的题是吗?那怎么判断题目结果是否正确呢?没有主观题的话需要怎么处理(判断)?那我们的第一版(项目)有没有这些 AI 相关功能呢?如果是基于第一版,我们怎么样去做主观题的判断呢?你这里面用的那个 redis,这个 redis 的话是做了些啥呢?那相当于说 redis 只是做排序用是吧?那你这个(redis 数据)如果说数据有更新,你这块需要怎么更新?这个(先操作数据库再删缓存)有没有什么问题?如果说我们有一个数据场景,在一个方法内后续的流程会立马用到缓存,那延迟双删有效果吗?那你这个积分的更新的话是怎么做的呢?怎么避免一个更新多更的场景?积分是加积分吗?还是减积分?那累加的话,你怎么避免加少加错呢?如果说是集群场景(积分累加),怎么处理?使用 redis 的 set NX 做分布式锁,假设出现网络超时,这种会不会有风险呢?分布式的场景有哪些?分布式锁的优缺点是什么?锁的获取是有公平性的吗?死锁产生的必要条件有哪些?积分的更新除了加锁这个方案,还有其他方案吗?(乐观锁 / CAS)具体怎么实现?是在哪一层实现的?(数据库层面)通过 SQL 要怎么做来保证积分更新的准确性?(数据库更新积分的 SQL)你这个 service 要怎么写,大概可以描述一下吗?(举例:库存有 30 个,要把库存加 1)你怎么保证数据库操作中判断的数值是一致的?或者说你这个一样的值是什么值?你怎么样保证 AI 出题的结果按照预期返回?那 AI 出题会不会有乱返回的情况?三、技术基础类缓存的优缺点是什么?缓存性能比数据库好的具体原因有了解过吗?缓存有哪些结构呢?缓存雪崩有了解过吗?(怎么解决?)如果数据量特别大,缓存雪崩该怎么处理?缓存的删除逻辑 / 过期逻辑是什么样子的?比如说缓存过期了,会立马删除吗?TCP 和 UDP 了解吗?TCP 和 UDP 的区别是什么?UDP 的使用场景是什么呢?TCP 是怎么去保证它的可靠性传输的?(关于 TCP)滑动窗口的相关知识可以说一下吗?TCP 的慢启动为什么要这么设计呢?mysql 怎么避免注入的呢?在 mysql 层面是怎么做防 SQL 注入的,不是在业务层面?四、AI 工具与大模型相关类你有用那个 open class(OpenAI 相关工具)吗?那你用它去做了哪些事情呢?那你有没有去写过 skills?那怎么避免 skills 带来的安全风险呢?那 skills 和 MCP 的区别是什么呢?你平时中用到了哪些大模型?你觉得大模型给你个人有了哪些提升吗?或者说他给你带来的帮助有哪些呢?大模型生成的代码是一个白盒的吗?(功能是否符合预期?)五、算法实操类挑简单 / 中等 / 困难的算法题来做一道。(二分法递归的一道hard题,题目有点想不起来了,手撕失败,写了50多行没跑通)六、职业发展类(求职者提问后,无直接问题,为交流式回应,无明确提问点)
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务