70e368e235
Deploy Examination / deploy (push) Successful in 7s
New topic group: 网络安全专题 (cybersecurity) Subtopics: - web-security: Web 安全基础 (34 questions) - crypto-basics: 密码学基础 (34 questions) - buffer-overflow: 缓冲区溢出与漏洞利用 (34 questions) - os-security: 操作系统安全 (34 questions) - network-attack: 网络攻防 (34 questions) - secure-coding: 安全编程实践 (34 questions) Question types per subtopic: - single_choice × 20 - true_false × 10 - short_answer × 3 - code_reading × 1 Difficulty range: 1-3 (基础)
621 lines
20 KiB
JSON
621 lines
20 KiB
JSON
{
|
||
"version": "1.0.0",
|
||
"updated": "2026-09-13",
|
||
"topics": [
|
||
{
|
||
"slug": "qunar-ai-fullstack",
|
||
"name": "去哪儿 AI 面 — AI 全栈方向",
|
||
"description": "覆盖 JVM/GC、AI Agent 架构、工具链、幻觉治理等核心考察领域",
|
||
"subtopics": [
|
||
{
|
||
"slug": "gc-jvm",
|
||
"name": "GC / JVM / 三色标记",
|
||
"description": "JVM 堆内存模型、GC 算法、三色标记法、垃圾收集器",
|
||
"path": "topics/qunar-ai-fullstack/gc-jvm",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"fill_blank": 10,
|
||
"single_choice": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "ai-structured-output",
|
||
"name": "AI 结构化输出 / Agent 架构",
|
||
"description": "结构化输出方法、Agent 模式、受限解码",
|
||
"path": "topics/qunar-ai-fullstack/ai-structured-output",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"fill_blank": 10,
|
||
"single_choice": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "ai-memory",
|
||
"name": "Agent 记忆管理 / 冲突处理",
|
||
"description": "记忆分层架构、淘汰策略、冲突检测与消解",
|
||
"path": "topics/qunar-ai-fullstack/ai-memory",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"fill_blank": 10,
|
||
"single_choice": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "ai-hallucination",
|
||
"name": "AI 幻觉 / 目标评价 / 规范",
|
||
"description": "幻觉分类、Critic 架构、Context Engineering、评估体系",
|
||
"path": "topics/qunar-ai-fullstack/ai-hallucination",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"fill_blank": 10,
|
||
"single_choice": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "ai-tooling",
|
||
"name": "AI 工具 / Harness / 综合",
|
||
"description": "AI 工具选型、Harness 架构、可靠性保障、提效分析",
|
||
"path": "topics/qunar-ai-fullstack/ai-tooling",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"fill_blank": 10,
|
||
"single_choice": 10
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "networking",
|
||
"name": "计算机网络",
|
||
"description": "从 HTTP 协议到底层连接管理,覆盖面试和实战中的核心网络知识",
|
||
"subtopics": [
|
||
{
|
||
"slug": "http-handshake",
|
||
"name": "HTTP 握手",
|
||
"description": "TCP 三次握手、TLS 握手、HTTP/2 与 HTTP/3 的连接建立",
|
||
"path": "topics/networking/http-handshake",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "http-connection-cost",
|
||
"name": "HTTP 连接资源消耗",
|
||
"description": "单连接资源开销、百万并发的真实数字与应对策略",
|
||
"path": "topics/networking/http-connection-cost",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "connection-pooling",
|
||
"name": "连接池复用",
|
||
"description": "预建连接、借还机制、HTTP/1.1 与 HTTP/2 的复用差异",
|
||
"path": "topics/networking/connection-pooling",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "http-keepalive",
|
||
"name": "HTTP Keep-Alive",
|
||
"description": "Keep-Alive 原理、队头阻塞、演进路线",
|
||
"path": "topics/networking/http-keepalive",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "keepalive-scenarios",
|
||
"name": "Keep-Alive 使用场景",
|
||
"description": "何时启用、何时关闭、生产环境最佳实践",
|
||
"path": "topics/networking/keepalive-scenarios",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "domain-sharding",
|
||
"name": "域名分片",
|
||
"description": "HTTP/1.1 时代的 hack,HTTP/2 后的淘汰",
|
||
"path": "topics/networking/domain-sharding",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "cdn",
|
||
"name": "CDN",
|
||
"description": "边缘节点、缓存策略、加速原理与配置",
|
||
"path": "topics/networking/cdn",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "cors",
|
||
"name": "跨域 CORS",
|
||
"description": "同源三元组、CORS 响应头、预检请求",
|
||
"path": "topics/networking/cors",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "go-build-strip",
|
||
"name": "Go 编译标志 -s",
|
||
"description": "剥离调试信息、体积优化、生产发布",
|
||
"path": "topics/networking/go-build-strip",
|
||
"stats": {
|
||
"total": 20,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "gc-special",
|
||
"name": "垃圾回收专题",
|
||
"description": "垃圾回收(GC)专题:GC 概念与代价、内存碎片与算法、分代 GC、回收器对比、GC Roots、三色标记法",
|
||
"subtopics": [
|
||
{
|
||
"slug": "gc-deep-dive",
|
||
"name": "GC 综合深入",
|
||
"description": "垃圾回收专题:GC 概念、内存碎片与算法、分代 GC、回收器对比、GC Roots、三色标记法",
|
||
"path": "topics/gc-special/gc-deep-dive",
|
||
"stats": {
|
||
"total": 50,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"true_false": 10,
|
||
"multiple_choice": 10,
|
||
"short_answer": 10
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "architecture",
|
||
"name": "系统架构",
|
||
"description": "高并发系统架构设计:秒杀系统、限流、削峰、数据一致性等",
|
||
"subtopics": [
|
||
{
|
||
"slug": "seckill-design",
|
||
"name": "高并发秒杀系统设计",
|
||
"description": "分层削峰、限流(429)、Redis Lua 原子扣减、不超卖、一人限购、异步落库、Redis Key 设计",
|
||
"path": "topics/architecture/seckill-design",
|
||
"stats": {
|
||
"total": 40,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 10,
|
||
"code_reading": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "cache-three-problems",
|
||
"name": "缓存穿透 / 击穿 / 雪崩",
|
||
"description": "缓存的三大经典问题:缓存穿透、缓存击穿、缓存雪崩的定义、区别与优化方案",
|
||
"path": "topics/architecture/cache-system/cache-three-problems",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 10,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "cache-read-write-strategy",
|
||
"name": "多级缓存与读写策略",
|
||
"description": "Cache-Aside、读穿写、多级缓存路径、双删与版本号竞态优化、Caffeine 本地缓存",
|
||
"path": "topics/architecture/cache-system/cache-read-write-strategy",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 10,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "cache-architecture",
|
||
"name": "缓存架构与组件选型",
|
||
"description": "单机是否需 Redis、客户端只读写缓存(Write-Behind)、多级缓存一致性、组件选型与降级高可用",
|
||
"path": "topics/architecture/cache-system/cache-architecture",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 10,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "database",
|
||
"name": "数据库",
|
||
"description": "MySQL 与 Redis 核心原理:ACID 与三大日志、事务隔离级别、MVCC、Redis 持久化机制",
|
||
"subtopics": [
|
||
{
|
||
"slug": "mysql-acid",
|
||
"name": "MySQL ACID 实现机制",
|
||
"description": "InnoDB 如何用日志与锁实现事务的原子性/一致性/隔离性/持久性:undo log、redo log、WAL、MVCC、锁",
|
||
"path": "topics/database/mysql-acid",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"code_reading": 5,
|
||
"short_answer": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "mysql-transaction-isolation",
|
||
"name": "MySQL 事务与隔离机制",
|
||
"description": "四种隔离级别、脏读/不可重复读/幻读、MVCC Read View 选版本逻辑、Repeatable Read 与 Next-Key Lock",
|
||
"path": "topics/database/mysql-transaction-isolation",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"code_reading": 5,
|
||
"short_answer": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "redis-persistence",
|
||
"name": "Redis 持久化与日志对比",
|
||
"description": "AOF/RDB 持久化机制、AOF 重写压缩原理、与 MySQL binlog/redo log/undo log 的对比(数据结构角度)",
|
||
"path": "topics/database/redis-persistence",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"fill_blank": 10,
|
||
"code_reading": 5,
|
||
"short_answer": 10
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "interview-prep",
|
||
"name": "面试准备",
|
||
"description": "面试第一轮系统性复习:覆盖语言并发模型、分布式微服务、数据库进阶、消息队列、K8s与可观测性、AI工程实践",
|
||
"subtopics": [
|
||
{
|
||
"slug": "distributed-microservice",
|
||
"name": "分布式微服务架构",
|
||
"description": "服务注册与发现、负载均衡、限流熔断、配置中心、幂等控制、分布式锁、分布式事务",
|
||
"path": "topics/interview-prep/distributed-microservice",
|
||
"stats": {
|
||
"total": 45,
|
||
"by_type": {
|
||
"single_choice": 15,
|
||
"true_false": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 5,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "message-queue",
|
||
"name": "消息队列",
|
||
"description": "主流中间件选型、路由、持久化原理、事务、死信队列、推拉模式、集群化部署",
|
||
"path": "topics/interview-prep/message-queue",
|
||
"stats": {
|
||
"total": 45,
|
||
"by_type": {
|
||
"single_choice": 15,
|
||
"true_false": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 5,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "k8s-observability",
|
||
"name": "K8s与可观测性",
|
||
"description": "K8s应用发布、弹性扩缩容、灰度发布、健康检查、可观测体系建设",
|
||
"path": "topics/interview-prep/k8s-observability",
|
||
"stats": {
|
||
"total": 45,
|
||
"by_type": {
|
||
"single_choice": 15,
|
||
"true_false": 10,
|
||
"fill_blank": 10,
|
||
"short_answer": 5,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "go-java-concurrency",
|
||
"name": "Go/Java并发模型",
|
||
"description": "GMP调度、CSP模型、AQS/ForkJoinPool、goroutine泄漏、JMM、happens-before、pprof/JFR",
|
||
"path": "topics/interview-prep/go-java-concurrency",
|
||
"stats": {
|
||
"total": 68,
|
||
"by_type": {
|
||
"single_choice": 25,
|
||
"true_false": 15,
|
||
"fill_blank": 15,
|
||
"short_answer": 5,
|
||
"code_reading": 8
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "database-advanced",
|
||
"name": "数据库进阶",
|
||
"description": "B+树索引优化、EXPLAIN执行计划、Redis集群/哨兵、混合持久化、慢查询优化",
|
||
"path": "topics/interview-prep/database-advanced",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"true_false": 5,
|
||
"fill_blank": 10,
|
||
"short_answer": 5,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "ai-engineering",
|
||
"name": "AI工程实践",
|
||
"description": "Context Engineer、Harness Engineer、智能体架构、MCP协议、权限治理、可插拔配置",
|
||
"path": "topics/interview-prep/ai-engineering",
|
||
"stats": {
|
||
"total": 35,
|
||
"by_type": {
|
||
"single_choice": 10,
|
||
"true_false": 5,
|
||
"fill_blank": 10,
|
||
"short_answer": 5,
|
||
"code_reading": 5
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "thumbup",
|
||
"name": "ThumbUP 项目",
|
||
"description": "高并发点赞系统技术调研:缓存穿透防护、二级缓存、Lua原子性、HeavyKeeper热点探测、分布式锁",
|
||
"subtopics": [
|
||
{
|
||
"slug": "cache-protection",
|
||
"name": "缓存穿透与击穿防护",
|
||
"description": "布隆过滤器、空值短缓存、互斥锁防击穿的三重防护机制",
|
||
"path": "topics/thumbup/cache-protection",
|
||
"stats": {
|
||
"total": 14,
|
||
"by_type": {
|
||
"single_choice": 8,
|
||
"code_reading": 3,
|
||
"short_answer": 3
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "two-level-cache",
|
||
"name": "Caffeine + Redis 二级缓存",
|
||
"description": "CacheManager 二级缓存架构、HeavyKeeper 热Key探测、putIfPresent 写一致性",
|
||
"path": "topics/thumbup/two-level-cache",
|
||
"stats": {
|
||
"total": 14,
|
||
"by_type": {
|
||
"single_choice": 8,
|
||
"code_reading": 3,
|
||
"short_answer": 3
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "lua-bucketing-sync",
|
||
"name": "Lua 脚本 + 分桶同步",
|
||
"description": "Lua脚本原子性、10秒时间片分桶、定时批量落库、补偿兜底",
|
||
"path": "topics/thumbup/lua-bucketing-sync",
|
||
"stats": {
|
||
"total": 14,
|
||
"by_type": {
|
||
"single_choice": 8,
|
||
"code_reading": 3,
|
||
"short_answer": 3
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "heavykeeper-topk",
|
||
"name": "HeavyKeeper Top-K 探测",
|
||
"description": "HeavyKeeper算法原理、指数衰减、vs CMS对比、Top-K堆管理",
|
||
"path": "topics/thumbup/heavykeeper-topk",
|
||
"stats": {
|
||
"total": 14,
|
||
"by_type": {
|
||
"single_choice": 8,
|
||
"code_reading": 3,
|
||
"short_answer": 3
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "distributed-lock",
|
||
"name": "单机锁与分布式锁",
|
||
"description": "synchronized到Redis SETNX演进、Lua脚本释放锁、锁续期问题",
|
||
"path": "topics/thumbup/distributed-lock",
|
||
"stats": {
|
||
"total": 14,
|
||
"by_type": {
|
||
"single_choice": 8,
|
||
"code_reading": 3,
|
||
"short_answer": 3
|
||
}
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"slug": "cybersecurity",
|
||
"name": "网络安全专题",
|
||
"description": "网络安全核心知识:Web 安全、密码学、缓冲区溢出、操作系统安全、网络攻防、安全编程",
|
||
"subtopics": [
|
||
{
|
||
"slug": "web-security",
|
||
"name": "Web 安全基础",
|
||
"description": "XSS / SQL 注入 / CSRF / SSRF / 文件上传",
|
||
"path": "topics/cybersecurity/web-security",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "crypto-basics",
|
||
"name": "密码学基础",
|
||
"description": "对称/非对称加密、哈希、数字签名、PKI",
|
||
"path": "topics/cybersecurity/crypto-basics",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "buffer-overflow",
|
||
"name": "缓冲区溢出与漏洞利用",
|
||
"description": "栈溢出、ROP、ASLR/DEP 绕过",
|
||
"path": "topics/cybersecurity/buffer-overflow",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "os-security",
|
||
"name": "操作系统安全",
|
||
"description": "权限模型、沙箱、Windows 安全机制(Win32 API)",
|
||
"path": "topics/cybersecurity/os-security",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "network-attack",
|
||
"name": "网络攻防",
|
||
"description": "中间人攻击、ARP 欺骗、DNS 劫持、端口扫描",
|
||
"path": "topics/cybersecurity/network-attack",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"slug": "secure-coding",
|
||
"name": "安全编程实践",
|
||
"description": "输入校验、整数溢出、格式化字符串、内存安全",
|
||
"path": "topics/cybersecurity/secure-coding",
|
||
"stats": {
|
||
"total": 34,
|
||
"by_type": {
|
||
"code_reading": 1,
|
||
"short_answer": 3,
|
||
"single_choice": 20,
|
||
"true_false": 10
|
||
}
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
} |