1

Facebook、Gmail、youtube、yahoo などの大規模なアプリケーションでログイン システムがどのように機能するかを知りたいと思っています。資格情報を入力すると、サーバーの応答が速くなります。そんなことがあるものか ?

ユーザー情報を格納するための db サーバーがさらに必要です。だから私の質問は

  1. より多くの db サーバーで認証情報を探す方法は?
  2. 彼らは特定のユーザーをチェックするためにすべての db サーバーを調べますか?もしそうなら、どのように応答が速くなりますか?
  3. ユーザーの地理的な場所に基づいてデータベースサーバーを割り当てますか?
  4. また、より多くのアプリケーション サーバーがあり、これらが相互にどのように相互接続されているか。
4

1 に答える 1

2
  1. RDBMS には、異種データ ソースに対して分散クエリ、更新、コマンド、およびトランザクションを発行するサーバーをリンクする機能があります。

  2. データベース システムは、ユーザーに関する何らかの形式のキャッシュされた情報を使用します。SQL Server では、実行プランが格納され、クエリの実行時に使用されます。データベース管理システムは、最速の結果を生成するため、またはキャッシュされたデータ セットを使用するために、どの実行計画を採用するかを決定します。注: Google、Facebook、Amazon などは、舞台裏で多くのサーバー処理能力を備えているため、瞬時に処理されているように見えます。また、データベースの管理、インデックスの実行、チューニング、最適化、およびボトルネックの特定を行う専任チームも配置されます。

  3. サーバーの地理的な場所が要因になる可能性があります。サーバーがユーザーに近いほど、情報をより速く取得できますが、IMO では、データセンターの場所に応じて、ナノ秒またはミリ秒の差の問題になります。サーバーがビジー状態になった場合、負荷分散により、あなたや他のユーザーは利用可能なリソースがより多いサーバーに移行されます。

  4. はい。このようなシナリオでは複数の Web サーバーを使用する必要があり、これは質問のパート 3 に関連付けられています。どのサーバーにアクセスするかは、最も近いサーバーの利用可能なリソースの量と、接続を受け入れるかどうかによって異なります。それらは分散されていますが、プロセス全体がユーザーに対して透過的であるように見えます。つまり、他のすべてのクライアントと同じサーバーを使用していると考えています。これらは、セッション管理、Web サービス、およびその他の相互運用技術とテクノロジを使用して相互接続できます。

于 2013-02-11T09:45:42.090 に答える