2011-01-04 15 views
0

私はWindows Azure Webアプリケーション(ASP.Net MVC)を実行しています。Windows Azureの帯域幅使用量をプログラムで測定する方法は?

コード内で使用される帯域幅を測定するにはどうすればよいですか?

私は、同じWebアプリケーションに対して複数のユーザーを持っており、各ユーザーが帯域幅に関してどれだけ消費できるかを制限したいと考えています。

答えて

0

Azure SDKでは、課金または消費に関する情報がプログラマチックに提供されません。 lgorekが述べたように、IISとWCFのパフォーマンスカウンターでの使用状況を概算することができます。また、独自のログを使用して、異なるユーザーからのトラフィックを追跡することもできます。ただし、ユーザーがBLOBストレージからコンテンツをダウンロードするときに消費する帯域幅をトラッキングすることはできません。さて、すべてのBLOBが非公開で、Webページ上の直接リンクの代わりにWebアプリケーションを通じてコン​​テンツをストリーミングした場合に限ります。

+0

私のBLOB項目は現在公開されています。スピードやコストの面でプライベートにすることに欠点はありますか? – Nadjib

+0

私はこの回答を提供して以来、物事が変わってきました。ストレージメトリックとロギングがありますので、ブロブの使用状況を確認できます。http://blogs.msdn.com/b/windowsazurestorage/archive/2011/08/03/windows-azure-storage-metrics-using-metrics- to-track-storage-usage.aspxを参照してください。 –

+0

public-vs private-blobの質問について:ブロブをプライベートにすると、Shared Access Signatureを介してパブリックアクセスを提供することができます。このシナリオでは、perfの違いはありません。それらがプライベートなもので、IIS経由のWebロール経由のトラフィックルートである場合は、IISに課税し、Webロールと記憶域の間の帯域幅に頼っているので、ある種のパフォーマンスヒットがあります。 –

1

したがって、パフォーマンスカウンタを使用してネットワークトラフィックのサイズを格納することは可能です。ただし、カスタムトラフィックの帯域幅のサイズをキャプチャするように思えます。そのユーザーの場合は、現在のユーザーのユーザー名をアカウントに取り込むカスタムトレースまたはその他のコードを作成する可能性があります。

+0

私は複数のドメイン名にコンテンツを提供する単一のコードベースを持っています。これはWindows Azureで動作するCMSで、各WebサイトはWindows Azureで同じコードを使用します。各ウェブサイトについて、どのくらいの人がダウンロードされたかを測定したいと思います。各ウェブサイトは公開されており、すべてのインターネットユーザーが使用することができます。パフォーマンスカウンターが私にその情報を提供するのか、それとももっとカスタムが必要なのでしょうか? – Nadjib

関連する問題