8

何百万ものユーザーがグーグルやヤフーなどで非常に多くのものを検索しています。サーバーはどのようにしてこれほど多くの同時検索を処理できますか?彼らがどのようにしてそれをそれほどスケーラブルにしたのか、私にはわかりません。彼らのアーキテクチャへの洞察は歓迎されます。

4

4 に答える 4

7

1つの要素、DNS負荷分散

グーグルアーキテクチャにはたくさんのリソースがあります、このサイトには素晴らしいリストがあります:

于 2010-05-29T17:04:06.127 に答える
4

DNS負荷分散は正しいですが、それは実際には質問に対する完全な答えではありません。Googleは、以下を含むがこれらに限定されない多数の技術を使用しています。

  • DNS負荷分散(推奨)
  • クラスタリング-提案どおりですが、次の点に注意してください
    • クラスタ化されたデータベース(データベースの保存と取得は多くのマシンに分散しています)
    • クラスター化されたWebサービス(ここではDNSLBに類似)
    • 内部で開発されたクラスター化/分散型ファイリングシステム
  • 高度に最適化された検索インデックスとアルゴリズムにより、クラスター全体でストレージが効率的になり、検索が高速になります
  • リクエスト(squid)、レスポンス(squid)、データベース(メモリ内、上記の記事のシャードを参照)のキャッシング
于 2010-05-29T17:46:12.343 に答える
3

私は最近このトピックに関する情報を探しに行きました、そしてウィキペディアのグーグルプラットフォームの記事はグーグルがそれをどのように行うかについての情報のすべての周りの最高の情報源でした。ただし、High Scalabilityブログには、ほぼ毎日、スケーラビリティに関する優れた記事があります。彼らのGoogleアーキテクチャの記事もチェックしてください。

于 2010-05-29T17:15:47.593 に答える
1

ほとんどの高度にスケーラブルなアプリケーションの主要な概念はクラスタリングです。

さまざまな検索エンジンのクラスターアーキテクチャに関するいくつかのリソース。

また、 GoogleResearchYahooResearchで興味深い研究記事を読むことができます。

于 2010-05-29T17:26:43.717 に答える