Distributed Systems with Swift
summary
Language-level Swift 5.5 actors extend to an experimental distributed actors feature plus an open‑source cluster runtime, packaged as swift-distributed-actors on GitHub. Implementation uses SwiftNIO for networking, a SWIM membership protocol with lifeguard extensions for failure detection, and a receptionist pattern with async streams for discovery. Demo builds a worker board that randomly forwards jobs and reacts to node termination; remote calls become asynchronous and throwing, and local testing works via the same APIs on nightly toolchains.
AI-written summary · about
chapters (14)
- 0:00Introduction to talk
- 0:15Why Swift for distributed systems
- 3:03Challenges in distributed systems
- 9:21Introducing distributed actors
- 13:34Distributed actor properties
- 17:02Runtime integration benefits
- 19:26Open sourcing clustering library
- 20:50Actor discovery with receptionist
- 22:14Handling actor failures
- 25:44Cluster membership details
- 26:49Building a worker board
- 27:51Testing and tracing benefits
- 28:54Advantages of distributed actors
- 29:36Availability and feedback
related talks
37mDistributed Actors and Where They Live
18mDistributed Actors in OCaml
47mDo We Really Need Actors in Swift Concurrency?
26mSwift Concurrency Under the Hood
59mLife of Actors in a Cluster: Why, When and How
25mGo distributed (and scale out) with Actors and Akka Clustering
42mAsync Await and More in Swift
01h 14mAkka.NET: The Future of Distributed Programming in .NET
