2017-12-08 16 views
1

私は自分のアプリケーション内でMicrosoft Orleansフレームワークを使用していて、これをAzureに配備しようとしています。使い慣れていない場合、OrleansはVirtual Actorsフレームワークで、サイロと呼ばれるサーバを公開し、コードがインスタンス化され、設定された時間アイドル状態になるまでメモリに保持されてからアンロードされます。 My WebApiアプリケーションはクライアントとして機能し、Orleansのサイロに接続します。同じAppサービス内のアプリケーションからAzure Webjobに接続する

私はAzure App ServiceにWebApiアプリケーションをデプロイしました。その同じApp Service内で、Siloを実行する連続したWebジョブが作成されました。しかし、WebApiクライアントがSiloに接続しようとすると、ログに「接続できません」というエラーが表示されます(TCP経由)。

私はアプリケーションサービスに仮想ネットワークを接続する必要があったかもしれないと思っていましたが、問題は修正されず(同じログメッセージ)、追加する必要があることを示す何も表示されません仮想ネットワークへのwebjobs。

これらの2つのアプリケーションをネットワーク経由で接続できますか。

+0

Azureサービスファブリックを使用してOrleansアプリケーションをホストしようとしましたか? – Baskar

+0

@baskar私はしていません。私はそれを見てみる – aasukisuki

答えて

2

メインサイトは、 'scmサイト'で動作するWebJobsとは異なるサンドボックスで動作します。 scmサイトがメインサイトと対話できるように設定されていますが、その逆もありません。これがあなたをここでブロックしているかもしれません。

Azure App Settingsが同じサンドボックス内で実行されるように設定する場合は、WEBSITE_DISABLE_SCM_SEPARATION=trueに設定してみてください(doc参照)。技術的には公式にはサポートされていません。それでも、それが役立つかどうかをテストすることは面白いでしょう。

+0

これは完全に働いた。今後これを行うためのより良い方法があるかどうかを知っていますか(技術的にサポートされていないため)。 – aasukisuki

+0

Orleansにはあまりよく知られていませんが、WebAPI自体がSiloプロセス自体を起動して(起動時に)、後でそれを話すことができます。おそらく理想的ではないかもしれません。 –

関連する問題