系统集成论坛
标题:
Facebook使用的11个最强大的技术
[打印本页]
作者:
思考的牛
时间:
2012-5-21 10:54
标题:
Facebook使用的11个最强大的技术
上周Facebook公司股票正式开卖,而投资者们的热情似乎都被开源技术所点燃。没错,开源也许会成为Facebook更进一步的关键所在。不过除此之外,还有哪些技术在为Facebook的业务保驾护航呢?
上周Facebook股票正式开卖,投资者们热情满载,纷纷在开放式Web技术与硬件基础设施的发展前景上押下自己的信心与资金。
三年前,谷歌公司公开宣布Web技术的全面胜利。根据谷歌公司Vic Gundotra的说法,Web已经成为一款优势明显的软件平台。不过接下来掀起全球话题狂潮的Android移动操作系统却让谷歌喜忧参半,并最终导致投资者对该公司的未来预期产生了两极分化。
这使得Facebook以一家大型技术企业的身份向业务Web化不断演变。与苹果、谷歌或者微软不同,Facebook并不经营本地软件平台或者硬件业务。与Mozilla这样的非营利性公司类似,Facebook不得不将一切赌注都押在Web以及开放式技术之上。
“Facebook,虽然已经成为一家规模庞大的社交媒体巨头,但仍然保存着高度的业务敏捷性并能够迅速做出转变,”Carlos Icaza在邮件中评价道。他是一位软件主管兼顾问,曾为多家新兴公司及财富五百强企业效力。“Facebook的特色之一就是不会将自己的业务局限在某个特定的平台上,而该公司的竞争优势也正是来源于此。”
Facebook的成功得益于一系列开源项目,公司对这些项目相当依赖,并坦言它们构成了企业技术的基本框架。在开源工具、用户数据以及社交广告平台的支持下,Facebook公司去年获得了37亿美元的利润。当然,不管从任何一个角度来看,这笔钱只是谷歌、微软以及苹果等老牌劲旅的十分之一甚至三十分之一,但Facebook正在努力缩小这种差距。在这个新的时代,人气就是财富,一家月访问用户高达8.45亿的企业完全有机会实现这一奋斗目标。
Facebook的确有大获成功的机会,但问题在于这家公司是否能拿出必要的技术与足够的营销天赋,让庞大的用户群体转化为实实在在的广告收益。这里我们汇总了十一项将为Facebook所用的技术,也衷心希望他们能在发展的道路上稳健地走下去。
1.HTML5
谷歌与Facebook几乎都是被迫开始接触HTML 5。不过先进的HTML 5标准倒的确相当适合Facebook,因为社交类网站往往会利用一些网页游戏吸引用户,而在这方面HTML 5的表现绝对堪称惊艳。目前大部分这类游戏还停留在Adobe Flash技术阶段,但包括Zynga以及Gamzee在内的Facebook合作伙伴们则早已把HTML 5当作必然的发展方向进行广泛测试。在Facebook新推出的应用中心当中,Web应用将对这家社交媒体的未来产生举足轻重的作用。
2.Facebook平台
Facebook汇集了大量API以及基础设施,并将它们以开放形式提供给第三方软件开发商。以Zynga为代表的合作企业站在Facebook的肩膀上,目前已经看到了更加光辉美好的发展前景;同时其它很多小公司也希望能借助这鲲鹏之力一偿御风之愿。
3.Facebook虚拟币
Facebook公司去年光是从虚拟币销售方面获得的收益就高达约4.7亿美元,研究公司eMarketer指出。而就在2010年,他们在虚拟币方面的销售额还只有1.4亿美元,两年间增长了两倍还不止。可以说Facebook虚拟币业务的成功不仅让自己赚到大笔资金,还带动了很多相关产业的发展。
4.Facebook应用
Facebook的应用程序阵容相当强大,管文本信息的、管图片管理的以及负责群组事务的一应俱全。不过这些应用似乎并未得到市场的真正重视,用户普遍将Facebook视为一家平台供应商,而非第三方软件开发商。不过随着时间的推移,只要Facebook仍然能够保持目前这种超高的人气,他们的应用程序产品终有一天将成功入驻每位用户的个人设备。正如大多数人都不愿脱离自己熟悉的微软Office系列软件,Facebook的用户也将习惯于自己常用的UI、应用以及平台,并最终从其它在线服务商处转投入Facebook的怀抱。而且Icaza预计,Facebook必然会逐步推出与Dropbox、Google Drive以及iCloud相类似的自有文件存储及共享服务,到那时该公司的市场影响力将再上一个台阶。
5.开放计算项目
通过对开放计算项目的支持,Facebook将能够利用技术社区中的知识改善自家数据中心基础设施,并始终保持较低的设施运营成本。
6.Hadoop
Hadoop是一款开源框架,专门用于运行分布式应用程序。它脱胎于谷歌创造的技术概念,最初由雅虎推出的Doug Cutting引擎所打造。Hadoop目前已经成为多家大型技术及媒体企业关键性基础设施的重要组成部分,Amazon、Facebook以及雅虎都是该项目的忠实客户。就在去年三月份,Facebook公司宣布将搭建世界上规模最庞大的Hadoop集群,其数据容量高达30 PB。
7.LAMP堆栈
Facebook的基础平台主要由Linux、Apache、MySQL以及PHP四大核心技术(简称LAMP)构成。跟谷歌一样,Facebook选择了开源技术,因为这样不但能够保证项目的生命力,更可以有效降低开发成本。像Memcached这样的开源调整缓存系统肯定也被纳入了项目配备,其作用在于为Facebook的LAMP系统提供最佳性能支持。
8.Scuba
Facebook公司以开源形式公布了大量自有技术,其中最引人注目的应该是尚未正式面世的Scuba。这款系统能够对任意数据集进行实时分析。由于传统MySQL数据库的查询方案在规模化设施中效率低下、反应缓慢,因此我们希望Scuba的出现能够解决这一现状。而且像Facebook这样一家数据量庞大的服务企业,规模化之下的性能效率绝对是保证公司发展的重点内容。
9.HipHop For PHP
PHP在规模化条件下的表现并不理想,但于2010年推出的开源项目HipHop for PHP则能够将速度缓慢的PHP代码转译为经过优化的C++代码。在HipHop for PHP的帮助下,Facebook宣称运行业务代码造成的CPU使用率下降了五成,而且API基础设施也能够处理两倍于以往的流量。
10.Scribe 与 Thift
Scribe是一款开源框架,其主要任务是收集日志数据。Scribe项目在确立之初,原本是为了与Facebook的服务器相对接。而Thrift则扮演着Scribe的运行基础,这是一款用于在多种不同编程语言之间创建并调整软件类服务的系统。在Scribe与Thrift的帮助下,Facebook能够记录以十亿为单位的海量日常系统信息,而且无论是用PHP、Java、Python还是C++代码编写的模块都能发挥各自应有的作用。
11.Phabricator
作为去年夏天刚刚公布的开源项目,Phabricator实际上可以被视为一系列Web应用程序的集合体,主要功能是创建并管理新的软件项目。它包含有工作流管理、漏洞追踪以及通讯管理等多项实用工具。在Phabricator的网站中,开发者给出了这样的描述:“Facebook的工程师们毫不掩饰自己对于Phabricator的喜爱之情,他们甚至将它视为‘顺利’与‘严谨’的代名词。”
原文:Facebook's 11 Biggest Technology Bets
欢迎光临 系统集成论坛 (http://bbs.xtjc.com/)
Powered by Discuz! X3.1