Files
interview/00-项目概述/项目概述.md
yasinshaw bc0ed186c8 refactor: reorganize interview files and fix errors
Changes:
- Fixed CAP theory typo: "CP、AP、AP" → "CP、AP、CA"
- Reorganized file classifications for better structure:
  * Moved 4 database-related files from 01-分布式系统 to 02-数据库
  * Moved ConcurrentHashMap from 03-缓存 to 05-并发编程
  * Renamed 消息队列(RocketMQ_Kafka).md → 消息队列_RocketMQ_Kafka.md
- Updated project overview with new structure (73 files, 15 categories)
- Database category now has 6 files (more cohesive)
- Concurrency category now has 5 files (better organized)

File movements:
- 事务隔离级别.md: 01-分布式系统 → 02-数据库
- 数据库锁机制.md: 01-分布式系统 → 02-数据库
- 分库分表.md: 01-分布式系统 → 02-数据库
- MySQL主从延迟.md: 01-分布式系统 → 02-数据库
- ConcurrentHashMap原理.md: 03-缓存 → 05-并发编程

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-03-04 01:43:26 +08:00

4.3 KiB
Raw Blame History

项目概述

项目简介

这是一个用于记录和追踪后端 P7 级别面试问题和答案的完整项目。

目录结构

/Users/yasin/code/interview/
├── 00-项目概述/           # 项目说明(本文件)
└── questions/             # 所有面试题和答案(按主题分类)
    ├── 01-分布式系统/
    ├── 02-数据库/
    ├── 03-缓存/
    ├── 04-消息队列/
    ├── 05-并发编程/
    ├── 06-JVM/
    ├── 07-系统设计/
    ├── 08-算法与数据结构/
    ├── 09-网络与安全/
    ├── 10-中间件/
    ├── 11-运维/
    ├── 12-面试技巧/
    ├── 13-Golang语言/
    ├── 14-Web3与区块链/
    └── 15-简历面试/

内容组织

questions/ 目录结构

所有面试题和答案都按主题分类在 questions/ 目录下:

1. 分布式系统5 个文件)

  • CAP理论和BASE理论
  • 一致性哈希
  • 分布式ID生成
  • 分布式事务
  • 分布式锁

2. 数据库6 个文件)

  • MySQL索引优化
  • MyBatis核心原理
  • 事务隔离级别
  • 数据库锁机制
  • 分库分表
  • MySQL主从延迟

3. 缓存4 个文件)

  • 缓存穿透/击穿/雪崩
  • Redis架构
  • Redis数据结构
  • LRU缓存实现

4. 消息队列1 个文件)

  • 消息队列RocketMQ/Kafka

5. 并发编程5 个文件)

  • Java并发编程基础
  • 线程池核心参数
  • 设计模式
  • 限流策略与算法
  • ConcurrentHashMap原理

6. JVM1 个文件)

  • JVM和垃圾回收

7. 系统设计9 个文件)

  • 秒杀系统设计
  • 短链接系统设计
  • LBS附近的人设计
  • 即时通讯系统设计
  • 社交信息流设计
  • API网关
  • 系统设计方法论
  • 微服务架构
  • RPC框架
  • 服务网格

8. 算法与数据结构5 个文件)

  • B+树原理
  • 红黑树原理
  • 跳表原理
  • 时间轮算法
  • 算法与数据结构学习指南

9. 网络与安全3 个文件)

  • TCP/IP网络协议
  • 加密与安全
  • 性能优化

10. 中间件4 个文件)

  • Spring Boot核心原理
  • Nacos注册中心
  • Dubbo框架
  • Nginx

11. 运维4 个文件)

  • Docker容器
  • Kubernetes
  • CI/CD持续集成部署
  • 可观测性

12. 面试技巧1 个文件)

  • 面试技巧和职业规划

13. Golang语言10 个文件)

  • Golang基础语法
  • Goroutine和并发模型
  • 错误处理和测试
  • 并发编程进阶
  • 内存模型和垃圾回收
  • 性能优化
  • HTTP和Web开发
  • 接口和类型系统
  • 反射和unsafe
  • 项目结构和工程化
  • 数据库操作

14. Web3与区块链9 个文件)

  • Web3基础知识
  • 智能合约安全
  • DeFi协议与AMM
  • Layer2扩容方案
  • 跨链技术
  • Golang与区块链开发
  • 高并发在区块链中的应用
  • 简历项目Web3迁移

15. 简历面试6 个文件)

  • 项目深挖题
  • 场景设计题
  • 个人发展题
  • 离职原因与动机
  • 薪资谈判

面试官设定

  • 角色:资深后端面试官
  • 目标职级P7阿里 P7 相当于资深专家/技术专家)
  • 技术栈Go/Java、微服务、分布式系统、数据库、缓存、消息队列等

使用方式

  1. 按主题学习:从你感兴趣或薄弱的主题开始
  2. 循序渐进:先基础,后高级
  3. 动手实践:将代码示例运行起来
  4. 定期复习:面试前定期回顾重点内容

Git 提交策略

每次面试会话后会提交一个新的 git 版本,方便追踪历史记录。

统计信息

  • 总文件数73 个
  • 分类数量15 个
  • 总内容量:约 44,000+ 行
  • 覆盖主题分布式系统、数据库、缓存、消息队列、并发编程、JVM、系统设计、算法与数据结构、网络、安全、性能优化、中间件、运维、面试技巧、Golang语言、Web3与区块链、简历面试

学习路径建议

初级1-3 个月)

  1. 计算机基础
  2. 后端核心(语言、并发、内存管理)
  3. 数据库基础

中级3-6 个月)

  1. 分布式系统基础
  2. 微服务基础
  3. 中间件基础

高级6-12 个月)

  1. 分布式系统深入
  2. 系统设计
  3. 性能优化

P7 级别12 个月+

  1. 架构设计能力
  2. 技术广度和深度
  3. 团队协作和影响力

备注:建议按照 questions/ 目录下的主题顺序系统性地学习和准备。