从各种文章来源来看,我理解的Facebook架构如下
1:web前端用PHP来写的。再用Facebook的HipHop转换成C++代码,使用g++编译。提供了一个高性能的模板系统和web逻辑执行层。
2:业务逻辑使用Thrift做成服务。一些服务根据不同情况使用php,c++,java来实现。也有可能使用其他语言。
3:用java写的服务没有使用一些企业级的框架服务。
4:持久化使用MYSQL,Memcached,Facebook自己的Cassandra.Hadoop的HBase。Memcached用来作为MySql的缓存。Facebook的工程师承认他们在减少Cassandra的使用,因为更简单的一致性模型和MapReduce 能力而倾向于使用HBase。
5:离线的处理是使用Hadoop和Hive.
6:诸如日志,点击和feed这样的数据使用Scribe,并使用Scribe-HDFS来聚合和存储。因此可以使用MapReduce来分析。
7:BigPipe 使用流水线的逻辑来加速页面的生成。
8:搜索引擎的实现细节还是一个谜。
9:预搜索使用了一个自定义的存储和检索逻辑。
10:Chat建在一个Epoll服务器,使用Erlang开发,并用Thrift访问。
11;数以亿记的用户上传图片用Haystack处理。
12:消息系统明显使用分片的架构设计和动态集群管理。业务逻辑和持久化封装在所谓的Cell里面。每个Cell处理一部分用户。新Cell会随着流行度增加而增加。使用HBase持久化。
支持以上服务的一些已知数字如下:
1:超过6万台的服务器。最新的数据中心位于Prineville,使用他们自己设计的硬件。即是最近公布的Open Compute Project
2:Memcached存储了300 TB 的数据。
3:Hadoop和Hive集群由3000台服务器组成,配备8核,32GB内存,12TB的磁盘,即24000核,96TB内存,36PB磁盘。
4:每天1000亿次点击,5000万图片,3trillion缓存对象。130TB的日志。(july 2010)
分享到:
相关推荐
### Facebook架构设计:数据为核心,平台为桥梁 #### 引言 在当今互联网时代,数据已成为推动企业发展的关键因素,尤其对于社交网络巨头Facebook而言,数据不仅仅是其业务的基础,更是其创新和服务的核心。...
### Facebook架构设计:数据为核心,平台为桥梁 #### 引言 在当今互联网时代,数据已成为企业竞争力的关键因素。Facebook,作为全球领先的社交网络平台,其成功在很大程度上归因于其精妙的数据架构设计。本书第六...
### Facebook架构深度解析 #### 一、架构概览与核心组件 Facebook的架构设计是大流量网站架构的经典案例,尤其在扩展性和性能优化方面有着独到之处。其架构由一系列核心组件构成,包括PHP、MySQL、Memcache以及一...
这个压缩包“FaceBook架构设计.zip”包含了对Facebook如何处理海量数据、提供高效服务的深入探讨。以下是对其中核心知识点的详细说明: 1. **分布式系统**:Facebook架构的基础是分布式计算,它将服务分散在...
以下是对Facebook架构及其PHP使用的一些关键知识点的详细解析: 1. **前端架构**:Facebook的前端主要是基于JavaScript构建的,使用React框架来实现动态和高性能的用户界面。React允许高效地处理大量数据,并提供...
根据提供的文件信息,我们可以了解到关于Facebook架构设计的多个关键知识点。 首先,文档中提到了Facebook的Web技术应用,包括了QuickSort算法。这暗示着Facebook在处理数据排序时可能采用了快速排序算法,这是一种...
Facebook架构的核心设计理念是可扩展性、高可用性和性能优化。为了处理海量的数据和高并发访问,Facebook采用了分布式系统的设计原则。以下是一些关键知识点: 1. **分布式存储**:Facebook使用了多种分布式存储...
fluxy, 一种Facebook架构流量的实现 #Fluxy一种facebook架构流量的实现。##Introductionfacebook团队有一个关于流量管理的简介,包含在React文档 documentation 。 把传统的MVC方法引入到客户机端web服务中,用相同
以下是对Facebook架构的深入解析: 1. **语言选择**: Facebook选择了PHP作为主要的后端开发语言,这主要是因为PHP的易用性和开发效率。尽管存在其他性能更高的语言,但正如Flickr的Cal Henderson所言:“语言不会...
你的数据结构⋯⋯”信息架构师坚信,处于大多数系统核心的是数据,而不是算法。随 着Web的兴起,用户产生和消费的数据比以往更加推动了信息技术的使用。Web用户不 会去接触QuickSort(快速排序)。他们会访问一个...
《Facebook的信息架构评析》 Facebook的信息架构设计被誉为互联网领域中最合理的典范,其合理性在于它在不断演变中兼顾了用户体验、功能扩展与内容呈现的平衡。这篇文章将对Facebook早期的信息架构进行深入剖析,并...
Facebook作为全球最流行的社交平台之一,拥有庞大的用户基础和流量,其技术架构自然成为了业界关注的焦点。为了维持高效的分享和通信能力,Facebook构建了一个复杂的系统来应对难以想象的访问量和数据规模。2007年11...
《架构之美:Facebook架构解析》是一本深入探讨大型互联网公司,特别是Facebook的系统架构与设计的书籍。作为架构师的必备读物,它揭示了如何构建可扩展、高可用、高性能的复杂网络服务。以下是对该主题的详细阐述:...
#### Facebook架构演变 Facebook的架构经历了以下几个阶段: 1. **初始阶段**:2004年,Facebook由马克·扎克伯格和他的室友在哈佛大学的一间宿舍中创建时,所有的服务都运行在同一台服务器上。 2. **扩展阶段**:...
【Facebook架构】 Facebook是全球最大的社交网络平台,其架构设计以处理海量用户数据和实时交互著称: 1. **Hadoop/BigTable**:Facebook使用这些大数据存储系统处理用户产生的海量数据。 2. **Tornado**:...
3. **Facebook架构** (facebook_architecture.pdf): - Facebook的社交图谱是其核心架构的一部分,支持数十亿用户的社交互动。 - 使用Hadoop和MapReduce进行大数据处理和分析。 - 引入了BigTable和Memcached来...
### Facebook架构设计的核心理念 Facebook的架构设计核心在于其开放平台F8,它允许第三方开发者创建应用程序,这些应用可以无缝集成到Facebook的生态系统中。F8平台的关键特性包括: 1. **统一接口与API标准**:...
facebook对象结构图 感兴趣的可以好好看看
以下是对Facebook架构设计应用到企业级开发中的深入分析: 1. **开放平台与应用程序(Apps)模式**: Facebook的开放平台允许第三方开发者创建应用程序,这些应用可以无缝地融入Facebook的生态系统,为用户提供...
Facebook的服务器架构是全球互联网行业中备受关注的焦点,作为一个高性能的集群系统,它承载着海量的数据处理任务。本文将深入探讨Facebook的架构设计,从不同的角度解析其技术栈。 首先,Facebook的架构可以分为两...