logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

一个定时任务把 Seata 全局锁等超时拖了 40 分钟:AT 模式的脏写防线,很多团队根本没配对

sn: 18 batch: 4 round: 9 topic: 分布式事务 Seata AT 模式原理 我们有个库存服务,平时走 Seata AT 一切正常。直到有天运营配了个批量调价任务,凌晨跑批更新 20 万行库存记录,同一线上的秒杀扣库存接口全部报 Global lock acquire failed,锁等待持续了 40 多分钟,期间所有扣库存请求被阻塞重试,流量雪崩到相邻服务。事故复盘时发

#后端
灰度接口前 5 个请求熔断了 3 个,风控全拒:Sentinel 慢调用比例和最小请求数的 4 个坑

title: 灰度接口前 5 个请求熔断了 3 个,风控全拒:Sentinel 慢调用比例和最小请求数的 4 个坑 topic: 微服务熔断降级 Sentinel 滑动窗口 round: 4 batch: 5 我们接入 Sentinel 是为了保护一个第三方风控服务——它偶尔抖一下,RT 能从 20ms 飙到 2s。结果上线第一天,新灰度接口的前 5 个请求里有 3 个被熔断,风控直接整体拒单,比

#sentinel#windows#linux
精尽 Redisson 源码分析 —— 限流器 RateLimiter

限流,无论在系统层面,还是在业务层面,使用都非常广泛。【业务】为了避免恶意的灌水机或者用户,限制每分钟至允许回复 10 个帖子。【系统】为了避免服务系统被大规模调用,超过极限,限制每个调用方只允许每秒调用 100 次。限流算法,常用的分成四种:每一种的概念,推荐看看《计数器、滑动窗口、漏桶、令牌算法比较和伪代码实现》文章。计数器比较简单,每固定单位一个计数器即可实现。滑动窗口Redisson 提供

文章图片
#redis
护栏与可靠性:把 LLM 系统从“猜“变成“敢用“

十年后端架构经验,2024 年起主导 3 个 AI Agent 系统从 POC 走到生产(日均百万次调用),本文所有护栏方案均经过生产验证。

文章图片
#人工智能
Docker 化 AI 开发环境:从零搭建可复用的 AI 开发容器,让队友也能一键起飞

【150字摘要】 本文提出用Docker容器化解决AI开发环境配置难题,实现团队协作无缝衔接。核心方案包括:1)构建标准化开发镜像(Python/Node/Go多语言支持+GPU加速);2)docker-compose一键启动完整AI服务栈(含数据库);3)VSCode远程开发集成。实测显示,新成员环境搭建时间从2天缩短至5分钟,且环境一致性达100%。关键设计:分离模型存储与镜像、利用缓存加速构

文章图片
#docker#人工智能#容器
单体、SOA、微服务、Serverless:我们 4 次重构,第 3 次才没把团队拖垮

title: 单体、SOA、微服务、Serverless:我们 4 次重构,第 3 次才没把团队拖垮 tags: 软件架构, 微服务, Serverless, 单体, 架构演进 description: 从我们团队 4 次架构重构的翻车与收敛出发,拆解单体、SOA、微服务、Serverless 四种模式的真实代价与适用边界,给出按团队规模选型的判断。 我们团队这五年把架构从单体拆到微服务,又从微服

#微服务#serverless#重构
单元测试全绿却线上报错:微服务 4 层测试我们漏了契约,那次接口变更背了锅

"我本地单元测试都过了啊"——这句话我在故障复盘会上听过太多次。单体时代,单元测试覆盖核心逻辑确实能挡住大部分问题;但微服务拆开之后,一个服务的"对",可能正好是另一个服务的"错"。这篇文章聊我们踩坑后建立的 4 层测试体系:单元、集成、契约、E2E,以及最容易被忽视、却最致命的契约测试。我的核心观点先放在前面:微服务测试的重点不是"测得多",而是"在正确的边界上测"——测错了边界,单测再绿也挡不

#单元测试#微服务#架构
把 12 个微服务合并回 4 个之后,P99 从 680ms 降到 470ms:过度拆分的 5 笔账

title: 把 12 个微服务合并回 4 个之后,P99 从 680ms 降到 470ms:过度拆分的 5 笔账 tags: 微服务, 单体架构, SOA, Serverless, 架构演进 category: 后端 新来的同事第一周问了个问题:"查一个订单详情要调几个服务?" 我打开链路追踪给他看那张图:网关 → 订单服务 → 用户服务 → 会员等级服务 → 权益服务 → 商品服务 → 库存服

#微服务#架构#云原生
K8s 滚动发布撞出重复 ID:雪花 workerId 冲突那天,订单表主键报了 3000 次 Duplicate

title: K8s 滚动发布撞出重复 ID:雪花 workerId 冲突那天,订单表主键报了 3000 次 Duplicate topic: 分布式 ID 生成方案对比:雪花、号段、Leaf batch: 4 round: 3 我们用雪花算法(Snowflake)生成订单号两年没出过问题,直到服务迁到 K8s 并开启滚动发布。某次发布后 10 分钟,订单表突然狂报 Duplicate entry

#kubernetes#容器#云原生
软件架构模式:把“我的页面“拆成 5 个微服务后,一次渲染要并发等 5 次 RPC

title: "软件架构模式:把'我的页面'拆成 5 个微服务后,一次渲染要并发等 5 次 RPC" tags: 软件架构, 微服务, serverless, 单体架构, 服务拆分 categories: 后端, 架构 我们曾经是"微服务原教旨主义者":用户中心按功能切成 profile、auth、preference、address、points 五个服务,理由是"每个服务独立部署、独立扩容"。

#微服务#rpc#架构
    共 41 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 请选择