1

WCF サービスを作成しましたが、それを Azure でホストしたいと考えています。サービスを作成したとき、Azure でホストするつもりはありませんでした。

すべてのアプリケーションは、WCF サービスであっても、プラットフォーム リソースを使用しています。resource と言うとき、私は何でも意味します:

  1. メモリー
  2. CPU
  3. ファイルハンドル
  4. 低レベル API (pinvoke)
  5. Com オブジェクト。
  6. ソケット
  7. .Net BCL API (はい、これもリソースと考えています)
  8. データベース
  9. etc..etc.. (私が自分で書いたコードではないもの)

仮定の例: たとえば、サービスがドライブ 'H' にログを記録する場合、私のコンピューターでは動作する可能性があります (ドライブ 'H' があるため) が、クラウドでは動作しない可能性があります。Drive 'C' 、または任意の drive letter についても同じですが、サービスの観点からファイルシステムがどのように見えるかさえわかりません。これはほんの一例です。

別の架空の例: サービスから nt.dll の winapi メソッドをピンボークできます。これは私のコンピューターで動作します。しかし、クラウドでは機能しないと思います。

私の質問は、クラウドで使用できるリソースの種類と、クラウドへの書き込み時にリソースがどのように使用されるかをどのように知ることができますか? 守るべき「ルール」とは?また、私のサービスがクラウドプラットフォームと互換性があることを保証できる「スマート」コンパイラはありますか?

このトピックに関する詳細な説明や参考書を入手できれば幸いです。グーグルでいくつかの情報を見つけようとしましたが、それを十分にカバーするものは見つかりませんでした。

詳細を取得したら、必要に応じてサービスに移植することができます (必要な場合)。

4

2 に答える 2

4

制限は、WCFサービスをホストする方法によって異なります。

  1. Windows Azure Webサイト:これは共有ホスティングモデルです。WCFサービスをWebサイトに展開する場合は、それを考慮する必要があります。つまり、ディスクへのアクセスが制限され、低レベルAPIへのアクセスが制限され、ネイティブライブラリを使用する方法がなくなります...
  2. Windows Azure Web /ワーカーロール(PAAS):アプリケーションはWindows Server2008/2012VMにデプロイされます。したがって、必要に応じて、通常の仮想マシンで使用するすべての機能(質問で言及するすべての「リソース」)を活用できます。覚えておくべき唯一のことは、これらの仮想マシンは永続的ではなく(つまり、仮想マシンに保存するすべてのデータが失われる可能性がある)、ロードバランサーがスティッキーではないことです(WCFセッションを使用する場合に問題になる可能性があります)。これらのマシンが永続的ではないという事実は、データベースサーバーを確実にインストールできないことも意味しますが、SQLAzureなどの外部データベースを使用することはできます。このソリューションの利点は、マシンがファブリックコントローラーによって維持されるため、サービスパッケージ(アプリケーション)をWindowsAzureにプッシュすることです。
  3. Windows Azure仮想マシン(IAAS):Web /ワーカーロールのようなマシンを使用して、すべての「リソース」を使用できますが、さらに詳細に制御できます。マシンは永続的です。つまり、マシンに保存されているものはすべてBlobストレージに永続化されます(マシンがクラッシュしても、OSドライブとデータディスクに保存されているデータが失われることはありません)。これは、オンプレミス展開に最も近い代替手段ですが、追加の作業も追加されます。すべてのサーバーでの展開を管理し、セキュリティ更新を処理するのはあなた次第です...しかし、この場合、マシンに独自のデータベースをインストールすることができます。ここでもロードバランサーはスティッキーではなく、WCFセッションなどの機能に影響を与える可能性があることに注意してください。
于 2012-12-28T10:24:24.707 に答える
2

下記のWindowsAzureでWCFを使用するためのガイダンスに従うことができます。

  1. WCFサービスをWebまたはワーカーのどちらの役割で実行するかを決定する

    WCFサービスは、Webロールまたはワーカーロールのいずれかでホストできます。使用する役割の種類は、作成しているWCFサービスの種類によって異なります。

  2. WebロールでのWCFサービスの実行

    Windows Azure Webロールへの展開用にセットアップされたWCFサービスは、オンプレミスサーバー上のIISでホストされているWCFサービスと同じセットアップと構成を使用します。

  3. WindowsAzureのWCFセキュリティを理解する

    Windows AzureでWCFサービスをホストする場合のセキュリティ上の懸念は、オンプレミスサーバーでサービスをホストする場合に発生する問題と同じです。

  4. WindowsAzureでのWCFのトラブルシューティング

    オンプレミスサーバーでホストされているWCFサービスで使用するのと同じ手法を使用して、WindowsAzureでのWCFサービスのパフォーマンスの問題をトラブルシューティングできます。

詳細については、WindowsAzureでWCFを使用するためのガイダンスを確認してください。

これがお役に立てば幸いです。

于 2012-12-28T10:24:21.260 に答える