2025年9月8日

海量数据如何“安家”?一文读懂哈希、范围和一致性哈希三大分片策略

摘要: 将单机问题转化为分布式解决方案时,首要任务是对问题进行分解,使得集群中的每台机器负责处理原问题的一个子集。无论是计算任务还是存储任务,其操作对象都是数据。因此,如何将海量数据有效地分解并分配到集群的不同节点上,即数据分布(也常称为数据分片,Data Partitioning/Sharding),是构 阅读全文

posted @ 2025-09-08 12:56 poemyang 阅读(313) 评论(0) 推荐(0)

2025年9月5日

“卧槽,系统又崩了!”——别慌,这也许是你看过最通俗易懂的分布式入门

摘要: 在分布式系统中,有效应对节点故障、网络分区延迟和数据一致性等挑战至关重要。本文将剖析保障分布式系统可靠性的核心机制:数据分片实现水平扩展,冗余副本保障数据高可用,租约(Lease)机制优化节点状态共识与资源管理,多数派(Quorum)原则确保操作的一致性,Gossip等去中心化协议高效同步集群状态。 阅读全文

posted @ 2025-09-05 09:33 poemyang 阅读(475) 评论(0) 推荐(0)

2025年9月4日

从JSON到Protobuf,深入序列化方案的选型与原理

摘要: 序列化:数据跨越边界的翻译官 序列化(Serialization)用于描述RPC服务接口和数据结构。在RPC通信中,客户端和服务器之间传输的数据通常是结构化的,如调用方法、请求参数、返回值等。这些结构化数据需要通过序列化过程转换为二进制流,以便在网络中进行传输。 目前,常见的跨语言序列化编码方式包括 阅读全文

posted @ 2025-09-04 11:30 poemyang 阅读(523) 评论(0) 推荐(3)

2025年9月3日

gRPC不是银弹:为内网极致性能,如何设计自己的RPC协议?

摘要: 自研RPC协议:为性能而生的赛道利器 尽管gRPC凭借其标准化、跨语言和基于HTTP/2的强大特性,在公网和云原生环境中大放异彩,但在某些特定的内网环境中,对性能、延迟和资源占用的要求可能更为苛刻。HTTP/2虽然高效,但其帧结构和头部处理机制相较于专为内网设计的极简协议,仍可能引入不必要的开销。 阅读全文

posted @ 2025-09-03 11:04 poemyang 阅读(465) 评论(0) 推荐(2)

2025年9月1日

站在巨人的肩膀上:gRPC通过HTTP/2构建云原生时代的通信标准

摘要: gRPC:云原生时代的通信标准 gRPC将HTTP/2作为其传输层,并在此基础上定义了自身的通信语义。gRPC支持四种服务方法类型,它们都映射到HTTP/2的流模型上。 1)Unary RPC: 客户端发送单个请求,服务器返回单个响应(类似传统请求-响应)。 2)Server Streaming R 阅读全文

posted @ 2025-09-01 13:27 poemyang 阅读(263) 评论(0) 推荐(1)

2025年8月29日

从HPACK到多路复用,揭秘HTTP/2如何终结网络拥堵

摘要: 头部压缩 (HPACK) 在HTTP/1中,每个请求和响应都会发送大量重复的头部信息,比如 Cookie、User Agent、Accept 等,会使得大量带宽被这些冗余的数据占用。为了解决这个问题,HTTP/2引入了HPACK算法来压缩头部信息。HPACK算法有两个主要的特性。 1)静态表(Sta 阅读全文

posted @ 2025-08-29 00:54 poemyang 阅读(172) 评论(0) 推荐(1)

2025年8月28日

从文本到二进制:HTTP/2不止于性能,更是对HTTP/1核心语义的传承与革新

摘要: 云原生计算基金会(Cloud Native Computing Foundation,CNCF)是一个非盈利的开源组织,专注于推动云原生计算的发展和标准化。而gRPC(Google Remote Procedure Call)是由Google发起并开源的高性能、跨语言RPC框架。2017年,Goog 阅读全文

posted @ 2025-08-28 00:13 poemyang 阅读(355) 评论(0) 推荐(0)

2025年8月27日

RPC的三大问题:跨语言、跨平台通信的终极解决方案是如何炼成的?

摘要: 服务间通信的效率与可靠性是系统性能和稳定性的关键。远程过程调用(RPC)作为跨进程、跨机器交互的核心机制,其传输协议的设计至关重要。一个优秀的RPC传输协议需要应对三大挑战:1)跨语言、跨平台的数据表示与解析;2)保障网络传输的完整性、顺序性与效率;3)在服务间建立清晰统一的调用约定。 本文将从 H 阅读全文

posted @ 2025-08-27 11:09 poemyang 阅读(259) 评论(0) 推荐(1)

2025年8月22日

千亿消息“过眼云烟”?Kafka把硬盘当内存用的性能魔法,全靠这一手!

摘要: Kafka 消息队列 Apache Kafka是一个开源的分布式消息队列,由LinkedIn公司开发并于2011年贡献给Apache软件基金会。Kafka被设计用来处理千亿量级的实时数据,被广泛应用于互联网大规模数据处理平台中。 Kafka强大的数据吞吐量,其中最重要部分在于它的消息日志格式的设计, 阅读全文

posted @ 2025-08-22 11:50 poemyang 阅读(603) 评论(0) 推荐(2)

2025年8月21日

Facebook内部都在用的存储引擎,LSM凭什么能硬扛亿级写入流量?

摘要: RocksDB LSM树 RocksDB是Meta (Facebook) 开源的高性能持久化键值存储库,源于Google的LevelDB,并针对SSD和服务器工作负载进行了深度优化。它广泛应用于需要处理海量数据(亿级甚至更高)并要求高写入吞吐的场景。 RocksDB 以 kv 对集合的形式存储数据, 阅读全文

posted @ 2025-08-21 11:46 poemyang 阅读(356) 评论(0) 推荐(0)

导航