web-dev-qa-db-ja.com

ウェブサイトで高いトラフィックが予想されます。管理方法

私が管理している企業のウェブサイトではトラフィックが多いと予想しています。現在、ウェブサイトはgodaddy共有ホスティングでホストされています。

それは私のクライアント企業のIPOになるので、どのようなトラフィックの急増が発生するかはわかりません。

どのように計画すればよいですか、また、godaddyまたは他のホスティングでどのホスティング計画を立てるべきですか?.

クラウドコンピューティングはこの状況に関連していますか。最良/費用効果の高いソリューションは何でしょうか。

このサイトは、クラシックASPおよびMsAccess DBの非常に小さなCMSです。

また、高トラフィック時にサイトを完璧に利用できるようにするためにプログラミング関連の問題をチェックする必要があるかどうかも提案します。

よろしく、晴れ

4
sunny

トラフィックの大規模な流入を乗り切るための鍵は、処理できる同時リクエストの量を増やすことです。つまり、a)ページのレンダリングにかかる​​時間を短縮して、より多くの訪問者にすばやくサービスを提供できるようにするか、b)次のようなホスティングプラットフォームを取得します。より多くの接続を処理できます。

大量のメディアトラフィックが予想される場合、共有ホスティングは適していません。少なくとも一時的にVPSまたは専用サーバーにアップグレードする必要があります-これはあなたのビジネス(そしてあなた)にとって重要な時期であり、ウェブサイトや電子メールのトラブルを望まないでしょう。

時間に余裕がない場合は、クラウドのようなものに移行することはお勧めしません。知る限り、水平方向にスケーリングすることはありません(ただし、その経験はほとんどありません。間違っている可能性があります)。また、DNSの変更とホストの変更を行う必要がある可能性もあります。これは、双方のサポートチームによってはトラウマになる可能性があります。 godaddyが専用サーバーに到達できるかどうかを確認します。これにより、専用のCPU時間とRAMが提供され、他のユーザーに影響を与えるためにシャットダウンされる可能性のある環境から解放されます。あなたはこの計画を1か月か2か月間だけ続けるかもしれません-共有ホスティングに戻ることが適切かどうかを決定できます。

DNSを再ポイントする前にサイトのコピーを専用サーバーに移動する時間がある場合は、稼働前にサイトのコピーをベンチマークして、さらに最適化が必要かどうか、または現金を投入できるかどうかを確認する必要があります。それで十分でした。 Linuxマシンにアクセスできる場合(または安価なLinux vpsを入手できる場合)、Apache abのようなものを使用できます-これに関するクイックガイドはここにあります: http://www.cyberciti.biz/tips /howto-performance-benchmarks-a-web-server.html

他の最適化に関しては、SQLサーバーはおそらくアクセスよりも高速であり、おそらく専用マシンまたはVPSでセットアップできます。ページをレンダリングして次の訪問者に移動するのにかかる時間が短縮されるため、サイト開発者を関与させて、キャッシュを実装できるかどうか、またはデータベースの最適化を行えるかどうかを確認する必要があります。

4
epic9x

大量のトラフィック/ボリュームを定義する必要があると思います。また、MSAccessデータベースを共有リソースとして期待するかどうかも定義する必要があります。サイトはSSLを使用していますか?詳細がなければ、これは失敗のレシピのように聞こえます。そのアクセスデータベースでの同時アクセスと競合が深刻なボトルネックになる可能性がある場合です。データベースがローカルリソースのみである場合、つまり共有ユーザーテーブルやその性質のものがない場合は、クラスター/クラウド全体でサイトを並列化できる可能性があります。上記のジムの推奨事項は、これが当てはまる場合の良いステップですが、ほとんどのAccess DBを使用するWebサイトは、水平方向に拡張可能ではありません。

2
MattyB

これの多くは、コードとリソースの使用に起因します。大量のトラフィックが予想される場合、キャッシュは非常に重要です。

通常、スケーリングはハードウェアの問題ではありません。ハードウェアは、不十分に記述されたソフトウェアを修正するために一部の人々が使用する盗賊です。

コンテンツをできるだけ静的にして、別のホストに配置します。クラウドコンピューティング用のコーディングの複雑さを追加しても、クリーンで合理化されたWebサイトを作成するよりも効果は少なくなります。

