Agile Cat — in the cloud

かなり マッド な、Facebook の アケオメ 対策とは?

Posted in .Selected, Big Data, Facebook by Agile Cat on January 10, 2012

How Facebook Handled the New Year’s Eve Onslaught
http://wp.me/pwo1E-3Nw
Wednesday, January 4, 2012 at 9:15AM
http://highscalability.com/blog/2012/1/4/how-facebook-handled-the-new-years-eve-onslaught.html

_ highscalability

How does Facebook handle the massive New Year’s Eve traffic spike? Thanks to Mike Swift, in Facebook gets ready for New Year’s Eve, we get a little insight as to their method for the madness, nothing really detailed, but still interesting.

Facebook は、どのようにして、強烈な New Year’s Eve のトラフィック・ピークに対処したのだろう? Mike Swift の働きにより、Facebook のアケオメ対策は完了していた。 詳細まで触れずとも、その気狂いじみた、しかし、きわめて興味深い、彼らの方法論について簡潔に洞察していこう。

Problem Setup

  • Facebook expects tha one billion+ photos will be shared on New Year’s eve.
  • Facebook’s 800 million users are scattered around the world. Three quarters live outside the US. Each user is linked to an average of 130 friends.
  • Photos and posts must appear in less than a second. Opening a homepage requires executing requests on a 100 different servers, and those requests have to be ranked, sorted, and privacy-checked, and then rendered.
  • Different events put different stresses on different parts of Facebook.
  • Different events put different stresses on different parts of Facebook.
    • Photo and Video Uploads – Holidays require hundreds of terabytes of capacity
    • News Feed – News events like big sports events and the death of Steve Jobs drive user status updates

 

  • Facebook は、大晦日に 10億枚以上の Photo がシェアされると予測していた。
  • Facebook の、8億人 のユーザーは、世界中に散在している。 そして、その 3/4 が、アメリカ国外に住んでいる。 それぞれのユーザーは、平均として 130人のフレンドとリンクしている。
  • Photo と Post は、1秒以内で表示されなくてはならない。 ホームページのオープンは、100 のサーバー上でのリクエスト実行を必要とする。そして、それらのリクエストに関しては、順位付けと、ソート、プライバシー・チェックが必須であり、その後に表示されることになる。
  • それぞれのイベントが、Facebook 上の別パートにストレスを与えることになる。
    • Photo and Video Uploads – 休日の場合には、数 100 Tera Byte のキャパシティが必要になる。
    • News Feed – 大がかりなスポーツ大会や、Steve Jobs の訃報のような News Event は、ユーザー・ステータスの更新を促進させる。

imageCoping Strategies

  • Try to predict the surge in traffic. 
  • Run checks on hardware and software to find problems.
  • Designate engineers to be on call.
  • Prepare to bring additional capacity online from data centers. Implication is that your architecture can handle additional capacity and make meaningful use of it.
  • Overbuild a matter of culture so big events aren’t big challenges.
  • Prepare emergency parachutes.  These are knobs that can be turned to survive system failures or unanticipated surges in traffic. For example, for a  capacity problem they can serve smaller photos to reduce bandwidth usage. The idea is to not go off-line completely when there’s a problem, but to degrade gracefully.
  • トラフィックが、急激に上昇する事態を予見する。
  • 問題を発見するために、ハードウェアとソフトウェアに関する入念な稼働チェックを行う。
  • エンジニアの待機。
  • データセンターのオンライン・キャパシティに関する、予備的な領域を用意する。その意味合いは、アーキテクチャが追加のキャパシティに対応し、それを有効に活用できるという事である。
  • ビッグ・イベントが大きな挑戦ではないと捉えるように、文化面での問題を克服する。
  • 緊急用のパラシュートを準備する。  それらは、システム障害から生き残り、予期できないトラフック上昇に対処するための命綱である。 たとえば、キャパシティに問題が生じたときに、Photo を小さなものに切り替えて、帯域幅の使用量を低減させる。 この発想は、問題が生じても、絶対にオフ・ラインにしない点に集約される。ただし、美しさは損なわれる。

Top Five Global Events for Facebook status updates in 2011

  • Death of Osama Bin Laden, May 2
  • Packers win the Super Bowl, Feb. 6
  • Casey Anthony verdict, July 5.
  • Charlie Sheen, early March.
  • Death of Steve Jobs, Oct. 5

Related Articles

 

ーーーーー

TAG indexこの 2012年が明けて 5分も経たずに、Twitter はあえなく クジラさんを出して白旗降伏でした。 TweetDeck からの API は活きていましたので、おそらく、Web サーバーのロード・バランシングが破綻したのだと思いますが、聞くところによると、HootSuite も死んでしまったようです。 その一方で、Facebook は普段と変わらず、押し寄せるトラフィックを淡々と処理していました。 そして、その背景には、こんな努力と工夫があるのだと、ただただ驚嘆するばかりです。 ーーー __AC Stamp 2

ーーーーー

<関連>

いまの Facebook では、4.74 人 を介すれば 8 億人 とつながるらしい
Facebook の規模は、2004年当時のインターネット全体に匹敵する
Facebook メッセージを支えるストレージ・インフラ
Facebook Timeline は、新しいプライバシーを試すのか?
Facebook が買収した MailRank って、あの Second Life の・・・

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: