CPU
-
SSD FTL 碎片化是如何击穿数据库 P99 延迟的?
在评估数据库性能时,平均响应时间(Average Latency)往往是一片风平浪静,但 P99 甚至 P99.9 延迟的突然飙升(比如从数百微秒暴涨至数十毫秒),却常常成为线上系统的“无形杀手”。 这种偶发性的延迟毛刺,很多时候并非...
-
TiKV Titan 存储引擎应对 SSD 硬件空洞与文件系统碎片的深层优化实践
在 TiDB/TiKV 的大规模生产实践中,为了应对大 Value 带来的写放大问题,我们通常会开启 Titan 存储引擎。Titan 通过 KV 分离 (Key-Value Separation)将大 Value 从 LSM-tree...
-
深入 RocksDB/Titan:如何优雅地针对特定 CF 禁用与启用 KV 分离?(附动态切换避坑指南)
在海量 KV 存储场景中,RocksDB 的写放大(Write Amplification)一直是架构师的心头大患。为此,PingCAP 开发了 Titan 作为 RocksDB 的 KV 分离插件,通过将大 Value 写入独立的 Bl...
-
RocksDB 面对大 KV 高频写入直接拉胯?聊聊 Titan KV 分离架构的深水区避坑指南
在传统的 LSM-Tree 架构中,RocksDB 是应对高并发写入的利器。然而,一旦业务场景中出现了 1MB 以上的大 Key-Value(LKV) ,且伴随着 高频写入 ,RocksDB 的写放大(Write Amplificati...
-
Cassandra 5.0 遭遇节点长周期离线,Accord 协议的元数据堆积如何一步步诱发写放大雪崩
在 Apache Cassandra 5.0 中,最令人瞩目的特性莫过于引入了 Accord 协议 (CEP-15)。它通过无主(Leaderless)的一阶段/两阶段共识机制,在不引入外部协调器的前提下,为 Cassandra 带来了...
-
Cassandra 5.0 中的 Accord 事务引擎是如何解决元数据与依赖日志无限膨胀问题的?
作为 Cassandra 5.0 最受瞩目的特性之一,基于 Accord 协议 的全局多 Key 无锁 ACID 事务(CEP-15)彻底改变了 Cassandra 过去只能依靠 LWT(轻量级事务)实现单行一致性的局限。 然而,分...
-
多云多活架构下,基于 Istio EnvoyFilter 的专线延迟感知智能路由方案
在多云多活(Multi-Cloud Active-Active)架构中,跨云专线(Leased Line)是连接不同云地域(Region)内微服务的核心纽带。然而,专线并非坚不可摧,它经常面临以下痛点: 隐性衰退: 专线并未彻...
-
物理专线抖动拖垮服务网格?Istio 东西向网关 Envoy 核心参数调优实践
在企业级混合云或跨地域多 VPC 部署中, Istio Primary-Remote(主从控制面)架构 是实现跨集群服务发现与互通的标准方案。在这种架构中,跨集群的东西向流量依赖**东西向网关(East-West Gateway)**进行...
-
Cilium eBPF 碰上 Istio Envoy:NodePort 流量的劫持与交接艺术
在当今的 Kubernetes 生产实践中, Cilium(eBPF CNI) 与 Istio(Envoy Service Mesh) 的强强联合已成为高性能云原生架构的标配。然而,这种双重数据面架构也引入了极高的复杂度。 当一...
-
彻底抛弃 kube-proxy 后 Cilium 如何依靠 eBPF 驾驭 NodePort 与 ExternalIP 流量
在传统的 Kubernetes 集群中,服务发现和负载均衡主要依赖 kube-proxy 。它通过维护大规模的 iptables 规则或 IPVS 虚拟服务器来实现流量转发。然而,随着集群规模的扩大, iptables 的 $...
-
告别 iptables 泥潭:在大规模 K8s 集群中用 eBPF 彻底解放 Service 转发性能
在 Kubernetes 集群规模迈向数千节点、数万 Pod 的过程中,网络性能往往会最先撞墙。 许多平台工程师或 SRE 都会遇到类似的诡异现象:集群节点数变多后,新建连接的延迟偶尔出现抖动,CPU 莫名其妙地在内核态出现尖峰,甚至...
-
打破 K8s 传统网络瓶颈:基于 eBPF 的多租户容器隔离与 EDT 极速限速设计
在多租户 Kubernetes 集群中,网络隔离与带宽限制是保障租户安全与服务质量(QoS)的刚需。然而,传统的实现方案往往存在严重的性能瓶颈: 网络隔离 :传统方案依赖 iptables 或 IPVS 。当集群 Serv...
-
用 eBPF TC 打造高吞吐低延迟的无特权 Kubernetes 容器网络架构设计与实现
在传统的 Kubernetes 网络架构中,容器间通信通常依赖于 veth pair、Linux Bridge 以及 iptables/IPVS 等技术。当数据包从一个 Pod 发往另一个 Pod 时,它需要跨越多次网络栈,经历繁琐的路由...
-
如何在非特权(Non-privileged)容器中,安全部署基于 SPDK 与 AF_XDP 的 K8s 高性能网络?
在 Kubernetes 节点上部署基于 SPDK (Storage Performance Development Kit) 和 AF_XDP (Address Family XDP) 的高性能网络或存储组件时,传统的做法通常是...
-
SPDK NVMe-oF 性能实测:RDMA 与 AF_XDP TCP 延迟与 CPU 损耗的深度量化剖析
在超大规模数据中心和高性能存储架构中,如何压榨网络协议栈的每一分性能是永恒的主题。SPDK(Storage Performance Development Kit)作为用户态存储领域的标杆,其 NVMe-oF(NVMe over Fabr...
-
突破网络瓶颈:SPDK NVMe-oF TCP 架构下的 io_uring 与 eBPF 套接字优化实践
在 NVMe-over-Fabrics (NVMe-oF) TCP 部署中,尽管 SPDK(Storage Performance Development Kit)利用用户态、轮询模式(Poll-mode)驱动极大地释放了 SSD 的吞吐...
-
深度解析:SPDK 在 NVMe-oF(TCP/RDMA)下相较于内核驱动有哪些核心技术优化?
在现代超大规模数据中心和高性能存储架构中,NVMe-oF(NVMe over Fabrics)已经成为连接计算节点与存储节点的标准协议。 然而,当底层存储介质(如 Optane、QLC/TLC 闪存)的物理延迟降低到微秒级,网络带宽飙...
-
为什么在极限性能场景下,SPDK 依然比 io_uring 快?
在当今的存储性能压测中,如果你把一块企业级 PCIe Gen4/Gen5 NVMe SSD 的性能推向极限,通常会发现一个现象:尽管 Linux 的 io_uring 已经将内核异步 I/O 的性能提升到了前所未有的高度,但在单核 I...
-
如何防止 io_uring 异步文件 IO 退化为同步阻塞
在高性能系统编程中, io_uring 被寄予厚望。大家都期待它能带来极致的无锁、非阻塞异步 IO 体验。然而,许多人在将传统的 File IO 迁移到 io_uring 后,压测时却发现 CPU 消耗极高,甚至出现了意料之外的延迟...
-
深入 io_uring 零拷贝:高性能网络发送下的内存生命周期与背压控制
在百兆、千兆网络时代,标准的套接字 send/recv 带来的内核态与用户态内存拷贝( copy_to_user / copy_from_user )开销微乎其微。但在 100GbE / 400GbE 骨干网络及高吞吐、低延迟的现...