腾讯AI应用开发实习一面分享 攒人品夯版
继续来分享下最近的面经~欢迎友好讨论,信息共享
一、 项目:分库分表与数据库查询
1. 分库分表基础:你是怎么做分库?怎么分表的?
2. 分片键选择:你是对什么取哈希的?(引出 Shop Number 和二级索引)
3. 跨库跨表场景:分库分表以后,你要做一些跨库或跨表查的话是怎么查?
二、 项目:深分页优化
1. 深分页原理:你这里用书签记录法去规避这种深分页,这种是怎么做呀?
2. 书签法使用前提:你这个查的是有序查的吗?
三、 八股:MySQL
1. MySQL 事务隔离级别有哪些?
四、 项目:并发控制与中间件
1. Lua 脚本动机:在这个红包系统里用了 Redis 的这种 Lua 脚本做增减,为什么用 Lua 脚本不用比如 Redis 自己自带的这些原子指令(比如 `INCR`/`DECR`)?
2. Redis 分布式锁原理:在 Redis 里的分布式锁,它是大概是什么样的以及怎么用的?
3. 分布式锁异常容灾(宕机场景):你这个分布式锁,比如我拿到了以后做处理,在做处理的过程中服务挂掉了(意外宕掉),这个时候怎么办?
4. MQ 选型与演进:在这个红包系统里面用了RocketMQ,为什么会选择这种消息队列来去做推送?
五、 八股:操作系统八股文
1. 说一下线程、进程还有协程他们的一些区别概念。
2. 多线程之间会共享哪些东西?
六、 Agent 项目机制
1. 大模型控制逻辑:在这个 AI Agent 里边有 thinking 阶段,你这个 thinking 阶段它怎么决定是调用工具还是直接回复?
七、 手撕代码与 SQL 实战
1. SQL 编写题:
- 背景:有 `order`(订单表)和 `shop`(商家表)两张表。
- 要求:查询每个商家的名称、品类,以及“已完成”订单的数量、金额,并按总金额降序排列。
- 考点:`LEFT JOIN`(左连接)、`WHERE` 状态过滤、`GROUP BY` 分组聚合(`SUM`, `COUNT`)、`ORDER BY` 排序。
2. 算法数据结构题:
- 要求:用两个栈实现一个队列,并支持 `push`(入队)、`pop`(出队)、`peek`(查看队头)操作。
- 进阶场景:在这个基础上,如果要求支持“删除中间元素”,该怎么做?
一、 项目:分库分表与数据库查询
1. 分库分表基础:你是怎么做分库?怎么分表的?
2. 分片键选择:你是对什么取哈希的?(引出 Shop Number 和二级索引)
3. 跨库跨表场景:分库分表以后,你要做一些跨库或跨表查的话是怎么查?
二、 项目:深分页优化
1. 深分页原理:你这里用书签记录法去规避这种深分页,这种是怎么做呀?
2. 书签法使用前提:你这个查的是有序查的吗?
三、 八股:MySQL
1. MySQL 事务隔离级别有哪些?
四、 项目:并发控制与中间件
1. Lua 脚本动机:在这个红包系统里用了 Redis 的这种 Lua 脚本做增减,为什么用 Lua 脚本不用比如 Redis 自己自带的这些原子指令(比如 `INCR`/`DECR`)?
2. Redis 分布式锁原理:在 Redis 里的分布式锁,它是大概是什么样的以及怎么用的?
3. 分布式锁异常容灾(宕机场景):你这个分布式锁,比如我拿到了以后做处理,在做处理的过程中服务挂掉了(意外宕掉),这个时候怎么办?
4. MQ 选型与演进:在这个红包系统里面用了RocketMQ,为什么会选择这种消息队列来去做推送?
五、 八股:操作系统八股文
1. 说一下线程、进程还有协程他们的一些区别概念。
2. 多线程之间会共享哪些东西?
六、 Agent 项目机制
1. 大模型控制逻辑:在这个 AI Agent 里边有 thinking 阶段,你这个 thinking 阶段它怎么决定是调用工具还是直接回复?
七、 手撕代码与 SQL 实战
1. SQL 编写题:
- 背景:有 `order`(订单表)和 `shop`(商家表)两张表。
- 要求:查询每个商家的名称、品类,以及“已完成”订单的数量、金额,并按总金额降序排列。
- 考点:`LEFT JOIN`(左连接)、`WHERE` 状态过滤、`GROUP BY` 分组聚合(`SUM`, `COUNT`)、`ORDER BY` 排序。
2. 算法数据结构题:
- 要求:用两个栈实现一个队列,并支持 `push`(入队)、`pop`(出队)、`peek`(查看队头)操作。
- 进阶场景:在这个基础上,如果要求支持“删除中间元素”,该怎么做?
全部评论
相关推荐
点赞 评论 收藏
分享
