http://www.pingwest.com/facebook-technical-accomplishments/

我在Quora上看到一个热门提问:“What have been Facebook’s greatest technical accomplishments?”

前Facebook基础架构软件部门工程总监Robert Johnson给出的回答得到了大多数人的认同:“我们搭建了使用Memcached缓存的MySQL数据库集群”。在一年前他离开Facebook时,这个集群已能面向超过一万亿个对象,每秒处理超过十亿个响应。

他详细说明了在这个工作中克服的一些挑战:

数据中心在时间上的高度一致性。这使得用户对facebook的操作在全世界的服务器上都是没有时延的,例如不会出现在你删除了某些内容后,这些数据仍会在其他的服务器上存在一小段时间的情况。对这个话题感兴趣的同学可移步Wired上一篇名为《透视Google资料库全球同步的秘密》的文章,文中详细阐述了Google在这方面的举措。

流量控制。为防止高峰期数据传输拥堵和数据丢失而对请求发送端设计的流量控制体系。

如何设计分布式缓存?分布式设计能够让系统并行地读取缓存,提高效率。在这个基础上,Facebook的系统根据任务量的不同选择不同的缓存形式,以节省空间并进一步提高读取速度。

容灾措施。在少数服务器无法响应时,随机地向不同的服务器发送请求直到收到响应为止,是个不错的做法。但如果有大量的服务器无法响应,这种做法会令剩下的服务器承载巨大的负荷。所以系统设计者会让这些服务器在过载前就停止对用户请求的响应,这种做法虽然会让用户感到不适,但做对于保证数据中心的稳定是至关重要的。很多人在双十一遇到淘宝/支付宝/银行页面无法响应也是采用了这个机制。

调度与监控。当服务器并行协作处理某项事件时,服务器之间能相互监控彼此的状况。

他还提到了Facebook针对Memcached和MySQL的改进。

其他得票数较高的答案中提到的技术有:

HipHop for PHP。这个项目旨在加速和优化PHP。它目前已支撑了大部分Facebook的Web流量。由于HipHop,Facebook Web服务器上的CPU使用平均减少了50%,从而大大减少了服务器的需求。

HayStack。Fackbook用于存储照片的系统,其存储照片的数量在千亿数量级。

Scribe。Facebook开源的日志收集系统,它能够从各种日志源上收集日志,存储到一个中央存储系统上,以便于进行集中统计分析处理。

The Graph API。该API提供了对人员、相册、事件等Facebook对象以及这些对象之间诸如朋友、标签、分享内容等链接之间的访问,通过一个统一而稳定URI来访问其表象。

我们知道,得票最高的“使用Memcached缓存的MySQL数据库集群”不仅是Facebook的巨大成就,Google、Amazon等公司都耗费大量精力在为“数据库集群”寻找最高效的解决方案,它并不是一个看上去“酷”和“新”的技术理念,但在产品背后,它支撑着功能,影响着体验。

这也是PingWest所认同的,作为一个具备全球视野、有洞见的在线科技媒体,我们不仅报道科技创业资讯和趋势,同时着力挖掘最有价值的产品背后的技术、设计方法与思考。

