.NETアプリケーションをWindowsAzureにデプロイすることを検討していますが、コストを削減してパフォーマンスを向上させるために何を最適化する必要があるのかわかりません。このサイトはMVC4を使用して開発されており、AJAXクエリにjavascriptフレームワークを多用し、データはSQLで保持されます。私が見たり検討したりする必要があることについての詳細なガイドはないようです。たとえば、ビューステートとサーバー側のストレージ(SQL、テーブルストレージなど)。ストレージのタイプには、文字列(名前、日付など)、バイナリ(jpegなど)が含まれます。 jpgなど
1 に答える
1
アプリはそれぞれ異なるため、自分で使用できる量を見積もり、Azureのコスト計算ツールで質の高い時間を過ごすことが最善の方法です。アプリをデプロイしたら、毎月の請求書を確認してください。マイクロソフトは彼らがあなたに何を請求しているのかを喜んで教えてくれます、そうすればあなたは難しいデータを手に入れることができます。
とは言うものの、「典型的な」Webアプリケーションを実行した私の経験では、実際に重要なコストはコンピューティングインスタンス(Web /ワーカーの役割)だけです。単一の小さなコンピューティングインスタンスを1か月間実行することは、SQL Serverに15GB、AzureStorageに425GBを格納すること、または470GBの帯域幅を使用することに相当します。その1つの小さなCPUは、他のAzure製品と比較してかなり高価なので、できるだけ少ない数のコンピューティングインスタンスを使用し、使用するものを最大限に活用するようにしてください。
お金を節約するためにできる簡単なことは他にもいくつかありますが、コンピューティングインスタンスを1つか2つカットすることは、おそらくこれらすべてよりも重要であることに注意してください。
- Azure Diagnosticsを使用している場合は、そのためのストレージアカウントを作成し、GeoRedundantStorage機能をオフにします。これにより、ほとんど労力をかけずに数ドル節約できます。また、ログデータが本番データの上限に影響を与えないようにします。
- 古いログデータを定期的に消去します。
- SQLに大量のデータを保持しないようにしてください。大きなドキュメントや画像などがある場合は、可能であればそれらをAzure Storage(テーブルまたはBlob)に移動します。
- バックグラウンド処理を行う必要がある場合は、別のワーカーロールを起動する代わりに、それをWebロールに追加できます。
- リザーブドインスタンスを使用するか、資格がある場合はボリュームライセンス契約を結ぶことを検討してください。
于 2012-12-11T22:06:09.783 に答える