Quiz Entry - updated: 2026.07.30
Across the four patterns, which is fastest and which is slowest, and what causes the gap?
Pull-based outbound is fastest (~0.13 s mean) because it just reads existing on-chain state; push-based outbound is slowest (~16 s) because its triggering event only fires once a transaction is mined into a block.
* Mean latency (log scale): reads are sub-second, but anything gated on a mined block jumps ~120× to ~16 s. *
The decisive factor is whether the pattern has to wait for a block:
| Pattern | Typical latency | Why |
|---|---|---|
| Pull-based outbound | ~0.13 s | Reads historical/current state directly — no transaction to mine |
| Pull-based inbound | ~0.5 s | Feeds data into the calling contract |
| Push-based inbound | ~0.5 s | Submits a transaction, but latency measured to tx-hash |
| Push-based outbound | ~16 s (high variance) | Must wait ~1.5 inter-block times for the transaction whose event it reacts to |
The lesson for design: reads are cheap and fast; anything gated on a transaction being included in a block inherits that block's latency and variance — a real concern for time-sensitive automation.
Go deeper:
Foundational Oracle Patterns (Mühlberger et al., arXiv) — the experiments behind these latency figures and how they were measured.
Blockchain oracle (Wikipedia) — background on how oracles interact with block confirmation and latency.