帯域幅が非常に多い可能性が高いWebサイトで作業しています。アクティブに使用しているときのサイトの主要な機能は、1つのセッションで最大1Mbpsをプルできます。幸いなことに、ユーザーが新しいおもちゃの要素を乗り越えると、この機能の使用はおそらくセッション時間の1〜5%以下(おそらくずっと少ない)になります。
ただし、特に起動時には、新しいユーザーがこの機能をかなり使用する可能性があります。私は帯域幅の使用について非常に心配しています。
これは多かれ少なかれニッチ市場なので、YouTubeのようなクレイジーなレベルにスケールする必要はありません。ただし、1か月あたり数テラバイトになる可能性があります。
コロケーションが最善の選択肢ですか?安価な帯域幅サービス(コロケーション/ホスト/クラウド/その他)は何ですか?
多くは、予想される同時セッションの数に依存します。複数の同時セッションが発生する可能性が高い場合は、100Mビットの接続、50を超えると予想される場合は1Gビットの接続を許可するものが必要になります。
また、必要な回復力の種類にも依存します-問題が発生した場合に、アップタイムの保証や他のSLAやフェイルオーバーシステムを引き継ぐ必要がある場合(プロジェクトは短時間のダウンタイムで十分に重要であるため)恥ずかしいことに)あなたのオプションはより制限され、あなたの費用は高くなります。
アプリの残りの部分から大きなデータを分離できる場合、すべてを新しいホスティングソリューションに移動する必要はありません。たとえば、大きな帯域幅のアイテムがビデオファイルの場合、どこかで良い帯域幅の専用サーバーをレンタルしてホストすることができます-最近は驚くほど安く、まともな帯域幅と100メガビット以上の接続を持つ良いホスト上のサーバーを得ることができます(私は月額50ドルを支払います必要に応じて24時間年中無休で双方向に飽和できる10Mビットのリンクを備えた小型サーバーの場合、より堅牢なサーバーを接続した100Mビットのリンクは、アップタイムや他のSLAおよび/またはサーバーを保証する必要がない限り、高価になりませんホスティングプロバイダーからの管理)。サーバーが静的ファイル(大規模ファイルでも)を提供している場合は、CPUとRAMの点で多くのマシンを必要とせず、高速ドライブと帯域幅だけが必要です。 「クラウド」ホスト型ソリューションまたはコンテンツ配信ネットワークも検討する価値があるかもしれません-理論上必要な帯域幅がどれほど回復力があるかを推測すれば、スケーリングが容易になる可能性があります(したがって、まともなアップタイム保証が得られる可能性があります)彼らがそのSLAを守れなかった場合の補償付き)。これらの方法で帯域幅を占有するアクションを分離しておくことには、高帯域幅機能が他のすべての機能を同時にブロックしないようにクロールするのに十分な注意を引く場合に追加の利点があります。
純粋に歴史的に:
Facebookゲームが登場する前の時代、人々はブラウザベースのテキスト形式のMMOに夢中になっていました。
比較的新しいものはOgameでした。グラフィックが重く、999ページの9倍のマップシステムでした(999セクターの各宇宙には15惑星のスペースがあり、各惑星には月があります)。
参加するユーザーの数は非常に多く、トラフィックの量はさらに多くなっています。
それで彼らはそれを解決するために何をしましたか?彼らはPHPテンプレートシステムの使用を開始し、ユーザーが画像とCSSファイルを自分でホストできるようにしました。チェックボックスをクリックして、ベースフォルダーへの絶対パスを入力するだけで済みました。データベースにこれを保存し、HTML <base>
要素を使用し、テンプレートシステムがURIを http:// path/to/image からfile:/// path /に設定します。に/イメージ
その後、すべてのimgリンクが同じままになる可能性があります。ユーザーが既にダウンロードしているため、ダウンロードする必要はありません。ユーザーにとってのページ読み込みの高速化(製品レビューの向上を意味する)を意味し、サイトをホストしている会社の帯域幅使用量を削減します。
また、追加のボーナスとして、「カスタムの背景や画像を自分で作ってください。これをさせてくれたナイスガイではありませんか?」
トラフィックの多いサイトがあり、各ページに多数の写真がロードされています。専用サーバーがありますが、写真を Amazon S に置くことにしました。ビデオファイルや、ここでまだ当てはまると思われる他の種類の大きなファイルについて話しているようです。ここにいくつかの賛否両論があります(私たちにとって)
長所
短所
その他の考え
あなたが話しているのがメディアファイルや大きなファイルのダウンロードでない場合、私の答えと他のいくつかは意味をなさないかもしれません。詳細をお知らせください。できる限りのサポートをいたします。
はい、同様のAmazon AWSを使用する必要があります。
あなたが見る必要があるのは CDN のようなものであるように聞こえます Amazon Cloudfront 。
CDNの使用に関する議論については、次の質問をご覧ください。
ターゲットの状態/国(または世界)に応じて、さまざまな場所で多くのクラスター(「クラウド」)ソリューションを使用します(ロケーションネットワークをピアリングする必要があります;-))。一方ではCDNを完全に制御できますが、もう一方のサイトでは多くの作業が必要です(監視、ソフトおよびハードウェアインフラストラクチャの管理など)。
AWSなどの「管理された」ソリューションです。さまざまな機能を提供するCDN /クラウドプロバイダーが多数あります。
OFFTOPIC:Puppet [1]を見てください:-)