场景:衍生品对冲侧通过 RabbitMQ 接入桥方(CFD 流动性桥)的 Queue API,订阅对冲账户的余额与持仓推送。栈:Go + github.com/rabbitmq/amqp091-go + 长驻消费者进程 + 结构化诊断日志([CFD-MQ-DIAG])。核心结论:MQ「能连上」≠「能消费」≠「能认证」≠「能收推送」——四层要分开验证,分开记日志。1. 先建立正确的心智模型1....
在落地 Pulsar 的过程中,开发者最容易踩的坑集中在两个问题上:问题一:"我有多个消费者,消息是怎么分发的?顺序能保证吗?"问题二:"消费者处理业务逻辑很慢,会不会把整个消费流程阻塞住?"这两个问题的答案,分别对应 Pulsar 的订阅模式(Subscription Type) 和消费模型(Consumption Pattern)。本文基于 Go 语言,通过完整可运行的代码,逐一拆解四种...
写给自己的 Consul 入门笔记。搞清楚"它是什么、解决什么问题、怎么工作的"。一、背景:没有 Consul 之前假设你有三个服务:订单服务、用户服务、支付服务。问题 1:配置怎么管?# 每个服务各自写死配置
DB_URL=postgres://localhost:5432/order
REDIS_ADDR=localhost:6379
PAY_SECRET=abc123改一个配置 → 要...
标签:Kafka Golang 定时任务 事件驱动 架构设计 Go Kafka 库:github.com/segmentio/kafka-go为什么要替换定时任务?定时任务在小规模系统中运行良好,但随着业务增长,问题逐渐暴露:问题描述时间耦合必须等到固定时间点才触发,实时性差重复执行多实例部署需要额外分布式锁,稍有不慎就重复执行全量扫描通常需要扫全表找待处理数据,数据量大时拖垮数据库失败难...
全局视角第一阶段 Go 基础 → 能写业务逻辑
第二阶段 单体服务 → 能跑一个完整的 HTTP 服务
第三阶段 拆分微服务 → 多个服务互相通信
第四阶段 服务治理 → 服务发现、配置中心、链路追踪
第五阶段 容器化 → Docker 打包,跑在任何地方
第六阶段 编排部署 ...