BirdNest Tech Talk
Author

BirdNest Tech Talk

Author of the rpcx microservice framework, original book author, and chair of Baidu's Go CMC committee.

131
Articles
0
Likes
89
Views
0
Comments
Recent Articles

Latest from BirdNest Tech Talk

100 recent articles max
BirdNest Tech Talk
BirdNest Tech Talk
Dec 16, 2024 · Backend Development

Five Ways to Build a Broadcast Notifier in Go

This article examines five Go implementations of a broadcast notifier—using sync.Cond, channels, context, sync.WaitGroup, and sync.RWMutex—detailing their code, execution flow, and trade‑offs so readers can understand how each primitive achieves notification broadcasting.

ChannelGobroadcast
0 likes · 9 min read
Five Ways to Build a Broadcast Notifier in Go
BirdNest Tech Talk
BirdNest Tech Talk
Dec 6, 2024 · Backend Development

Go vs Rust Concurrency: Stackful vs Stackless Coroutines and Memory Impact

The article compares Go’s stackful, green‑thread model with Rust’s stackless, future‑based approach, explaining how each runtime schedules tasks, the memory overhead of goroutine stacks (2 KiB minimum in Go 1.22), the challenges of async‑await integration, and why Rust’s performance gains come with a fragmented ecosystem.

AsyncCoroutinesGo
0 likes · 8 min read
Go vs Rust Concurrency: Stackful vs Stackless Coroutines and Memory Impact
BirdNest Tech Talk
BirdNest Tech Talk
Dec 1, 2024 · Fundamentals

Step-by-Step Guide to RDMA Programming with the ibverbs API

This tutorial walks through the complete RDMA programming workflow using the ibverbs API, covering device initialization, memory registration, completion queue and queue pair creation, state transitions, send/receive operations, completion handling, and resource cleanup with concrete C code examples.

CLow latencyRDMA
0 likes · 5 min read
Step-by-Step Guide to RDMA Programming with the ibverbs API
BirdNest Tech Talk
BirdNest Tech Talk
Dec 1, 2024 · Fundamentals

How to Exchange RDMA Connection Parameters: Methods, Pros, and Pitfalls

Establishing an RDMA connection requires exchanging key parameters such as LID, QP number, and memory keys, and this article systematically outlines the essential information, compares six exchange methods—from static configuration to distributed services—and evaluates their advantages, drawbacks, and suitable scenarios.

Distributed SystemsInfiniBandParameter Exchange
0 likes · 7 min read
How to Exchange RDMA Connection Parameters: Methods, Pros, and Pitfalls
BirdNest Tech Talk
BirdNest Tech Talk
Nov 24, 2024 · Fundamentals

Why Go’s maphash Beats Traditional Hashes: Deep Dive and Benchmarks

The article explains hash algorithm fundamentals, compares common hashes, presents extensive Go benchmark results across multiple data sizes, highlights the superior performance of Go's maphash (memhash) implementation, and shows how to access it via linkname and assembly details.

GoHashPerformance
0 likes · 17 min read
Why Go’s maphash Beats Traditional Hashes: Deep Dive and Benchmarks
BirdNest Tech Talk
BirdNest Tech Talk
Nov 20, 2024 · Backend Development

How to Build High‑Performance RDMA Applications in Go with rsocket

This article explains the fundamentals of RDMA, compares libibverbs and rdma_cm with the user‑space rsocket API, and walks through a complete Go implementation using the smallnest/rsocket library, including both server and client code examples and practical deployment tips.

GoRDMAhigh-performance
0 likes · 13 min read
How to Build High‑Performance RDMA Applications in Go with rsocket