Facebook最伟大的技术成就有哪些相关推荐

  1. KDD'21 | 揭秘Facebook升级版语义搜索技术

    上一篇分享了KDD'21 | 淘宝搜索中语义向量检索技术Que2Search: Fast and Accurate Query and Document Understanding for Searc ...

  2. Facebook 疯狂投资 AR 技术!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 这证实了扎克伯格的直觉--VR仍然是一项尴尬的技术,它的吸引力仅限于骨灰级游戏玩家,但是AR ...

  3. Facebook 低调开发 AI 技术工具:自动扫描代码找漏洞

    编辑 | 小智 本周要闻: 苹果和华为都声称第一款 7 纳米手机芯片:Facebook 开发 AI 技术工具,能自动扫描代码找漏洞:中国发布自己的域名系统基础软件 "红枫":李飞飞 ...

  4. 技术成就梦想,51CTO让我飞翔【我与51CTO的故事】

    技术成就梦想,51CTO让我飞翔        佛曾经说过 "前世500百次的回眸 才换来今生的擦肩而过~"        于是上辈子我一直对你眨眼,今生终于让我和你不期而遇,命中 ...

  5. 盘点近期重大技术成就及其将带给你的影响,与你我息息相关!

    原文标题:Key Highlights in Data Science / Deep Learning / Machine Learning 2017 and What can we Expect i ...

  6. 覃超:从湘西到Facebook,硅谷只是技术人生的一小站

    用五分钟的时间,讲述一个播种多年的技术梦.这里是<初心>纪录片第四集,今天的讲述者是一位 Facebook 早期员工.一位创业者,一位从边远地区的山里走上世界舞台的探险者.他的名字叫做-- ...

  7. Facebook 神经上采样技术,用于实时渲染

    超分辨率不仅用于图像和视频,现在也用在虚拟现实和大型游戏的渲染画面上采样,使得图形渲染引擎只需要渲染低分辨率图像,用户仍能观看到高分辨率画面,以降低其计算压力. Facebook AI 发明的神经超采 ...

  8. 创新数据库技术 成就IOD愿景携DB2 25载创新 IBM推新“信息议程”

    IBM DB2诞生25周年庆典大会在京召开   (2008年9月23日,北京)IBM(NYSE:IBM)今天在北京召开"IBM DB2诞生25周年纪念大会",与各界来宾共庆IBM信 ...

  9. 如何掌握Facebook自动人脸识别技术?

    转自:http://toutiao.com/i6311228330276291073/ 1. 简介 你是否注意到 Facebook 已经开发出了一项能识别你朋友照片的神奇能力?过去,你能通过点击 Fa ...

最新文章

  1. SAP R/3系统的R和3分别代表什么含义,负载均衡的实现原理
  2. 转在同一个sql语句中如何写不同条件的count数量
  3. linux 互斥锁销毁_c-销毁锁定的互斥锁时pthread_mutex_destroy的正...
  4. CodeBlocks: 生成的exe文件自定义一个图标
  5. 学Java发展前景好的三个原因
  6. synchronized的理解
  7. 阿里面试“神器”,成为众多程序员手中的王炸!
  8. MicroShift - 一个超轻量级 OpenShift 环境
  9. 删除同目录下面txt文件(利用os,fnmacth模块)
  10. hdu 1875(最小生成树kruskal)
  11. c# 免费版pdf转word尝试
  12. 高一下册计算机教案,高一信息技术教案
  13. Android常用十大框架
  14. Javascript版开心农场
  15. RFID到底是什么技术
  16. Vue + Spring Boot 项目实战(三):前后端结合测试(登录页面开发)
  17. 【深度学习】FFA-Net:北大北航提出的图像去雾的新型网络(代码在Github上已开源)
  18. 2742: [HEOI2012]Akai的数学作业
  19. win10安装sql2005 /sql2005联机丛书和开发工具安装不上 服务启动不了等
  20. 好玩的linux程序,好玩的linux命令

热门文章

  1. Mybatis源码解析-sql执行
  2. sscanf取固定长度的int_翠屏摇臂式取水泵船长沙水泵厂专业设计中大泵业
  3. 从会议、医患沟通和客服对话三大场景看对话文本摘要技术
  4. 博士申请 | 上海财经大学语言智能实验室招收2022年秋季入学博士生
  5. 中国学霸们被世界名校集体退学,原因竟然是……
  6. 逃离数学焦虑、算法选择,思考做好机器学习项目的3个核心问题
  7. java笔记类与对象3.7-3.10 2020.3.17
  8. CVPR 2019 论文和开源项目合集(Papers with Code)
  9. 【Java基础】HashMap原理详解
  10. yoyo思维题(困难) 组合数学