Version rotation used to be the main source of cold-start spikes: a fresh isolate meant re-parsing the snapshot. With 2.1 we ship heap patches instead of full snapshots, so warm pools stay warm across versions.
Measured over two weeks: p95 unchanged at 4 ms, p99 down from 19 ms to 7 ms. Rollout completes by the end of August.
Peering notes: Q3 fabric expansion
We joined two more IX fabrics this quarter (São Paulo and Johannesburg), taking our transit share below 40% of peak traffic for the first time. Shorter paths, more headroom for DDoS absorption.
As always, capacity is commissioned ahead of demand — we prefer to idle hot.
Two new PoPs: Santiago and Osaka
This week we lit scl1 and nrt1, bringing the network to 122 PoPs across six continents. Santiago closes the last gap in our South American ring and cuts p50 latency for Chilean users from 46 ms to 11 ms; Osaka takes pressure off Tokyo and improves peering with two regional ISPs we previously reached only via transit.
Both sites run the standard edge stack: anycast termination, edge-js@2, and managed TLS. As always, capacity was commissioned ahead of demand — we prefer to idle hot.
edge-js@2: how we got p95 cold starts to 4 ms
The first-generation runtime spawned a fresh isolate per deployment version, which meant cold starts in the 20–40 ms range whenever a version rotated. edge-js@2 keeps a warm pool of pre-snapshotted isolates per PoP and applies version deltas as serialized heap patches instead of full rebuilds.
The result: p95 cold start of 4 ms measured across all PoPs over 30 days, with memory overhead under 6%. The runtime GA'd in January (see the changelog) and is now the default for new projects.
Why we run anycast (and what geo-DNS can't do)
DNS-based geo-steering makes a guess once, at resolution time, and then caches it. It can't see a congested transit path, a peering dispute, or a cable cut — the network can. With BGP anycast, the routing system re-decides on every topology change, and a failed PoP simply stops announcing its routes.
The trade-off is operational: anycast demands disciplined route hygiene, rapid health-based withdrawals, and careful TCP state handling during reroutes. We think that complexity belongs in the network, not in your DNS config.