写在前面:这篇是我自己整理长连接这块时记的笔记,不算特别专业,更多是工程视角的"大白话版"。如果你正在做实时推送、物联网、IM 这类需要保持长连接的活儿,希望能给你一点参考。关于我一个普通后端开发,平时主要写服务端,偶尔也碰点前端和嵌入式。最近因为项目上需要做实时推送,把几个长连接方案都摸了一遍,顺手把学到的和踩到的记下来,整理成这篇笔记。不算什么专家,就是把自己理解的东西用大白话讲一遍,有...
面向有经验的后端/数据/平台工程师。本文不堆术语,只讲清楚三类数据库各自擅长什么、在什么场景下会踩坑,以及真实业务里怎么组合使用。原理部分点到为止,深入链接放在文末。数据库选型这件事,八成的争论其实源于一个误会:把"存储模型"当成了"产品好坏"来比。行式、列式、向量,本质是三种不同的数据组织方式,各自为一类访问模式做了极致优化。选错的代价不是"慢一点",而是整个架构跑偏。下面按"它怎么存 →...
在落地 Pulsar 的过程中,开发者最容易踩的坑集中在两个问题上:问题一:"我有多个消费者,消息是怎么分发的?顺序能保证吗?"问题二:"消费者处理业务逻辑很慢,会不会把整个消费流程阻塞住?"这两个问题的答案,分别对应 Pulsar 的订阅模式(Subscription Type) 和消费模型(Consumption Pattern)。本文基于 Go 语言,通过完整可运行的代码,逐一拆解四种...
写给自己的 Consul 入门笔记。搞清楚"它是什么、解决什么问题、怎么工作的"。一、背景:没有 Consul 之前假设你有三个服务:订单服务、用户服务、支付服务。问题 1:配置怎么管?# 每个服务各自写死配置
DB_URL=postgres://localhost:5432/order
REDIS_ADDR=localhost:6379
PAY_SECRET=abc123改一个配置 → 要...
场景:撮合引擎多 Pod 部署,每个 Pod 维护本地 L1 内存深度数据,如何通过 Redis L2 实现跨 Pod 无损同步?一、背景与问题定义撮合引擎(Matching Engine)是交易系统的核心,订单簿(Order Book)的买卖深度数据有以下特点:写频率极高:每秒数千次挂单、撤单、成交读频率更高:行情推送、风控查询、前端展示强一致性要求:深度数据不能乱序、不能丢失延迟敏感:毫...