Swift is used at Apple not just for developing applications and operating systems but also large-scale distributed systems. To succeed, Swift is designed to support single process architectures and scale up to distributed systems across many processes and machines.
One system that fits particularly well with Swift at scale is Content-Addressable Storage (CAS).
In this talk, we will be exploring what CAS is and how it can represent entire file hierarchies. We will describe how we can use server-side Swift to build a CAS that performs precision caching even at scale.
Throughout the talk we will touch on the similarities between Swift’s design and the requirements of a CAS system, like how value types and the Sendable protocol mirror immutability concepts in CAS, and how these similarities help developers write a correct and reliable system at any scale.