Apple migrated its Password Monitoring service from Java to Swift, achieving a 40% performance boost and reducing memory usage significantly, freeing up 50% Kubernetes capacity.
The rewrite allowed the service to handle billions of requests per day, improving responsiveness and maintainability.
Swift enabled smaller, more expressive codebases with an 85% reduction in lines of code, prioritizing safety and efficiency.
The service checks user credentials for data breaches without disclosing private info to Apple, using privacy-preserving protocols.
Swift's deterministic memory management reduced latency spikes caused by garbage collection pauses, ensuring consistent low-latency responses at scale.
Apple reported sub-millisecond 99.9th percentile latencies and reduced memory usage with Swift instances consuming hundreds of megabytes.
Swift's faster startup times and better scalability supported Apple's global autoscaling requirements.
The migration from Java to Swift aligns with a broader trend of using performance-oriented languages for extreme-scale services.
Companies like Meta, Netflix, and AWS are also adopting languages like Rust and Go for better performance and efficiency.
There is a shift towards performance-oriented languages for services operating at extreme scales, although Java and similar languages are still prevalent.
The trend indicates that for high-performance requirements, some are moving away from general-purpose runtimes.