欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Facebook背后的軟件

Facebook的數據規模使得很多傳統的解決方案根本不適用,或者無(wú)法分解來(lái)處理。保持一個(gè)擁有5億用戶(hù)的系統一直穩定可靠的運行,并不是一件很容易的事情。這篇文章介紹了一下Facebook使用的軟件。

Facebook的擴展性挑戰

在我們討論細節之前,這里有一些Facebook已經(jīng)做的軟件規模:

> Facebook有570000000000每月頁(yè)面瀏覽量 (據Google Ad Planner)。

> Facebook的照片量比其他所有圖片網(wǎng)站加起來(lái)還多(包括Flickr等網(wǎng)站)。

> 每個(gè)月超過(guò)30億張照片被上傳。

> Facebook的系統服務(wù)每秒處理120萬(wàn)張照片 。 這不包括CDN服務(wù)中處理的照片。

> 每月超過(guò)25億條的內容 (狀態(tài)更新,評論等)被共享。

> Facebook有超過(guò)30,000服務(wù)器 (這個(gè)數字是去年的?。?/p>

Facebook擴展所依賴(lài)的軟件

Facebook是在某些程度上說(shuō)仍然是LAMP的站點(diǎn),但它比普通的LAMP大得多,以納入其他元素和很多服務(wù),并修改現行的做法。

例如:

> Facebook也使用PHP,但它已經(jīng)為它建立一個(gè)編譯器,以便它可以分為本地代碼打開(kāi)了Web服務(wù)器,從而提高性能。

> Facebook也使用Linux,但它特別為網(wǎng)絡(luò )吞吐量做了優(yōu)化。

> Facebook也使用MySQL,但主要是作為一個(gè)Key-value的持久性存儲,Jions和服務(wù)器邏輯操作在Web服務(wù)器上操作。因為在那里更容易執行。

> 還有是自編寫(xiě)的系統,如Haystack,一個(gè)高度可擴展的對象存儲,用來(lái)存儲Facebook的照片。還有Scribe,一個(gè)日志系統,可以運行在Facebook的巨大規模上的日志系統。

OK?,F在 我們介紹一下全球最大的社會(huì )網(wǎng)絡(luò )網(wǎng)站的所使用的軟件吧。

Memcached

memcached的是現在互聯(lián)網(wǎng)最有名的軟件之一了。 這是一個(gè)分布式內存緩存系統,用來(lái)作為Web服務(wù)器和MySQL服務(wù)器之間的緩存層(因為數據庫訪(fǎng)問(wèn)比較慢)。 多年以來(lái),Facebook已經(jīng)提出了一些優(yōu)化Memcached和一些周邊軟件的辦法。如壓縮network stack。

Facebook的每時(shí)每刻都有數10TB的數據緩存在Memcached的數千臺服務(wù)器上。 它可能是世界上最大的Memcached的集群了。

HipHop for PHP

PHP作為一種腳本語(yǔ)言,和本地程序相比是運行緩慢的。 HipHop可以將PHP轉換成C++代碼,然后再進(jìn)行編譯,可以獲得更好的性能。 因為Facebook嚴重依賴(lài)PHP,這使得其可以讓W(xué)eb服務(wù)器運行的更有效率。

一個(gè)工程師小團隊在Facebook(一開(kāi)始只有三人)花了18個(gè)月時(shí)間開(kāi)發(fā)HipHop,現在已經(jīng)是可用狀態(tài)。

Haystack

Haystack是Facebook的高性能照片存儲/檢索系統(嚴格來(lái)說(shuō),是一個(gè)對象存儲,因此它并不一定要存儲照片)。 它有許多工作要做;有超過(guò)20億張上傳的照片,并且每一個(gè)被保存在四個(gè)不同的分辨率,因此有超過(guò)800億張照片。

它不僅是對能夠處理的上億的照片,運行表現也是至關(guān)重要的。 正如我們前面提到的,Facebook的服務(wù)約120萬(wàn)張照片每秒 ,這個(gè)數字不包括CDN上的。 這是一個(gè)驚人的數字。

BigPipe

BigPipe是Facebook開(kāi)發(fā)的一個(gè)動(dòng)態(tài)的網(wǎng)頁(yè)服務(wù)系統。 Facebook使用它來(lái)按section(稱(chēng)為“pagelets”)處理每個(gè)網(wǎng)頁(yè),以獲取最佳性能。

例如,在聊天窗口是分開(kāi)的,新聞Feed也是分開(kāi)的,等等。 這些pagelets可以在一個(gè)頁(yè)面表現的時(shí)候同時(shí)使用,這是該頁(yè)面表現的時(shí)候獲取進(jìn)來(lái)的。即使某些工程的一部分關(guān)閉或中端,用戶(hù)也可以獲得一部分網(wǎng)頁(yè)。

Cassandra

Cassandra是一個(gè)不會(huì )單點(diǎn)失敗的分布式存儲系統。 這是為NoSQL運動(dòng)的一個(gè)重要組成部分,并已公開(kāi)的源代碼(它甚至成為一個(gè)Apache項目)。Facebook在搜索功能中使用它。

除了Facebook,還有一些人也用它,例如Digg的。 不過(guò)最近Twitter放棄了cassandra。

Scribe

Scribe是一個(gè)靈活的日志系統,Facebook在他的內部大量使用。 它的能夠處理在Facebook的大規模日志記錄,并自動(dòng)處理新的日志記錄類(lèi)別,Facebook有數百個(gè)日志類(lèi)別(categories)。

Hadoop and Hive

Hadoop的是一個(gè)開(kāi)源的map-reduce實(shí)現,使得它可以在進(jìn)行大數據上進(jìn)行運算。 Facebook的使用這個(gè)進(jìn)行數據分析(而我們都知道,Facebook已經(jīng)大量的數據)。 Hive就是發(fā)源于Facebook,使得對于Hadoop使用的SQL查詢(xún)成為可能,從而是其更容易對非程序員使用。

Hadoop和Hive是開(kāi)源的(Apache項目),有為數眾多的追隨者,例如雅虎和Twitter。

Thrift

Facebook使用的幾種不同的語(yǔ)言和不同的services。 PHP是最終用于前端,Erlang是用于聊天,Java和C ++也使用于多種場(chǎng)所,也許還有其他語(yǔ)言。Thrift是一個(gè)內部開(kāi)發(fā)的跨語(yǔ)言的框架,聯(lián)系語(yǔ)言,使他們可以在一起合作,從而使他們之間可以交互。 這使得Facebook可以更容易為繼續保持其跨語(yǔ)言的發(fā)展。

Facebook已經(jīng)讓Thrift開(kāi)源。更多的語(yǔ)言支持已被添加到Thrift。

Varnish

Varnish是一個(gè)HTTP加速器,可以作為一個(gè)負載平衡器,并緩存的內容,然后可以以閃電般的速度送達。

Facebook使用的arnish來(lái)處理照片和個(gè)人資料圖片,處理每天數十億的要求。 和其他的東西一樣,Varnish是開(kāi)源的。

保持Facebook 順暢運行的其他東西。

我們已經(jīng)提到的軟件,組成了Facebook的系統,并幫助運行在大規模上。 但是,處理這么大的系統是一個(gè)復雜的任務(wù),因此我們將列出一些其他的東西,他們保持了Facebook的平穩運行。

漸進(jìn)發(fā)布和暗啟動(dòng)

Facebook有一個(gè)他們所謂的守門(mén)人制度(Gatekeeper),允許他們可以給不同的用戶(hù)運行兩套不同的系統。 這讓Facebook漸進(jìn)的發(fā)布新的功能,A / B測試,只為Facebook雇員發(fā)布等的某些特性。
Gatekeeper也可以讓Facebook實(shí)現“暗啟動(dòng)”,這是在用戶(hù)使用一些功能之前,就激活某些功能(因為用戶(hù)沒(méi)有察覺(jué),所以稱(chēng)之為暗啟動(dòng))。 這將作為一個(gè)現實(shí)世界的壓力測試,在正式啟動(dòng)前,幫助揭露一些功能障礙和其他問(wèn)題。 暗啟動(dòng)通常是在正式啟動(dòng)前兩個(gè)星期。

Profiling的直播系統

Facebook的仔細監控其系統,有趣的是它也負責監察每一個(gè)PHP函數在生產(chǎn)環(huán)境的性能。 檢測各個(gè)PHP的環(huán)境的配置運行情況。使用開(kāi)源工具,XHProf 。

漸進(jìn)的利用關(guān)閉功能來(lái)提升性能

如果Facebook運行時(shí)出現性能問(wèn)題,有一個(gè)辦法,就是逐步禁用不太重要的功能,以增強Facebook的大量核心功能表現。

我們沒(méi)有提及的事情

我們沒(méi)有提到硬件相關(guān)的事情,但這也是提高可伸縮性的重要一環(huán)。例如,就像其他大型站點(diǎn),Facebook利用CDN來(lái)處理靜態(tài)內容。Facebook還有一個(gè)the huge data center,可以幫助他擴展更多的服務(wù)。

Facebook的開(kāi)源情節

不僅是Facebook使用(和幫助),如Linux,Memcached的,MySQL和Hadoop的開(kāi)源軟件,以及許多其他情況下,也貢獻許多了其內部開(kāi)發(fā)的軟件。

Facebook亦開(kāi)源了Tornado,一個(gè)高性能的網(wǎng)絡(luò )服務(wù)器框架,由FriendFeed團隊開(kāi)發(fā)。

關(guān)于開(kāi)放源碼軟件清單,可以在Facebook’s Open Source page找到。

本文來(lái)自:顏開(kāi)的博客——我自然

原文標題:Facebook背后的軟件

譯文鏈接:http://www.yankay.com/

原文鏈接:http://royal.pingdom.com/2010/06/18/the-software-behind-facebook/

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
揭秘全球最大網(wǎng)站Facebook背后的那些軟件
揭秘Facebook的系統架構 - CSDN.NET - CSDN軟件研發(fā)頻道
大數據概述
Facebook 的 PHP 性能與擴展性
信息平臺和數據科學(xué)家的興起
Hypertable應用實(shí)踐
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久