Stackoverflow自体は非常に良い例です。1日あたり100万ページビューを壊すまで、1台のWebサーバーがありました。このサイトは非常に人気があり、1つのハードウェアで何ヶ月も生き残った。

あなたのサイトのプロファイルとあなたが持っているかもしれない制限を見てください(あなたが現在のデータベースでウェブページをどれだけ速く提供できるかなど)。 yslow などのツールを調べて、ボトルネックがクライアント側のどこにあるかを確認します。

0
sclarson

警告がほとんどないトラフィックの急増が予想される場合は、CDNにサインアップしてください。 SimpleCDN(安い)やMaxCDN(より良い、はるかに高価)のようなものは、クレジットカードだけで有効にできます。これを処理するには、DNSを変更する必要があります。また、静的アセットのキャッシュをオンにするには、Webサーバーの構成を行う必要があります(IISでは簡単です)。

次に、response.Expiresを追加して、すべての動的ASPページを少なくとも短期的にキャッシュ制御ヘッダーを追加して、CDNがそれらもキャッシュできるようにします。

最後に、時間があれば、MSaccessをサイトのデータベースとしてダンプし、少なくとも無料のSQL Expressを使用してください。アップサイジングウィザードがあるので、かなり苦痛がなく、最小限のコード変更で済みます。

0
rmalayter

可能な静的ファイルの数を最大化するサイトを生成することをお勧めします(wget --mirror必要に応じて)、AmazonのCloudFrontなどのエッジネットワークに配置することを検討してください。

これらは最も簡単で安価な方法であり、工数あたりのパフォーマンスが最も向上します。

編集:私は、データベースの使用をやめることを強くお勧めします。単なるCMSの場合は、静的ファイルを生成して提供しない理由はありません。例えば組み替​​え可能な活字。

0
Jim Zajkowski

私は、これが災害のレシピのように聞こえることに同意します。 IPOを使用すると、会社のWebサイトが稼働し、メディアからの問い合わせや投資家が利用できるようになり、メッセージをそこに発信できるようになります。

また、すぐに時間がなくなっているようです。長期的に見て最善の解決策は、明らかにこれを設計することです。でも時間が足りないので、ちょっとアドバイスさせてください。

First、MSAccessバックエンドが最初の障害になりますあなたのサイトのポイント。あなたはすべてを静的にする必要があります、そして今。 HTTrack を使用して、Webサイトに現在表示されているコードをダウンロードします。次に、取り出すのに意味のある部分を取り出します(たとえば、DBを介して動的に作成しているもの、たとえば株価情報)。現在サイトにあるファイルをバックアップし、ダウンロードした「静的」ページに置き換えます。

2番目、VPSはあなたのウェブサイトに十分な場合とそうでない場合があります。それはあなたが期待するトラフィックに完全に依存します、そして場合によってはあなたの共有ホスティングに残っている方が実際に良いかもしれません。セットアップ時間を保証できる信頼できるプロバイダーからの専用サーバーにサインアップします。あなたはもっと支払うでしょうが、あなたのウェブサイトを立ち上げて潜在的な投資家が利用できるようにするのに数百ドルの価値があるかどうか自分自身に尋ねなければなりません。私はあなたがそれがそれだけの価値があるという答えを見つけると信じています。また、IPOの前にサイトを移行してもらうために、サイトを移行する人を見つけることができると思います。あなたはより多くを支払うでしょうが、もう一度、それを成し遂げることはそれだけの価値があります。

0
Dave Drager

検討したいことの1つは、ZeusのZXTMアプライアンスなどのリバースプロキシ/キャッシュ/アプリケーション管理システムです。リバースプロキシ/負荷分散だけでなく、非常に優れたキャッシュであり、最も重要なこととして、負荷レベルをWebサーバーやアプリケーションサーバーにフィードバックできる(したがって、負荷に基づいて応答を変更できる)か、実際に負荷を軽減するために、ページを変更します。具体的には、負荷が増加するにつれてページサイズ/重量を変更できます。 BBC Webサイトは、これらのアプライアンスの4/6を使用して、本番の外部Webシステム全体を管理します。大きなニュースイベントが発生すると、負荷が増加し、ページの複雑さが低下します。つまり、大量のヒットがキャッシュから100%読み取られます。それは本当にクールなシステムです。

0
Chopper3