写点什么

Apple 使用 Apache Mesos 重建 Siri 后端服务

  • 2015-06-04
  • 本文字数:2187 字

    阅读完需:约 7 分钟

苹果公司宣布,将使用开源的集群管理软件 Apache Mesos ,作为该公司广受欢迎的、基于 iOS 的智能个人助理软件 Siri 的后端服务。Mesosphere 的博客指出,苹果已经创建了一个命名为 J.A.R.V.I.S. ,类似 PaaS 的专有调度 Framework,由此,开发者可以部署可伸缩和高可用的的 Siri 服务。

集群管理软件 Apache Mesos 将 CPU、内存、存储介质以及其它计算机资源从物理机或者虚拟机中抽象出来,构建支持容错和弹性的分布式系统,并提供高效的运行能力。Mesos 使用与 Linux 内核相同的系统构建原则,只是他们处在不同的抽象层次上。Mesos 内核运行在每台机器上,通过应用程序 Framework,提供跨整个数据中心和云环境进行资源管理和调度的 API 。苹果已经创建了自己专有的调度 Framework 以运行 Siri 的后端服务,将其命名为 J.A.R.V.I.S.。

J.A.R.V.I.S. 是“一种相当智能的调度器(Just A Rather Very Intelligent Scheduler)”的缩写,这个名字的灵感来自《钢铁侠》电影中的智能化计算机助手。苹果公司使用J.A.R.V.I.S. 作为内部的平台即服务(PaaS)系统,使开发者编写的Siri 后端应用程序可以部署为可伸缩性和弹性的服务,用于响应iOS 用户通过个人助理应用程序请求的语音查询。

Mesosphere 的博客报道,在苹果公司总部加州库比蒂诺的聚会上,苹果的开发者表示,他们的 Mesos 集群有数千个节点。支持 Siri 应用程序的后台系统包括约 100 种不同类型的服务,应用程序的数据存储在 Hadoop 分布式文件系统(HDFS)中。从基础设施的角度来看,使用 Mesos 有助于使 Siri 具备可伸缩性和可用性,并且还改善了 iOS 应用程序自身的延迟。

Mesos 后端是第三代 Siri 平台,告别了之前部署在“传统的”基础设施的历史。Mesosphere 博客认为,从概念上讲,苹果公司与 Mesos 的合作以及 J.A.R.V.I.S. 类似于 Google 的 Borg 项目,领先于其他支持长时间运行应用服务的类 PaaS Framework,比如 Mesospere 数据中心操作系统(DCOS)的相关组件 Mesosphere Marathon 出自 Twitter 基础设施团队的 Apache Aurora

Mesosphere 高级研究分析师 Derrick Harris 在 Mesosphere 的博客中表示,关于 Siri 由 Apache Mesos 集群管理软件支撑的公告是对 Mesos 成熟度的证明:

苹果公司能够信任使用 Mesos 支撑 Siri——这是一个复杂的应用程序,用以处理只有苹果知道每天会有多少数量的、来自数以亿计的 iPhone 和 iPad 用户的语音查询—— 这足以说明 Mesos 的成熟度,Mesos 已经为各种类型的企业带来巨大影响做好了准备。

InfoQ 采访了 Mesosphere 高级副总裁 Matt Trifiro ,并询问了这项公告对正在考虑部署应用到 Mesos 的企业和软件开发者会有什么影响:

InfoQ:为什么苹果的这项公告对 Mesos 和 Mesosphere 很重要?

Trifiro:苹果公司宣布,他们完全重建了 Siri,以运行于 Mesos 之上。这再次表明,Mesosphere DCOS 中的分布式内核 Mesos,是编排大规模容器和构建新的分布式系统的黄金标准。

InfoQ:不是每家企业都能达到苹果公司的规模,那么传统企业怎样应用 Mesos 呢?

Trifiro:像苹果和 Twitter 这样的公司,几乎全部的基础设施都使用了这项技术。因为 Siri 和 Twitter 都依赖于 Mesos,可想而知,它必须是可靠的。但是,开源的 Apache Mesos 是一项非常尖端的技术,通过开源工具手工装配,并将 Mesos 用于生产环境是非常困难的。这正是 Mesosphere 产生的原因。任何公司都能使用这项久经考验的技术,构建完整的数据中心操作系统(DCOS),并具备和 Twitter 或者苹果公司同等的能力和自动化效果,而不必成为 Twitter 或者苹果那样大规模的公司。

InfoQ:苹果公司从 Mesos API 直接实现了一套调度器(J.A.R.V.I.S.),这意味着什么呢?

