0

私は、同時ページ要求に対して理論的に異なるサーバー設定が何に相当するかを知りたいと思っていました。その答えは常にブードゥー教と魔術に浸っているようです。次の設定での最大同時ページリクエストの概算はどれくらいですか?

apache + php + mysql(1サーバー)

apache + php + mysql + cacheing(memcachedまたはsimiliar(まだ1つのサーバー)など)

apache + php + mysql + cacheing +専用データベースサーバー(2台のサーバー)

apache + php + mysql + cacheing + dedicatedDB + loadbalancing(マルチウェブサーバー/シングルデータベースサーバー)

apache + php + mysql + cacheing + dedicatedDB + loadbalancing(マルチウェブサーバー/マルチデータベースサーバー)

+分散(アマゾンクラウドエラスティック)-これは「余裕がある限り」であることは知っていますが、いつ移動するかを知っておくと便利です。

建設的な批判に感謝します。ある実装から次の実装に移行する時期を把握しようとしています。それぞれの実装には、プログラミングまたはセットアップのいずれかの優れた機能が備わっているからです。

4

2 に答える 2

1

あなたの質問では、キャッシングについて話しますが、これはおそらくWebアーキテクチャのパフォーマンスと容量に関する最も重要な要素の1つです。

Memcacheは便利ですが、実際には、その前に、サーバーの応答で適切なHTTPキャッシュディレクティブを確認する必要があります。これは2つのことを行います。リクエストの数を減らし、サーバーの応答時間を短縮します(Apacheが正しく構成されている場合)。これは、VarnishやCDNなどのHTTPアクセラレータを使用することでも改善できます。

考慮すべきもう1つの要素は、システムがステートレスであるかどうかです。ステートレスとは、通常、サーバーにセッションを保存せず、リクエストごとにセッションを参照しないことを意味します。優れたシステムアーキテクチャは、状態にできるだけ依存しません。状態が少ないほど、システムは水平方向にスケーラブルになります。ほとんどの人は、パーソナライズの問題に直面したときに状態を紹介します。つまり、ユーザーごとに異なるコンテンツを提供します。このような場合は、最初にHTML5セッションストレージを使用して調査する必要があります(つまり、完全なユーザーデータをクライアントのjavascriptに、明らかにhttps経由で保存します)。データセットが小さい場合は、javascriptCookieを保護します。そうすれば、キャッシュされたリソースを引き続き提供し、クライアントでjavascriptを使用してパーソナライズできます。

最後に、スタックにはデータベース層が含まれています。これは、パフォーマンスと容量のもう1つの潜在的なボトルネックです。システムからデータを読み取るだけの場合も、水平方向のスケーリングは非常に簡単です。読み取りと書き込みがある場合は、通常、読み取り/書き込みデータセットを別のデータベースに分割し、別のデータベースに読み取り専用を設定することをお勧めします。その後、より関連性の高い方法を使用してスケーリングできます。

于 2012-06-21T09:29:05.557 に答える
0

これらの設定は、互いに比較できる単一の答えを吐き出すことはありません。答えは、あなたがリストしたよりも多くの要因によって異なります。

彼らが単一の答えを吐き出したとしても、それは数十のうちの1つのメトリックにすぎません。これを最も重要な指標にする理由は何ですか?

さらに悪いことに、これらの選択肢はそれぞれ無料ではありません。これらのそれぞれには、エンジニアリングの労力とメンテナンスのオーバーヘッドがあります。あなたの組織、あなたのアプリ、そしてあなたのコスト/収益構造を理解せずに分析することはできませんでした。

AWSのようなオプションには、開発作業が含まれるだけでなく、ソリューションに「閉じ込められる」可能性があるため、そのことにも注意する必要があります。

この回答が完全ではないことは知っていますが、この質問は、単一のメトリックに還元できない非常に複雑な領域に関係していることを指摘しています。

まったく間違った方向からこれに近づいているのではないかと思います。テクノロジーを探しに行って、それらの使用方法を理解しないでください。代わりに、アプリのプロファイルを作成し(測定、測定、測定)、発生している実際の問題を把握してから、その問題とその問題のみを解決します。

問題を理解し、テクノロジーオプションを理解している場合は、答えが必要です。

すでにこれを行っており、問題が同時ページリクエストである場合は、事前に謝罪しますが、そうではないと思います。

于 2012-06-21T03:49:13.560 に答える