Siri, the voice-powered virtual assistant that came to iOS back in version five of the iPhone and iPad operating system, is now on its third generation of the backend that powers the service. With this new generation of the supporting software for Siri, Apple has switched to using Apache’s Mesos cloud computing platform, according to a Mesosphere blog post.
Mesos provides an open source platform that offers tremendous benefits in scalability, elasticity, and shared resource pools. It allows for what are called distributed systems, where many different computer servers all perform the same task or group of tasks, to be easily built and run effectively. Using Apache Mesos, Apple is able to have thousands of servers running the 100 or so services that comprise Siri’s backend. That makes it one of the largest Mesos clusters in service right now.
During a presentation at the Bay Area Mesos meetup recently, Apple engineers said that the switch to Mesos would reduce latency, assist scalability, and make it easier to deploy new services as they expand on Siri’s current capabilities. Twitter and eBay both use Mesos, too, and Twitter’s Chris Aniszczyk tweeted a series of photos from the event that include a simplified overview of Apple’s Mesos cluster architecture.
— Chris Aniszczyk (@cra) April 23, 2015
Apple engineers also shared a funny bit of trivia at the meetup.
Apple’s custom Mesos scheduler is called J.A.R.V.I.S., which is short for Just A Rather Very Intelligent Scheduler. It’s named after Tony Stark’s intelligent computer assistant in the Iron Man movies (and technically, I’m told, his human butler in the old comic books).
Apple’s move to the open source Mesos clustering service should mean shorter wait times for Siri’s responses to queries, as well as more powerful capabilities in future versions of the virtual assistant. This is vital, since Apple is continually adding to Siri’s capabilities and launching the service in more countries. Of course, the additional use of Siri on the Apple Watch will require more from the assistant’s back-end.