分类 · 文章

后端开发

PHP / Java / Python / Go 语言实践、框架源码、微服务、数据库、性能优化

共 243 篇文章

MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战

MongoDB 从零到能用:文档、CRUD、聚合与 Node.js 实战 很多数据库教程停在“插入一条数据、查询一条数据”。真正开始写业务后,马上会遇到更多问题:字段怎么设计?数组怎么查?分页怎么写?索引到底有没有生效?应用代码如何安全地复…

每天认识一个组件:元数据平台 DataHub

一、DataHub 出现的背景 传统的数据目录通常解决的是“登记”和“搜索”问题:有哪些表、有哪些字段、谁创建的、文档在哪里。随着数据平台规模扩大,仅靠静态目录会遇到几个明显瓶颈。 第一,数据资产数量增长很快。一个企业可能同时使用 Hive…

Python的TypedDict

在 Python 中,TypedDict 是官方在 Python 3.8 引入的一个类型注解工具(位于 typing 模块中)。 简单来说:它本质上就是一个普通的 Python 字典(dict),但它在代码编写和静态检查阶段,具有像类(Cl…

Redis的Set操作居然能把我的服务整挂了?

"服务突然响应超时,监控大盘一片红,最后发现是Redis的SADD操作卡了5秒——你敢信?" 上周压测时,我们一个日均千万级请求的推荐服务突然出现间歇性超时。经过长达6小时的排查,发现罪魁祸首竟是一个看似无害的Redis Set操作。今天我…

一文搞懂 LangGraph 分支、循环与状态持久化

> 上一篇我们搞定了 LangGraph 的线性流程编排和多 Agent 协作基础。这一篇深入 LangGraph 最核心的三个能力:条件分支、循环重试、状态持久化,最后再来一个硬核的 中断/恢复 实战。 一、条件分支:让工作流"会思考" …

第25章 Redis集群脑裂实录:一次真实故障复盘

> 所属模块:模块四:缓存架构深水区 Redis集群脑裂实录:一次真实故障复盘 一、时间线复盘 T+0s 机房网络发生短暂分区,Redis主节点与多数Sentinel节点之间的网络通信中断,但主节点自身依然正常运行,并且还能接受来自部分客户…

为什么我的Java Stream操作总是默默吃掉异常?

深夜11点,我盯着生产环境的错误监控面板,发现某个关键报表连续三天数据异常。最诡异的是:日志里没有任何错误记录。最终排查发现,是Stream.map()操作中抛出的异常被悄无声息地吞掉了——而同样的代码在单元测试中却能正常抛出异常。 如果你…

我TM竟然被Java的空指针坑了第三次!

"这行代码怎么可能 NPE?!"凌晨 2 点,我盯着生产环境报警群里的堆栈信息,第 3 次因为空指针摔在同一个地方。这次是在处理电商订单的履约系统,日订单量 50W+ 的场景下,一个 Optional.ofNullable() 的误用直接让…

每天认识一个组件:分布式缓存Alluxio

一、引言 过去的大数据架构常常把计算和存储放在同一套集群里,例如 Hadoop 时代的 HDFS + MapReduce/Spark。随着云上对象存储、湖仓架构、弹性计算、AI 训练集群的发展,数据和计算越来越分离:数据可能在 S3、HDF…