Trifiro:Mesos 最强大的方面其一就是,它提供了用于构建新的分布式系统的基本功能。如果你去看其它的分布式系统,比如早于 Mesos 出现的 Hadoop,它有几十万行代码,很多地方是在重复制造轮子。所有的失败处理、网络实现、消息传递和资源分配的代码,开发者不应重写这些功能。而为程序员提供了内置这些功能的 Mesos 内核的话,他们就可以快速构建新的高可用性和弹性分布式系统,而无需重复所有基本的功能。他们可以专注于业务逻辑的实现上。

InfoQ:Mesos 和 Mesosphere DCOS 之间是什么关系?

Trifiro:Mesosphere DCOS 是一种新型的操作系统,跨越数据中心或云环境中的所有机器,将他们的资源放到一个资源池中,使他们的行为整体上像一个大的计算机。Apache 的开源项目 Mesos 是这个操作系统里面的内核。我们将其和其他组件包装到一起,包括初始化系统(marathon)、文件系统(HDFS)、应用打包和部署系统、图形用户界面和命令行界面(CLI)。所有这些组件一起构成了 DCOS。这就像苹果公司的 Yosemite 操作系统或者像 Android,他们各有一个内核(分别是 BSD 和 Linux),他们为内核添加了系统服务和工具,使内核成为值得笔记本电脑或者智能手机使用的产品。我们为数据中心所做的工作也是相同的。

更多关于苹果公司宣布使用 Mesos 作为 Siri 后端服务的消息,详见 Mesosphere 的博客

查看英文原文: Apple Rebuilds Siri Backend Services Using Apache Mesos


感谢邵思华对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-06-04 10:243799

评论

发布
暂无评论
发现更多内容

《原则》(十六)

Changing Lin

6月日更

DeFi从入门到精通

hasWhere

细细阅读,3张图带你理解,零拷贝,mmap和sendFile

奔着腾讯去

c++ Linux Mmap C++后台开发 网络io

百度智能云NIRO MAX机器人,打造智慧党建新体验!

百度大脑

人工智能 百度 机器人

互联网推送服务原理

hasWhere

form-data和x-www-form-urlencoded

hasWhere

内推学弟进了腾讯,看看他的标杆简历!

程序员鱼皮

Java 后端 简历 校招 秋招

C#开发之基于NPOI的操作Excel开发体验

吴脑的键客

C# Excel

16倍效率提升体验,博睿数据APM成企业运维超级加速器

博睿数据

APM 博睿数据 数据链DNA

深入浅出 LVS 负载均衡(三)实操 NAT、DR 模型

UCloud技术

BoCloud博云稳居中国容器软件市场份额TOP 5

BoCloud博云

容器

🌏【架构师指南】分布式技术知识点总结(下)

洛神灬殇

分布式 架构设计 6月日更

必须加强对电商促销节的监管:保障普通消费者合法权益

石头IT视角

数字化转型须遵循“战略五原则”和“3-1-1战术”

李洋

数字化转型 信创 战略思考 企业数字化 战略技术

5分钟速读之Rust权威指南(二十三)Cargo

wzx

rust

Java中的关键字final

架构精进之路

Java 6月日更

科普 DeFi 中的闪电贷

hasWhere

阿里云中间件首席架构师李小平:企业为什么需要云原生?

阿里巴巴中间件

阿里云边缘容器服务ACK@Edge 通过33项测评,拿到“2021云边协同能力认证”

阿里巴巴中间件

星环科技TDH8.0使用必读2: 10种数据模型全支持 未来属于多模型大数据平台

星环科技

大数据 边缘计算 知识图谱 数据管理平台 多模型数据

一体化、标准化、可视化数据平台,博睿数据领跑智能运维新典范

博睿数据

博睿数据 数据链DNA dataview

Tomcat架构的认知

邱学喆

tomcat @WebServlet @WebFilter Manager

《转》HttpURLConnection自动重试机制

hasWhere

一个jvm线程占用多少操作系统内存

hasWhere

WWDC21 给开发者最重要的7条新信息

阿里巴巴大淘宝技术

开发者 WWDC21

WebRTC学习—WebRTC详解

Linux服务器开发

音视频 WebRTC ffmpeg SRS流媒体服务器

2021年5月云主机性能评测报告出炉,华为云跃居榜首

博睿数据

云主机 博睿数据 博睿指数

ios webRTC实现屏幕共享功能

侠客行

ios WebRTC iOS屏幕共享 replaykit

django-task1 笔记之python基础

橙橙橙橙汁丶

django #python

Kubernetes手记(13)- 用户认证系统

雪雷

k8s 6月日更

MySQL基础之十四:事务

打工人!

MySQL 6月日更

Apple使用Apache Mesos重建Siri后端服务_Apple_Daniel Bryant_InfoQ精选文章