Hadoop and Hive
Hadoop的是一个开源的map-reduce实现,使得它可以在进行大数据上进行运算。 Facebook的使用这个进行数据分析(而我们都知道,Facebook已经大量的数据)。 Hive就是发源于Facebook,使得对于Hadoop使用的SQL查询成为可能,从而是其更容易对非程序员使用。
Hadoop和Hive是开源的(Apache项目),有为数众多的追随者,例如雅虎和Twitter。
官网:http://hive.apache.org/
Thrift
Facebook使用的几种不同的语言和不同的services。 PHP是最终用于前端,Erlang是用于聊天,Java和C ++也使用于多种场所,也许还有其他语言。Thrift是一个内部开发的跨语言的框架,联系语言,使他们可以在一起合作,从而使他们之间可以交互。 这使得Facebook可以更容易为继续保持其跨语言的发展。
Facebook已经让Thrift开源。更多的语言支持已被添加到Thrift。
官网:http://thrift.apache.org/
Varnish
Varnish是一个HTTP加速器,可以作为一个负载平衡器,并缓存的内容,然后可以以闪电般的速度送达。
Facebook使用的arnish来处理照片和个人资料图片,处理每天数十亿的要求。 和其他的东西一样,Varnish是开源的。
官网:http://www.varnish-cache.org/
保持Facebook 顺畅运行的其他东西
我们已经提到的软件,组成了Facebook的系统,并帮助运行在大规模上。 但是,处理这么大的系统是一个复杂的任务,因此我们将列出一些其他的东西,他们保持了Facebook的平稳运行。
渐进发布和暗启动
Facebook有一个他们所谓的守门人制度(Gatekeeper),允许他们可以给不同的用户运行两套不同的系统。 这让Facebook渐进的发布新的功能,A / B测试,只为Facebook雇员发布等的某些特性。
Gatekeeper也可以让Facebook实现“暗启动”,这是在用户使用一些功能之前,就激活某些功能(因为用户没有察觉,所以称之为暗 启动)。 这将作为一个现实世界的压力测试,在正式启动前,帮助揭露一些功能障碍和其他问题。 暗启动通常是在正式启动前两个星期。
Profiling的直播系统
Facebook的仔细监控其系统,有趣的是它也负责监察每一个PHP函数在生产环境的性能。 检测各个PHP的环境的配置运行情况。使用开源工具,XHProf 。
官网:http://pecl.php.net/package/xhprof
文档:http://mirror.facebook.net/facebook/xhprof/doc.html
渐进的利用关闭功能来提升性能
如果Facebook运行时出现性能问题,有一个办法,就是逐步禁用不太重要的功能,以增强Facebook的大量核心功能表现。
我们没有提及的事情
我们没有提到硬件相关的事情,但这也是提高可伸缩性的重要一环。例如,就像其他大型站点,Facebook利用CDN来处理静态内容。 Facebook还有一个the huge data center,可以帮助他扩展更多的服务。
Facebook的开源情节
不仅是Facebook使用(和帮助),如Linux,Memcached的,MySQL和Hadoop的开源软件,以及许多其他情况下, 也贡献许多了其内部开发的软件。
Facebook亦开源了Tornado,一个高性能的网络服务器框 架,由FriendFeed团队开发。关于开放源码软件清单,可以在Facebook’s Open Source page.找到。
分享到:
相关推荐
在IT行业中,动态数据绑定是一种编程技术,它允许应用程序在运行时自动同步用户界面(UI)和后台数据源。这种技术广泛应用于各种应用程序开发,尤其是在富客户端和Web应用中。在QQ菜单“动态”的案例中,可能采用了...
{/* A <Switch> looks through its children <Route>s and renders the first one that matches the current URL. */} <Switch> <Route path="/users"> <Users /> </Route> <Route path="/"> <Home /> </...
`<a>`标签用于创建超链接,`<img>`用于插入图片,`<h1>`到`<h6>`定义标题,`<p>`表示段落,`<ol>`和`<li>`用于创建有序列表。 2. **CSS(Cascading Style Sheets)**:CSS用来控制HTML元素的样式,包括颜色、字体、...
这个压缩包文件包含了一个炫酷的背景自动变换的HTML登录模板,主要用于创建具有吸引力和现代感的后台登录界面。以下是对各个元素的详细解释和相关知识点: 1. **标题**:“背景自动变换炫酷后台登录html模板_背景...
React学生超市后台管理系统是一款基于React.js技术构建的管理平台,主要服务于学生超市的日常运营,提供商品管理、订单处理、库存控制等核心功能。在这个系统中,React.js作为前端开发框架,发挥着至关重要的作用。...
<li><Link to="/about">About</Link></li> </ul> </nav> <Route path="/" element={<Home />} /> <Route path="/about" element={<About />} /> </Router> ); } export default App; ``` 在这个示例中,我们...
如<header>、<nav>、<article>、<section>、<aside>和<footer>等,这些标签帮助开发者更好地组织内容,提高搜索引擎优化(SEO)效果,同时也让网页结构更加清晰,便于屏幕阅读器和辅助技术理解。 2. 媒体元素:...
HTML5是超文本标记语言的最新版本,它引入了许多新元素,如<section>、<article>、<header>和<footer>,提高了语义化,便于搜索引擎优化和无障碍访问。同时,HTML5还支持离线存储、拖放功能、媒体元素等,使网页可以...
它通过一系列标签来定义内容,如`<head>`(页面头部)、`<body>`(主体内容)、`<h1>`(标题)、`<p>`(段落)等。HTML5引入了更多语义化的标签,如`<article>`、`<aside>`、`<footer>`,以提高网页的可读性和无障碍...
2. **HTML5新特性**:HTML5引入了许多新的元素和API,如`<header>`, `<nav>`, `<section>`, `<article>`等结构性元素,以及`<canvas>`用于图形绘制,`<video>`和`<audio>`用于多媒体播放,`<form>`的增强功能如`...
同时,它不再依赖Flash或其他插件来实现多媒体播放,内置的<video>和<audio>标签支持视频和音频的原生播放,使内容跨平台兼容性得到显著提升。 游戏公司在宣传网站上通常会展示他们的游戏预告片或实际游戏玩法,...
8. SEO优化:为了提高搜索引擎排名,模板可能会集成元标签(如<title>、<meta description>等)和结构化数据标记,以便搜索引擎更好地理解网页内容。 9. 社交媒体整合:模板可能含有与社交媒体平台(如Facebook、...
此外,还有<canvas>用于绘制图形,<video>和<audio>用于多媒体播放,<input type="date">等新的表单控件,以及Web Storage和Web SQL Database为离线存储提供了可能。 2. **响应式设计**:在摄影网站模板中,响应式...
在这个注册登录模板中,HTML5的语义化标签(如<header>、<nav>、<section>、<article>和<footer>)被用来组织页面结构,提高可读性和可访问性。 2. CSS3:CSS3是层叠样式表的最新版本,提供了更丰富的样式控制和...
这些元素定义了页面的结构,例如`<header>`表示页眉,`<nav>`用于导航链接,`<section>`和`<article>`用于组织内容,`<footer>`则是页脚。此外,`<img>`用于插入图像,`<a>`创建超链接,`<video>`和`<audio>`支持...
HTML5的语义化标签如<header>、<nav>、<main>、<article>和<footer>等,有助于搜索引擎优化(SEO)和提高网页可读性。同时,离线存储功能允许用户在无网络连接时也能访问部分网站内容,增强了用户体验。 其次,响应...
Facebook后台模板可能使用这些技术来构建可交互的用户界面。 4. **Bootstrap框架**:为了快速开发响应式页面,开发者可能使用Bootstrap,这是一个流行的前端框架,提供预设的CSS样式和组件,可以简化设计过程。 5....
在"共享单车管理系统"中,可能会用到的Ant Design组件有:`<Form>`用于处理用户输入,`<Table>`展示单车信息,`<Button>`触发租赁和归还操作,`<Modal>`用于显示确认或提示信息,`<Icon>`则可以添加各种图标以增强...
1. HTML5基础:HTML5是超文本标记语言的最新版本,它增强了网页的结构化和语义化能力,引入了新的元素如`<canvas>`(画布)、`<audio>`和`<video>`,使得网页可以动态渲染图形、播放音频和视频。这对于创建动态游戏...
5. **SEO优化**:考虑到新网站上线前的SEO策略,模板可能包含SEO友好元素,如合适的元标签(如<meta name="description">)、结构化数据标记(如JSON-LD),以及无障碍访问功能(如ARIA属性)。 6. **交互设计**:...