
分布式事务:从原理、开源实现到性能取舍
以“下单、库存、支付”为主线,理解分布式事务解决什么问题、常见方案如何工作,以及如何通过开源组件落地、分析性能和验证故障恢复。 本文关注:遇到一个跨服务业务流程时,能够说清事务边界、失败后的结果、恢复责任和方案取舍。 ...

以“下单、库存、支付”为主线,理解分布式事务解决什么问题、常见方案如何工作,以及如何通过开源组件落地、分析性能和验证故障恢复。 本文关注:遇到一个跨服务业务流程时,能够说清事务边界、失败后的结果、恢复责任和方案取舍。 ...
假设数据库里有一条 id=42, balance=100 的记录,现在要把余额改成 120。数据库该怎么保存这个变化? 一种做法是找到这条记录所在的页,把值改掉。另一种做法是先记下一条新记录:id=42 的余额现在是 120,等以后再整理新旧数据。 ...
应用日志里突然出现这样的错误: Error 1461: Can't create more than max_prepared_stmt_count statements (current value: 16382) 看到参数名,第一反应通常是把它调大。但在修改之前,最好先弄清楚:到底是哪台数据库触及了上限?是业务规模增长,还是预编译语句一直没有释放? ...

之前把 Redis 从 4 升级到 6,遇到过一个有点反直觉的问题。 项目使用的客户端是 go-redis v6.15.5。Redis 原地升级后,应用没有重启,业务运行正常。但应用重启之后,低流量时看起来没问题,流量上到约 40 QPS,就开始出现超时。 ...

之前升级 Go 1.23,遇到过一个 Hologres 连接问题。 Hologres 实例在阿里云新加坡。从 AWS 新加坡的机器访问没问题,但从 AWS 美国、欧洲的机器访问,就会 SSL 失败。 一开始怀疑是升级后加密算法不兼容,但同一实例在不同地域表现不同,说明还需要检查网络路径上的差异。 ...

公司现在什么都讲究省钱,而且是每一分钱都要省。模型调用费当然也不能例外,所以我一直使用 Codex + DeepSeek。休了几天假回来,Codex 升级后却突然变成了每发一条消息就报错: ...

长时间使用 Codex Desktop 处理一个任务时,系统指令、Skill、MCP 工具定义、对话历史和工具结果会逐渐占用 Context。一个使用百分比能告诉我窗口还剩多少空间,但无法解释这些空间主要用在了哪里。 ...

SSR 页面常把首屏请求结果随 HTML 注入浏览器。为了减少反复打开 Console、查找状态位置和手动输入命令的操作,可以把检查脚本存成 Bookmarklet(书签脚本):点击书签,直接在当前页面展开一棵可搜索、可复制的 JSON 树。 ...

在一条常见的 CDC 链路中,Canal 订阅 MySQL Binlog,将订单变更投递到 MQ;消费者收到消息后,再按主键回查主库获取完整数据。 低流量时一切正常,流量上来后却偶尔出现一种反直觉的现象:Canal 已经收到 INSERT,消费者立即回查同一台主库却返回空,稍后重试又能查到。 ...

在建设全自动化的 AI Native 需求产出流程时,我们遇到了一个很现实的问题: 现有 Skill 类 Agent 操作 Web 页面比较成熟,但一旦需求涉及 Android、iOS 或 Unity 应用,自动化链路就会断掉。 ...