0

asp.netプロジェクトがあります。Azureプラットフォームで公開したい。私のプロジェクトには、画像、JavaScript、CSS、HTMLページなどのさまざまな静的コンテンツが含まれています。このコンテンツをAzureBLOBストレージに保存したいと思います。したがって、私の質問は次のとおりです。1)このコンテンツをアプリケーションからBLOBストレージに移行するプロセスを自動化する方法はありますか?2)BLOBストレージから取得したデータをどのように使用できますか?どんな例でも素晴らしいでしょう!

よろしく、アレクサンダー

4

3 に答える 3

1

@Brent の回答に少し追加: Web ロール インスタンスに対する負荷の削減など、静的コンテンツを BLOB ストレージにオフロードすると、さらにいくつかの利点が得られます。

この同様の StackOverflow questionに関するより詳細な回答を書きました。

于 2012-04-10T12:47:58.467 に答える
1

まず、クロスサイト スクリプティング (ドメイン名が異なる) やセキュリティの問題 (SSL を使用している場合) が発生する可能性があります。そのため、静的ファイルを Web サイトの残りの部分から分離する必要があることを確認してください。

とはいえ、最も簡単な方法は、多数の Windows Azure Storage 管理ユーティリティ (Storage Explorer または Cerebrata の Storage Studio の両方が機能します) のいずれかを使用して、静的コンテンツを Windows Azure Storage BLOB コンテナーにアップロードすることです。次に、そのコンテナーのアクセス許可を publis read に設定して、Web ブラウザーを使用するすべてのユーザーがコンテナーのコンテンツにアクセスできるようにします。

最後に、コンテンツへのすべての参照を BLOB ストレージ内の新しい URI を指すように変更し、ASP.NET Web ロールをデプロイします。

繰り返しますが、もし私があなたなら、このアプローチで何を達成しようとしているのかを本当に見てみたいと思います. BLOB ストレージに配置することで、いくつかのこと (CDN の有効化など) にアクセスできるようになりますが、トレードオフとして、他の多くのことを制御できなくなります (要求ログがいつダウンロードされているかを知るための IIS による簡素化されたアクセス制御など)。画像ファイルを 1 兆回ファイルして、請求書を実行しようとします)。したがって、これに対する確固たる必要性がない限り、私は一般的に反対することをお勧めします.

于 2012-04-10T12:33:28.737 に答える
0

Brent へのコメントを踏まえて、コンテンツを Blob ストレージにアップロードしてから、WebRole を介してプロキシすることを検討することをお勧めします。HttpModule のようなものを使用して、かなりシームレスに実現できます。

これには 2 つの主な利点があります。

  1. Web ロールをリロードしたり、ロールの更新時にファイルを失ったりすることなく、ファイルを追加/変更できます。
  2. サイトを移行する場合、ファイルは移行前と同じ URL のままにすることができます。

短所:

  1. Blob アクセスの金銭的コストと Web ロールのパフォーマンス コストを支払っています。
  2. Azure CDN は使用できません。
  3. 一般に、Blob Storage はディスク アクセスよりも低速です (待機時間が長くなります)。

まさにこれを行うために作成したかなり単純なモジュールがあります。私はそれを公の場所に投稿することはできませんでしたが、あなたがこれを行うつもりなら、コードか何かを送ることができます.

于 2012-04-10T18:43:59.973 に答える