写点什么

Facebook 在 2015 年的 5 大开源项目

2016 年 4 月 18 日

Facebook 相信开源的巨大力量。当整个社区能够共同致力于编码工作时,所产生的益处是不可估量的。人们会用新的眼光指出我们的问题,让我们能够更快地找出解决方案。我们将一起克服所面对的挑战、加速创新过程。社区的力量能够让我们冲破现有技术的种种限制。

当然,成功的开源项目离不开一个健壮的、通力协作的社区。在年终即将来临之际,我们将按照社区的活跃度与影响力排名,选出 Facebook 在 2015 年的 5 大开源项目。

HipHop 虚拟机(HHVM)

HHVM 是我们开发的一套虚拟机与 web 服务器系统,并于 2013 年实现了开源,它是基于我们在 2010 年发布的 HPHPc 编译器开发的。仅在过去一年间,代码提交次数就上升了 29%,而 fork 的数量则上升了 30%。

HHVM 最常见的用途是作为单台服务器使用,它的目标是取代 Apache 与 mod_php,运行由 Hack 和 PHP 编写的程序。通过 JIT 编译方式,HHVM 能够实现更好的性能,同时保留了 PHP 开发者已习惯的各种灵活性。我们在今年实现了几个重要的里程碑:

  1. 新的 Async 特性默认可用,包括对 AsyncMySQL MCRouter (memcached)的支持。
  2. 当 PHP 7 语言本身于 12 月推出的同时,我们就宣布了对 PHP 7 所有主要特性的支持,并且发布了新一版的用户文档。
  3. Box宣布将使用 HHVM 作为运行其 PHP 代码的唯一引擎。
  4. Etsy 在 4 月份将业务迁移至 HHVM 平台,帮助该公司克服了在创建大规模移动产品时所遇到的各种挑战。

React

Facebook 在 2013 年 5 月开源了 React,而在过去一年间,我们仍然获得了来自社区的极大支持,代码提交的数量提高了 75%,而 fork 的数量更是提高了 198%。React 是由 Facebook 所设计的一种用于构建用户界面的 JavaScript 库,目前已在许多公司得到应用。React 使用了一种全新的方式构建应用:它允许开发者将应用分解为相互解耦的组件,因此每个组件都可进行独立的维护与迭代。

今年,我们为 React 推出了两个重要的发布:一是 React Native,二是新的开发者工具。我们也看到越来越多的公司开始使用React 构建他们的产品,包括 Netflix WordPress

Presto

Presto 是由我们设计的新型分布式 SQL 引擎,它能够对各种大小(从 GB 级至 PB 级)的数据源进行交互式的分析查询。我们设计 Presto 的目标是帮助我们更快地进行数据分析,以配合我们不断增长的数据量与持续加速的产品周期。

自从我们于 2013 年 11 月开源了 Presto 之后,它的发展、接受度以及对它的支持都得到了全面的提高。在去年一年的时间内,它的代码提交数量提高了 48%,而 fork 的数量则提高了 99%。 Airbnb Dropbox 以及 Netflix 等各大公司都开始使用 Presto 作为他们的交互式查询引擎。Presto 在全球范围内的接受度也在逐步提高,包括来自日本的社交媒体游戏开发公司 Gree ,以及来自中国的电子商务公司京东 JD.com

同样在今年,Teradata 也宣布了加入Presto 社区的计划,专注于企业级特性的改善并提供相应的支持。这也展现了整个社区对于Presto 成为数据基础设施方面一个重要组成部分的信心。此外,Amazon Web Services(AWS)也在其 EMR 服务中将 Presto 作为一线功能提供支持,已有诸多用户在生产环境中使用该功能,包括 Nasdaq。而在业界处于领先地位的商业智能工具开发商 MicroStrategy 也在其旗舰产品 MicroStrategy 10 中提供了对 Presto 的支持。

RocksDB

我们在 2013 年 11 月开源了 RocksDB,这是一个嵌入式的持久化键值数据库,支持高速的数据存储。在过去一年间,该项目的代码提交数量提高了 52%,而 fork 的数量则提高了 57%。除了这些令人印象深刻的数据之外,该项目引起了整个社区强烈共鸣的原因在于该嵌入式数据库能够为由网络延迟引起的响应缓慢问题提供一种临时方案,并且它提供了充分的灵活性,可通过自定义的方式应对不断发展的硬件趋势。

RocksDB 为 LinkedIn 与 Yahoo 等公司提供了各种关键性的服务。我们今年的主要目标之一是将 RocksDB 这个存储引擎的特性迁移至通用目的的数据库上,以 MongoDB 作为起点。与 Teradata 宣布提供对 Presto 的商业性支持类似,RocksDB 今年的另一个里程碑是来自 Percona 的数据性能专家宣布将为其提供企业级的支持。

React Native

