十万个Why
大约 8 分钟
💡 程序员十万个Why 专栏
追本溯源,深入剖析 AI 实战、微服务架构、Kafka、MySQL 与 Java 核心反直觉设计。
📚 专栏分类导航
1. AI 专栏
聚焦大模型应用落地、RAG 检索增强、Agent 多智能体协同、向量数据库及 Prompt / JSON 稳定输出等硬核思考:
- AI 画图全家桶来了!这回想自己手绘图都难了
- 无成本搭建 AI 画图神器!我以后再也不会手绘架构图了
- Java + LangChain4j 实现 RAG 文档切片的几种方案
- 大模型落地:实打实地提升 RAG 系统准确率的 5 种方案!
- 十万个why:AI 让开发效率提升了一倍,为什么程序员反而更累了?
- 十万个Why:向量库明明搜到匹配结果,大模型为什么还会胡说八道?
- 十万个why: 向量数据库入门,简单的像喝水一样!
- 十万个why:为什么大模型不设计成带有记忆的?
- 十万个why:为什么让大模型输出 JSON 不难,但是稳定输出JSON这么难?
- 十万个why:多个 Agent 协同干活,为什么跑着跑着它们开始互相“踢皮球”甚至聊起天了?
- 十万个why:大模型做意图识别和 NER,为什么别再用 Prompt 提取 JSON?
- 十万个why:明明大模型越来越聪明,为什么生产环境里的 Agent 还是极难落地?
- 十万个why:让大模型学习企业内部数据,为什么推荐做 RAG,而不是微调模型?
2. 架构与微服务
深入微服务治理、网关隔离、服务发现与路由演进:
- 十万个Why:内网服务明明可以直连,为什么一定要加一层 API 网关?
- 十万个Why:网关已经统一鉴权,为什么微服务内部还要二次鉴权?
- 十万个why:Feign 超时时间明明设了 3 秒,为什么实际等了 10 秒才返回超时?
- 十万个why:Nginx 已经能做负载均衡,为什么还需要服务注册发现?
- 十万个why:在 Nacos 点了下线,为什么流量还是打到了停机的机器上?
- 十万个why:明明 Spring Cloud Gateway 自带限流,为什么大厂还要在 Nginx 层再做一道限流?
- 十万个why:有了 Spring Cloud Gateway,为什么前面还得挡一层 Nginx?
3. 数据库与存储
剖析数据库死锁、索引失效机制与跨存储一致性瓶颈:
- 十万个why:两个线程更新完全不同的两条商品记录,为什么 MySQL 还是会死锁?
- 十万个why:为什么同时操作数据库和 MinIO,根本不需要考虑一致性?
- 十万个why:为什么索引多了会影响性能,根本原因分析
- 十万个why:明明两个字段都加了单列索引,为什么写了句 OR 之后,执行计划还是走了全表扫描?
4. 消息队列 Kafka
深度解析 Kafka 高并发吞吐、顺序消费与 Rebalance 避坑指南:
- 十万个why:Kafka 消息明明都设了相同的 Key 保证分区有序,为什么消费端拿到的顺序还是乱的?
- 十万个why:为什么 Kafka Partition 越多写入性能越差 ?
- 十万个why:想暂停 Kafka 消费,为什么别直接用 Thread.sleep?
- 十万个why:消费者线程明明还在正常打日志,为什么 Kafka 还是判定它“死亡”并触发了 Rebalance?
5. Java 并发与核心
从 JVM 内存模型、线程池机制到 Spring 事务与三级缓存底层源码:
- 十万个Why:父线程明明把 TraceId 传给了子线程,为什么并发一高,日志链路上下文全串号了?
- 十万个Why:线程池明明还有最大线程闲着,为什么任务非要进队列排队?
- 十万个why:Java 有了虚拟线程,CompletableFuture 异步编程是不是可以替换了?
- 十万个why:方法明明加了 synchronized,为什么套上 Spring 事务之后又线程不安全了?
- 十万个why:明明 Spring 二级缓存就能解决循环依赖,为什么非要三级缓存?
6. 缓存与分布式
解锁 Token 鉴权、分布式锁与高并发缓存一致性最佳实践:
