Skip to content

Commit 80c86fa

Browse files
DavidLiedleclaude
andcommitted
Add project README and fix book front page
- Add root README.md with description, TOC, and build instructions - Add src/README.md as mdBook front page with chapter summaries - Move Acknowledgments to end of SUMMARY.md - Remove Acknowledgments from book front page Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 2d8938a commit 80c86fa

3 files changed

Lines changed: 76 additions & 1 deletion

File tree

README.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# HTTP Alternatives for APIs
2+
3+
A survey of API communication protocols beyond HTTP — gRPC, MQTT, AMQP, ZeroMQ, Cap'n Proto RPC, WebSockets, SSE, and more.
4+
5+
Most API code is written without a protocol decision. Engineers reach for REST over HTTP because it is what they know, what the framework assumes, and what everyone else uses. That is a reasonable default — but it is still a choice, and like any invisible choice, it has costs.
6+
7+
This book surveys the alternatives: what they are, how they work, where they outperform REST, and where they do not.
8+
9+
## Read Online
10+
11+
Published at **https://cloudstreet-dev.github.io/HTTP-Alternatives-for-APIs/**
12+
13+
## Contents
14+
15+
1. The Default We Never Questioned
16+
2. gRPC — HTTP/2 in a Convincing Costume
17+
3. WebSockets and SSE — When You Need the Server to Talk Back
18+
4. MQTT and the IoT World
19+
5. AMQP and Message Brokers
20+
6. ZeroMQ — Messaging Without a Broker
21+
7. Cap'n Proto RPC and the Binary Frontier
22+
8. Lesser-Known Contenders
23+
9. What Nobody Has Tried Yet
24+
10. How to Choose — A Decision Framework
25+
26+
## Building Locally
27+
28+
Requires [mdBook](https://rust-lang.github.io/mdBook/).
29+
30+
```sh
31+
cargo install mdbook
32+
mdbook serve
33+
```
34+
35+
## Acknowledgments
36+
37+
Thanks to **Georgiy Treyvus**, CloudStreet Product Manager, whose idea started this book.

src/README.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# HTTP Alternatives for APIs
2+
3+
Most API code is written without a protocol decision. Engineers reach for REST over HTTP because it is what they know, what the framework assumes, and what everyone else uses. That is a reasonable default — but it is still a choice, and like any invisible choice, it has costs.
4+
5+
This book surveys the alternatives: what they are, how they work, where they outperform REST, and where they do not. It is organized as a practical tour rather than a reference manual. Each chapter covers one protocol or family of protocols in enough depth to understand the tradeoffs, with the goal of making protocol selection a deliberate decision rather than an accidental one.
6+
7+
## What This Book Covers
8+
9+
**Chapter 1 — The Default We Never Questioned**
10+
Why REST became the baseline, what it costs in performance and expressiveness, and when those costs matter enough to look elsewhere.
11+
12+
**Chapter 2 — gRPC**
13+
Protocol Buffers and HTTP/2 under the hood: strongly-typed contracts, efficient binary serialization, and streaming primitives that REST cannot express.
14+
15+
**Chapter 3 — WebSockets and SSE**
16+
Full-duplex connections and server-sent events: when you need the server to push data rather than wait to be asked.
17+
18+
**Chapter 4 — MQTT and the IoT World**
19+
Publish-subscribe over constrained networks: designed for unreliable connections, minimal overhead, and millions of devices.
20+
21+
**Chapter 5 — AMQP and Message Brokers**
22+
Enterprise messaging with guaranteed delivery, routing, and backpressure — the RabbitMQ ecosystem and when you need a broker in the middle.
23+
24+
**Chapter 6 — ZeroMQ**
25+
Messaging without a broker: low-latency socket patterns for high-throughput systems that cannot afford the overhead of a central queue.
26+
27+
**Chapter 7 — Cap'n Proto RPC and the Binary Frontier**
28+
Zero-copy serialization and capability-based RPC at the extreme end of the performance spectrum.
29+
30+
**Chapter 8 — Lesser-Known Contenders**
31+
Thrift, Avro, Flatbuffers, Nano, NATS, and others that solve real problems in specific contexts.
32+
33+
**Chapter 9 — What Nobody Has Tried Yet**
34+
Emerging directions: QUIC, WebTransport, local-first architectures, and patterns at the edge of current practice.
35+
36+
**Chapter 10 — How to Choose**
37+
A decision framework for matching protocol to use case, with worked examples across common API scenarios.

src/SUMMARY.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Summary
22

3-
- [Acknowledgments](./acknowledgments.md)
3+
- [Introduction](./README.md)
44

55
- [The Default We Never Questioned](./ch01-the-default-we-never-questioned.md)
66
- [gRPC — HTTP/2 in a Convincing Costume](./ch02-grpc.md)
@@ -12,3 +12,4 @@
1212
- [Lesser-Known Contenders](./ch08-lesser-known.md)
1313
- [What Nobody Has Tried Yet](./ch09-what-nobody-has-tried.md)
1414
- [How to Choose — A Decision Framework](./ch10-how-to-choose.md)
15+
- [Acknowledgments](./acknowledgments.md)

0 commit comments

Comments
 (0)