React Native 是我们最新推出的开源项目之一,它在今年 3 月实现了开源。React Native 让工程师能够使用与 React 相同的方法与工具为移动设备快速地创建原生应用。Facebook 不仅在内部持续开发这些工具,并且致力于通过与开源社区的协作改善全球开发者的体验。在 React Native 诞生的第一个年头,它就在 Facebook 的开源项目流行度排名中攀升到第二的位置,在 GitHub 上已有超过 23000 位关注者。Facebook Ads 的 iOS 与 Android 应用内部正是使用 React Native 所开发的,对于那些以 JavaScript 为核心能力的开发者来说,代码的重用率达到了 85%。React Native 为移动开发的观念带来了重要的改变,这也是我们本年度最关键的成就之一。

总的来说,我们仍有许多要完善的地方,但作为整个社区的一份子,我们对于目前的成就深感自豪。对于那些在百忙之中仍乐于为这些项目贡献力量、使我们在这一年中达成如此成就的人们,我们深表谢意!


感谢李建盛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016 年 4 月 18 日 17:382114
用户头像

发布了 428 篇内容, 共 148.4 次阅读, 收获喜欢 20 次。

关注

评论

发布
暂无评论
  • 不同实时 Hadoop 实现之间竞争升温

    Hortonworks的新的Stinger Initiative加入了Apache Drill和Cloudera Impala的竞争,它们的目的是成为最好的实时Hadoop实现。

  • Facebook 2019 开源成果揭秘:170 个新项目,82000commits,93000Star

    Facebook用一篇博客文章总结了自己的2019年开源成果。在2019年,Facebook发布了170个新开源项目,commits数超过82000,开源项目总共获得93000Star。

  • Hadoop 三国之吴国 MapR

    Hadoop领域曾经有三家发行商互相角逐,这其中不乏各种战术与谋略。MapR实力强大却少争斗,今天是其特立独行的故事。

    2018 年 3 月 7 日

  • 调查:制定开源计划的大公司是小公司的两倍

    开源软件是软件开发中很特殊的存在,云计算、大数据、物联网、人工智能等炙手可热的技术背后都有开源软件,很多企业也纷纷投身其中。那么企业对于开源软件的研发和支持达到了何种程度?近日,有机构专门对此做了调查。

  • 拥抱开源:Facebook 成立开源组织 TODO

    在9月15日举行的@Scale大会上,Facebook副总裁Jay Parikh介绍了Facebook在开源方面的一些工作,并宣布成立TODO组织以帮助其它的公司开始自己的开源之路。

  • Twitter 启动新 Scala 编译器开源项目,旨在提高编译速度

    Twitter在GitHub上启动了一个全新的Scala编译器开源项目,编译器的名字叫作Reasonable Scala Compiler(简称rsc),旨在提升编译速度。

  • Parse 将关闭服务

    日前,Parse的联合创始人Kevin Lacker,宣布Facebook旗下的DBaaS平台Parse将逐步停止运营,直到2017年1月底彻底退出。此消息一出便引来开发者的很多抱怨,但是Facebook希望这个过渡过程能够平滑进行,并提供了几个可选的替代方案。

  • 与 Facebook 分手后 ,PrestoSQL 再度因商标侵权被迫更名

    开源大数据分布式 SQL 查询引擎 PrestoSQL ,如今已经更名为 Trino 。原来的项创始团队和主要贡献者依然在维护着这一开源项目,只是 PrestoSQL 已经不再叫做 PrestoSQL 了。

  • Facebook 开源的真正原因

    Facebook究竟为何要使用、支持和发布开源项目?这个问题比探究Faceboot如何做开源更有意思。

  • Imply:基于 Druid 的大数据分析公司

    开源大数据项目Druid由Metamarkets开发。开始时籍籍无名,后来被Airbnb使用和推广以后,受到了很多关注。

    2018 年 5 月 9 日

  • 微软的大数据发展史:必应的 Cosmos

    Cosmos是微软必应搜索引擎下开发的大数据基础架构,代表了微软在大数据方面的最高成就。

    2018 年 4 月 2 日

  • Presto 即服务:AWS 上的交互式 SQL 查询

    作为Facebook公司的一项可用作在PB级规模的数据上执行交互式SQL查询的技术,Presto现在已经迈出了步入主流应用的第一步。大数据创业公司Qubole日前发布了与Amazon Web Services集成的Presto即服务alpha版本。

  • 大规模数据处理未来之路

    放心,放眼未来的几十年,大规模数据处理技术都依然炙手可热,不会被淘汰。

    2019 年 7 月 26 日

  • Kylin 在 eBay 的成长历程与实践

    本文回顾了 Apache Kylin 在 eBay 中的发展历程和应用实践,同时展望了 eBay 与 Kylin 的未来发展规划。

  • 可视化分析鼻祖 Tableau

    Tableau作为可视化分析软件领域的奠基人,算是学术界人士创业成功的典范,今天就来看一看其成长的历程。

    2017 年 10 月 11 日

  • 2016 年 Facebook 开源事件回顾

    最近一年以来,开源开始全部进军商业软件领域,开源趋势明显已经在相当长一段时间内成为高科技产业内日益重要的组成部分。Facebook、谷歌,甚至是多年来一直对开源抱有敌意的微软,都已经基于开源许可发布大量代码并向众多项目投入开发人员。也正因为如此,越来越多企业加入到开源社区当中开始成为一种历史潮流。 Facebook为了争当开源第一大厂,已经把自家很多好东西都拿了出来贡献给开源世界,在开源之路上呈现一骑绝尘之势,承冠为王。 Facebook开源项目涉及的领域有移动工具多样化、大数据、客户端web库、后台运行时和基础设施,还有通过开放计算项目涉及到的服务器和存储硬件等等。

  • Flutter:最新进展和未来展望

    演讲嘉宾董韬,高级研究员,Google Flutter 团队。董韬博士在 Google 总部负责 Flutter 及相关开发工具和编程语言的使用者体验研究。在该岗位上,他致力于实施以用户为中心的迭代设计方法,深入研究开发者需求和使用习惯,帮助改善开发工具的UI设计,提高API和编程语言的可用性。除在 Google 的工作外,他还经常担任国际计算机学会(ACM)顶尖会议和期刊的论文审稿人。董韬拥有密歇根大学安娜堡分校的人机交互博士学位。他还拥有复旦大学信息系统学士学位。内容介绍Flutter 是 Google 帮助开发者在移动、Web 和桌面多个平台实现高质量原生应用程序的开源UI工具包。本次演讲会介绍 Flutter 项目的最新进展,包括 Flutter for Web、iOS 设计语言、基于 Material Design 的定制UI、状态管理解决方案、 Dart语言新特性、开发工具、以及中国社区的发展状况。本次演讲在最后会对 Flutter 和 Dart 团队在2019下半年的工作重点作一些展望。

    2019 年 7 月 24 日

