0

無料試用版で Azure に移植したい既存の ASP.NET Web サイトがあります。

移行はできる限り無痛で行いたいと考えています。このアプリケーションは log4net と NHibernate を使用し、仮想サーバー上で実行されるアプリケーションとデータを共有する必要があります。

2 つの質問を 1 つとして尋ねることができます

共有ドライブにアクセスするために Web.config でパスを構成するにはどうすればよいですか?

ログを保存するパスを構成する必要があります最も重要なこととして、Azure Linux VM で実行されるデーモンによって書き込まれたファイルをアプリケーションが読み取る場所を指定する必要があります。

アプリとデーモンの両方が同じサーバー上で実行されている場合 (はい、Mono は正常に実行されていました)、共有ローカル ディレクトリを選択するだけで済みました。

4

1 に答える 1

0

シナリオを完全に理解しているかどうかはわかりませんが、いくつかのオプションを紹介します。

1 つ - Windows Azure Web サイト (現在プレビュー段階) は、ASP.NET サイトに最適なオプションです。もちろん、それはサイトのニーズによって異なります。しかし、log4net ファイルを Web サイトと NHibernate を使用して書き込むこともできます。

2 - Web ロールは、このような状況に最適です。永続的なファイル ストレージに BLOB ストレージを使用するには、コードを変更する必要がある可能性があります。ログ ファイルの永続的な場所を取得する方法として、Windows Azure ドライブを使用できます。Windows Azure ドライブには事前に決定されたドライブ文字がないため、API を使用してそれを取得する必要があります。それはあなたの状況にとって良い選択肢かもしれませんし、そうでないかもしれません。Web ロールを使用すると、log4net ファイルをローカル ストレージに書き込み、Windows Azure 診断を使用してそれらを定期的に BLOB ストレージに転送することもできます。ファイルを永続化するもう 1 つの方法です。

3 - Windows Azure Virtual Machines (現在はプレビュー段階) を使用すると、ログ ファイルをデータ ディスクに書き込むことができます。これは、Blob Storage によってバックアップされます。

最終的に、インスタンスやロール間で共有する必要があるファイルがある場合は、BLOB ストレージを利用することが最善の選択肢となる可能性があります。

于 2012-07-14T22:36:50.550 に答える