Skip to content

SYSTEM Cited by 1 source

Apache Pekko

Apache Pekko is an Apache Software Foundation project that is a fork of Akka — the JVM toolkit for building concurrent, distributed, message-driven applications using the actor model and Reactive Streams. Pekko forked the last Apache-2.0 licensed Akka release after Lightbend relicensed Akka under the Business Source License (BSL) in September 2022, leaving the open-source community without a permissively-licensed maintained line.

The wiki's first canonical instance is Netflix's Service Topology, where Pekko Streams runs the three-stage flow-log aggregation pipeline.

What it is

Pekko inherits Akka's API surface and module layout largely unchanged:

  • Actors — isolated state, message-passing concurrency, supervisor hierarchies for fault tolerance.
  • Pekko Streams — Reactive-Streams-compliant stream processing with explicit backpressure propagation between graph stages. Builds on top of Pekko actors but exposes a declarative Source → Flow → Sink graph DSL.
  • Pekko Cluster — distributed actors with membership, gossip, partitioning, and singleton coordination.
  • Pekko HTTP — server + client HTTP toolkit.
  • Pekko Persistence — event-sourcing and snapshotting for actor state.

Why production stream-processing systems pick Pekko (or Akka)

The properties that matter for ingesting "millions of flow records per second" (Netflix's number) into a multi-stage pipeline:

  • Natural backpressure. Pekko Streams is Reactive-Streams compliant — every stage signals demand to its upstream stage, so a slow Stage 2 throttles Stage 1 without unbounded buffers. "The system… provides natural backpressure handling." (sources/2026-05-29-netflix-from-silos-to-service-topology-why-netflix-built-a-real-time-service-map)
  • Fault tolerance via supervisor hierarchies. Failures in one partition don't take down the pipeline.
  • Auto-partitioned distribution. "The system automatically partitions work across our Auto Scaling Groups to handle the volume." — Netflix runs Pekko stream-processing across an ASG fleet rather than a fixed-size cluster.
  • Mature JVM substrate. GraalVM, virtual threads, mature profiling/observability — Pekko inherits the entire JVM ecosystem.

Pekko vs Akka — the relicensing context

Lightbend's Akka relicense (Apache-2.0 → BSL) in September 2022 made Akka non-free for many production users (and effectively non-free for derivative open-source distribution). The Apache Software Foundation incubated Pekko as a fork of Akka 2.6.x (the last Apache-2.0 release line); Pekko graduated to a top- level ASF project. Pekko's design choice is API compatibility with Akka 2.6.x — most projects can switch package names (akka.*org.apache.pekko.*) without code changes.

For organisations that committed to Akka before 2022, Pekko is the practical migration target if they don't want to pay BSL license fees or live under BSL terms.

Why this matters for the wiki

Several engineering blogs in the wiki reference Akka in passing as the substrate behind a stream-processing or actor-based system. As of this 2026-05-29 ingest, Netflix is the first post the wiki covers that names Pekko explicitly — a quiet signal of the JVM-ecosystem migration arc, several years on from the relicensing. Other posts that named Akka previously (see concepts/actor-model for the corpus list) may be implicitly running on Pekko by now.

Operational instances on the wiki

  • systems/netflix-service-topology — three-stage flow-log aggregation pipeline; "distributed, fault-tolerant pipeline… automatically partitions work across our Auto Scaling Groups… provides natural backpressure handling." First canonical Netflix-Pekko naming on the wiki.

Seen in

Last updated · 542 distilled / 1,571 read