TCPリスナーとして機能し、指定されたポートでTCPメッセージストリームを受信し、情報をに追加するアプリケーションをAzureで構築しようとしています。データベース。着信TCP通信は証明書で保護されます。
私は次のオプションを検討しています:
クラウドサービスワーカーの役割
これは間違いなくそうなるように見えます work 。ただし、それはクラウドサービスを使用する必要があることを意味し、AppServiceが提供する機能とシンプルさを見逃しています。クラウドサービス ドキュメント は、必要なTCPポートを開く方法についても具体的に説明しています。
アプリサービス
ただし、ロジックアプリ(推奨)では、これはTCPリスナー)をネイティブにサポートしていないようです。そのため、カスタムAPIアプリを作成することを検討します。または、Webジョブを作成することもできます。
ただし、このアプローチが機能するかどうかはわかりません。次の質問があります。
Azure AppServiceでTCPリスナーをホストできますか?
クラウドサービスワーカーの役割
これは間違いなく機能するように見えます。ただし、それはクラウドサービスを使用する必要があることを意味し、AppServiceが提供する機能とシンプルさを見逃しています。クラウドサービスのドキュメントでは、必要なTCPポートを開く方法についても具体的に説明しています。
間違いなく動作します。
https://msdn.Microsoft.com/en-us/library/Azure/gg557553.aspx
ServiceDefinition.csdef:
<Endpoints>
<InputEndpoint name="RawTCP" protocol="tcp" port="54321" localPort="54321" />
</Endpoints>
アプリサービス
ただし、ロジックアプリ(推奨)では、これはTCP>リスナー)をネイティブにサポートしていないようです。そのため、カスタムAPIアプリを作成することを検討します。または、Webジョブを作成することもできます。 ...。
AppServiceで任意のTCPポートを公開できますか?.。
Azure AppServiceでTCPリスナーをホストできますか?
いいえ、いいえ。80/ TCPと443/TCPのみが公開されており、機能するプロトコルはHTTPのみです。 App Serviceでカスタムリスナーを実行することはできません。
ここにリストされているサンドボックスの制限を参照してください: https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox#network-endpoint-listening
この制限がAppServiceページに記載されていない場合は、Azureのドキュメントでプルリクエストを行ってください。
Service Fabricは、クールな3番目(または1番目?)のオプションになります: https://Azure.Microsoft.com/en-us/ services/service-fabric /
サポートチケットを発行し、マイクロソフトに確認しました。
[AppService内] Azureはカスタマイズされたポートをサポートせず、httpプロトコルのみをサポートします。これらの2つの理由は、TCPリスナーの使用を拒否します。
また、この質問の情報をさらに協力します。 Azure Webサイトでポートを開くことはできますか?