发现更多内容

游戏夜读 | 2020周记(3.27-4.3)

game1night

目标:2020年学会写文章

wiflish

高仿瑞幸小程序 01 初建项目,引入Vant Weapp

曾伟@喵先森

小程序 微信小程序 前端 vant

Windows Terminal添加右键菜单

simon

Windows Terminal 右键菜单 终端 开发者工具 命令行

Hive 中的 GroupBy, Distinct 和 Join

tkanng

sql 大数据 hadoop hive

C++中glog源码剖析以及如何设计一个高效 log模块

程序喵大人

c++ 编程语言

爬虫(108)Python 3.8的超酷新功能(接近一万字,请耐心享用,而且建议收藏)

志学Python

python 爬虫 python3.x python升级

高仿瑞幸小程序 00 准备工作

曾伟@喵先森

小程序 微信小程序 前端 瑞幸

初步了解MyBatis

Java收录阁

mybatis

每日一道python面试题 - Python的函数参数传递

志学Python

Python 爬虫 面试题 python 爬虫 python3.x

kettle(Pentaho Data Integration) 使用"最佳"实践

稻草鸟人

Java kettle

HashMap 的 7 种遍历方式与性能分析

Bruce Duan

Java 性能 hashmap 遍历

什么是 MQ ?

itfinally

系统设计 MQ

周报 01|多点分享,少点创作

强劲九

学习 读书

程序员陪娃漫画系列——魔方

孙苏勇

程序员 生活 程序员人生 陪伴 漫画

3NF建模&维度建模

常海峰

用行动解决情绪,情绪永远是累赘

熊斌

情绪控制 团队协作

如何写排版优雅简洁的文章?

池建强

写作 排版

GroupBy 用法的三重境界,面试终结者

Hyun

数据库 sql 大数据 性能优化 数据分析

我愿沉迷于学习,无法自拔(二)

孙瑜

深度思考 个人成长

死磕Java并发编程(7):读写锁 ReentrantReadWriteLock 源码解析

七哥爱编程

Java并发 读写锁 ReentrantReadWriteLock

关于5G RCS的产品猜想

机器鸟

这里有一个慢 SQL 查询等你来优化

石头

MySQL 数据库 性能优化 后端

爬虫(107)Python 3.7的超酷新功能(接近一万字,请耐心享用,而且建议收藏)

志学Python

Python 最佳实践 python 爬虫 python3.7 python升级

运维常见问题及排查思路

编程随想曲

运维

Go语言获取程序各类资源的绝对路径的方法

良少

Python go 路径 动态 绿色

一些想法

Z

每天打卡python面试题 - 在一行中捕获多个异常(块除外)

志学Python

Python 面试题 python 爬虫 python3.7

​成功的人,都是 “狠角色”

非著名程序员

程序员 提升认知 成功学 自律

即将步入职场,忐忑而又期待的新人菜鸟

菜农阿飞

成长 新人

KubeFATE: 用云原生技术赋能联邦学习(一)

亨利笔记

人工智能 学习 FATE KUBEFATE

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

Facebook在2015年的5大开源项目-InfoQ