标签: 分布式系统

4 篇文章

事件驱动架构入门:系统解耦之后会得到什么、失去什么
当系统越来越复杂时,很多团队都会被“解耦”这个词吸引。于是消息队列、事件总线、异步通知开始进入架构图,事件驱动架构也就顺理成章地成为热门选项。它确实能提升扩展性,但也会引入新的复杂度。真正值得讨论的,不是它先进不先进,而是系统在采用它之后,究竟会得到什么,又会失去什么。一、事件驱动的核心不只是发消息很多人把事件驱动理解成“一个服务把消息发出去,别的…
幂等设计指南:支付、重试与重复请求到底怎么防
在分布式系统里,重复请求并不是异常情况,而是必然会发生的日常现象。用户多点一次按钮、客户端超时后自动重试、网关重放请求、消息队列重复投递,这些都会导致同一个业务动作被执行多次。问题在于,很多系统把“防重复”当成体验优化,而不是核心一致性能力。真正成熟的系统,必须把幂等设计内建到关键业务流程中。一、幂等不是防止用户误点那么简单不少人第一次接触幂等,想…
事件驱动架构入门:系统解耦之后会得到什么、失去什么
当系统规模扩大、模块越来越多时,很多团队都会自然走向解耦。最常见的方式之一,就是把原本同步调用的流程,改造成基于事件的异步协作。事件驱动架构听起来很理想:服务之间不再强依赖、扩展更灵活、响应更快。但它并不是只带来收益,同样也会引入新的复杂度。理解这种取舍,才是事件驱动真正的入门。一、什么是事件驱动架构简单来说,事件驱动架构是让系统通过“发生了什么”…
幂等设计指南:支付、重试与重复请求到底怎么防
在分布式系统里,重复请求几乎不可避免。用户连续点击、网络抖动导致客户端重发、消息队列重复投递、服务超时后的自动重试,这些都会让同一个动作被执行多次。如果系统没有幂等设计,结果往往不是“多做一点事”那么简单,而是重复扣款、重复发券、重复下单,甚至造成严重资金与数据问题。一、为什么幂等是高可靠系统的基础能力很多团队一开始觉得幂等只是支付场景才需要,但实…