随笔分类 -  VictoriaMetrics 源码专题

摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— protoparser 框架:82 个 Go 文件的解析架构 protoparser 是 VictoriaMetrics 的协议解析框架,负责将 13+ 种外部数据协议(Prometheus exposition、Influx 阅读全文
posted @ 2026-07-04 01:13 左扬 阅读(8) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 设计哲学:为什么 VM 比 Prometheus 省 7x RAM 当你在生产环境中运行 Prometheus 时,是否曾被"内存爆炸"(OOM)的问题困扰过?当监控规模从几千个指标增长到几百万个时间序列时,Prometheu 阅读全文
posted @ 2026-07-03 17:49 左扬 阅读(32) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— prompb 协议缓冲区:RemoteWrite Proto 定义 prompbprotobufWriteRequestTimeSeriesNative Histogrameasyproto对象池Component Deep- 阅读全文
posted @ 2026-07-01 04:25 左扬 阅读(15) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 协议接入层:12 种数据协议的统一入口 —— 从 HTTP 请求到 InsertCtx 的五段式处理链路 vminsertprotoparserInsertCtx对象池relabelstreamaggrWorker PoolC 阅读全文
posted @ 2026-07-01 03:55 左扬 阅读(26) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 发布节奏与版本策略:v1.146.0 CHANGELOG 与 LTS 线解读 生产环境中,版本升级相关的故障时有发生。一个未经充分测试的升级,可能导致查询延迟增加或服务短暂不可用。 VictoriaMetrics 用一组"每月 阅读全文
posted @ 2026-07-01 03:40 左扬 阅读(34) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— Enterprise vs OpenSource:企业版与开源版的关键功能差异 当你打开 VictoriaMetrics 官网,会看到两个下载入口:一个写着 "Open Source (Apache 2.0)",一个写着 "E 阅读全文
posted @ 2026-07-01 03:37 左扬 阅读(38) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— VictoriaMetrics 家族:Metrics + Logs + Traces 一体化可观测性 当 Prometheus 触发了一条告警"订单服务 P99 延迟超过 2 秒",你想立刻看到是哪些慢请求、哪些错误堆栈导致了 阅读全文
posted @ 2026-07-01 03:17 左扬 阅读(163) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 源码阅读路线图:如何高效阅读 VM 源码 当你第一次打开 VictoriaMetrics 仓库,会看到超过 200 万行 Go 代码、300+ 个目录、150+ 个 main 包。直接逐文件阅读会迷失在代码海洋中,但如果按照正 阅读全文
posted @ 2026-07-01 03:07 左扬 阅读(25) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 开源生态:VM 在 CNCF 生态中的位置 当我们在 Kubernetes 集群中部署监控系统时,整个可观测性生态就像一座运转精密的工厂:Prometheus 负责采集数据,Grafana 负责可视化,VictoriaMetr 阅读全文
posted @ 2026-07-01 02:36 左扬 阅读(39) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 与其他 TSDB 对比——Prometheus/InfluxDB/Thanos/VM 当你需要为监控系统选择存储后端时,是否曾在 Prometheus、InfluxDB、Thanos 和 VictoriaMetrics 之间犹 阅读全文
posted @ 2026-06-29 01:24 左扬 阅读(35) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 写入吞吐/查询延迟/内存占用的数学模型 当你需要评估 VictoriaMetrics 是否能满足业务需求时, 如何量化其性能? 写入吞吐量能达到多少? 查询延迟的 P99 是多少? 内存占用和时间序列数量是什么关系? 理解了性 阅读全文
posted @ 2026-06-29 01:18 左扬 阅读(38) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 模块依赖图——从 import 语句看组件关系 当你打开 VictoriaMetrics 的源码目录时,是否曾被数百个 Go 文件所困惑?每个目录承载什么职责?组件之间如何协作?数据从写入到查询的完整链路是什么?理解模块依赖关 阅读全文
posted @ 2026-06-29 01:11 左扬 阅读(7) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— Goroutine 池/atomic/零拷贝/sync.Pool 当你阅读 VictoriaMetrics 源码时,是否曾被那些精巧的 Go 惯用法所震撼?Goroutine 池是如何避免频繁创建销毁的性能开销?atomic 阅读全文
posted @ 2026-06-29 01:08 左扬 阅读(12) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 多租户架构:accountID/projectID 与 tenant 隔离 当你需要在同一个 VictoriaMetrics 实例中为多个客户或团队提供监控服务时,如何保证数据隔离?当某个租户的写入量突然飙升,如何防止它影响其 阅读全文
posted @ 2026-06-29 01:05 左扬 阅读(48) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 版本演进:1.146.0 LTS 重大更新解析 VictoriaMetrics 自 2019 年开源以来,保持着每两周一个版本的快速迭代节奏。1.146.0 是最新的 Release Candidate 版本,包含了多项重要的 阅读全文
posted @ 2026-06-29 00:22 左扬 阅读(35) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 整体数据流:一条监控数据的完整生命周期 在监控系统中,一个监控数据点从 Prometheus 发出 Remote Write 请求,到最终写入磁盘成为可查询的时序数据,经历了怎样的旅程?本篇文章将从源码层面完整追踪一条监控数据 阅读全文
posted @ 2026-06-29 00:17 左扬 阅读(29) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 架构演进:从 TSDB 到 MergeSet 的设计取舍 在时序数据库(TSDB)的世界里,存储引擎的设计直接决定了写入性能、查询效率和资源利用率。VictoriaMetrics 采用了独特的 MergeSet 存储架构,与传 阅读全文
posted @ 2026-06-29 00:15 左扬 阅读(159) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— Single-Node vs Cluster 模式本质区别 在第一篇《设计哲学:为什么 VictoriaMetrics 能做到比 Prometheus 省 7x RAM》中,我们从宏观视角理解了 VM 的设计哲学——Merge 阅读全文
posted @ 2026-06-28 23:30 左扬 阅读(34) 评论(0) 推荐(0)
摘要:VictoriaMetrics 1.146.0 源码专题【左扬精讲】—— 开篇总览 这是 VictoriaMetrics 源码专题的开篇索引文章。 如果你正在寻找一个高性能、节省资源的时序数据库(TSDB)解决方案? 如果你想知道 Prometheus 的 "增强版" 到底强在哪里? 如果你渴望深入 阅读全文
posted @ 2026-06-27 22:05 左扬 阅读(158) 评论(0) 推荐(0)