产研 dev&infra一面面经
完整信息
本篇目录
#牛客AI配图神器#解释选择JSON to HTML而非直接生成HTML的原因
LCP 和首屏包体积都明显下降。先说清两个数字怎么测的,再选一个改动,从网络加载、JS 执行到浏览器绘制解释为什么有效
你们的 TTU 怎么定义
完整处理链路各阶段的入参出参与作用、schema校验后仍需校验的原因
场景题
- “用户说‘看看这个作业为什么慢’,只给了一个作业名,LLM 识别置信度很高。但它可能对应多个集群,也可能没有权限。请设计路由与执行流程;如果规则和模型判断冲突,谁说了算?”
- 假设我们有 Gateway、Worker 和 Web UI。Worker 执行一次诊断,Gateway 对外提供任务查询和事件订阅,UI 展示过程与最终报告。你不需要了解 Helix 的内部接口。现在要支持报告 v2、断线重连、取消,以及新旧 Worker 并存。”
“请画出或口述最小数据流,说明报告与事件字段。若报告已经生成,但 UI 断线;或两个子步骤一个成功、一个失败,整个任务状态由谁决定?前端如何避免重连后重复内容或状态倒退?”
手撕:
实现 async function runLimited(tasks, limit)。tasks 是任务函数数组,不是已启动的 Promise 数组。每个函数调用后返回普通值或 Promise,也可能同步抛错。请执行全部任务并返回结果。
- 任意时刻正在执行、尚未结算的任务数不超过 limit;有任务结束且还有待执行项时应立即补位,不能等一整批全部结束。
- 结果数组必须与输入顺序一致,不按完成顺序排列。
- 任务成功返回 { status: 'fulfilled', value };失败返回 { status: 'rejected', reason }。一个任务失败不影响其他任务,保留原始错误对象。
- 每个任务函数恰好调用一次。同步抛错与异步 reject 都要捕获。
- limit 必须是正整数,否则函数返回的 Promise 以 RangeError 拒绝;空 tasks 也先校验 limit。合法 limit 下空数组返回 []。
- tasks 保证为函数组成的稠密数组,调用期间不变;普通值与 undefined 都合法。不要求处理永不结束的任务、超时、重试、取消或输入数组变更。
面试官业务主要做d2c agent#秋招来发发发疯疯疯##秋招怎么做才不烧心#
本篇目录
当前问题0109
- 01
解释选择JSON to HTML而非直接生成HTML的原因
- 02
LCP 和首屏包体积都明显下降。先说清两个数字怎么测的,再选一个改动,从网络加载、JS 执行到浏览器绘制解释为什么有效
- 03
你们的 TTU 怎么定义
- 04
完整处理链路各阶段的入参出参与作用、schema校验后仍需校验的原因
- 05
“用户说‘看看这个作业为什么慢’,只给了一个作业名,LLM 识别置信度很高。但它可能对应多个集群,也可能没有权限。请设计路由与执行流程;如果规则和模型判断冲突,谁说了算?”
- 06
假设我们有 Gateway、Worker 和 Web UI。Worker 执行一次诊断,Gateway 对外提供任务查询和事件订阅,UI 展示过程与最终报告。你不需要了解 Helix 的内部接口。现在要支持报告 v2、断线重连、取消,以及新旧 Worker 并存。”
- 07
“请画出或口述最小数据流,说明报告与事件字段。若报告已经生成,但 UI 断线;或两个子步骤一个成功、一个失败,整个任务状态由谁决定?前端如何避免重连后重复内容或状态倒退?”
- 08
实现 async function runLimited(tasks, limit)。tasks 是任务函数数组,不是已启动的 Promise 数组。每个函数调用后返回普通值或 Promise,也可能同步抛错。请执行全部任务并返回结果。
- 09
完整处理链路各阶段的入参出参与作用、schema校验后仍需校验的原因
