写点什么

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:243699

评论

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

spring-cloud-kubernetes与k8s的configmap

程序员欣宸

Java 4月月更

现在有没有可以真正称得上是元宇宙的应用?

InfoQ IT百科

阿里超大规模 Flink 集群运维体系介绍

Apache Flink

大数据 flink 编程 运维 实时计算

学生管理系统详细架构设计文档

踩着太阳看日出

架构训练营

OpenMLDB Pulsar Connector:高效打通实时数据到特征工程

第四范式开发者社区

数据库 数据传输 OpenMLDB 特征 特征平台

一文读懂Seek Tiger推出创世节点的意义

西柚子

Kubernetes 中数据包的生命周期 -- 第 1 部分

Se7en

谁研发了APP弹窗功能?

InfoQ IT百科

Python 中删除列表元素的三种方法

AlwaysBeta

Python List 编程 程序员 列表

你不知道的 parseInt?

战场小包

JavaScript 前端 4月月更

以用户体验五要素的思路,如何编写产品需求文档(PRD)

小炮

需求文档

事务的隔离级别与MVCC

蝉沐风

MySQL 事务隔离级别 事务

Pipy MQTT 代理之(三)Logging

Flomesh

IoT 代理 mqtt Pipy

Linux下BusyBox根文件系统制作

DS小龙哥

4月月更

linux之sshpass命令

入门小站

Linux

模块三作业(学生管理系统架构设计文档)

Dean.Zhang

Go 语言入门很简单:sort 包

宇宙之一粟

排序 Go 语言 4月月更

Spring核心流程分析

IT巅峰技术

IoT平台如何实现业务配置中心

华为云开发者联盟

运维 物联网平台 内存 业务配置 业务配置中心

从B站和小红书看,如何做好社区产品?

InfoQ IT百科

在线YAML转JSON工具

入门小站

工具

Robot OS网络通信MQTT实战

轻口味

c++ android IoT mqtt 4月月更

[Day21]-[动态规划] 494. 目标和

方勇(gopher)

LeetCode 动态规划 数据结构算法

阿里云移动研发平台EMAS,3月产品动态

移动研发平台EMAS

ios 阿里云 移动应用 Andriod 移动推送

为什么各大APP都推出了适老版?

InfoQ IT百科

睡眠革命

石刻掌纹

活动精彩预告 | 维塔士+龙智:数字化打造游戏行业「头号玩家」

龙智—DevSecOps解决方案

数字化转型 游戏开发 游戏引擎

如何快速搭建一个像叮咚买菜这样的APP?

InfoQ IT百科

在线CSV转XML工具

入门小站

工具

架构训练营 - 模块 3- 作业

kenlu

Python图像处理丨OpenCV+Numpy库读取与修改像素

华为云开发者联盟

Python OpenCV 图像处理 Numpy库 像素

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