Windows Azureを複数のワーカーロールに設定するにはどうすれば同じインスタンスで実行できますか?出来ますか?同じインスタンス上の複数のワーカーロール
答えて
私はあなたが職務役割が何であるか誤解していると思います。 WebとWorkerの役割はWindow ServerのVMですが、主な違いはWebの役割はIISを実行していることです。それぞれのインスタンスが複数存在する場合があります。
「同じインスタンス内に複数の作業者の役割」というようなことはありません。仮想マシンのテンプレートとしてWorker Roleを考えてみましょう。スタートアップスクリプトと、スタートアップやシャットダウンなどのメッセージを処理するイベント処理コードと、仮想マシン内でパッケージ化されて実行されるコードを記述します。
OnStart()
またはRun()
から、必要なコードを実行することができます。複数のスレッドをキックオフしたり、Tomcatのようなサーバコードを実行したりします。どのようなコードでも、それぞれのインスタンスで実行されます。複数のインスタンスにスケールアウトすると、これらの各インスタンスで同じVMテンプレートが使用されます。
this answerを参照してください。ここではもう少し詳しく説明します。
Davidさんが答えてくれたように、複数のスレッドを開始できます。私の顧客の一人がThreadedRoleEntryPointクラスを使用してこれを行いました。
このクラスは、あなたが(でも、複数のアセンブリから)複数のワーカーロールエントリ・ポイント・クラスを使用し、同じ役割でそれらを実行することができます:
public override void Run()
{
Trace.TraceInformation("WebRole::Run begin", "Information");
List<WorkerEntryPoint> workers = new List<WorkerEntryPoint>();
workers.Add(new Worker1());
workers.Add(new Worker2());
base.Run(workers.ToArray());
Trace.TraceInformation("WebRole::Run end", "Information");
}
ここでの利点は、あなたが小さな開始し、すべての作業を実行する可能性があることですロール(実際にはワーカーロールではありませんが、プロセスやワーカーと呼ぶ)を単一のロール(実際に展開するロール)に配置します。
ビジネスの成長が始まると、専用ロールを使用して作業を開始できます。つまり、ワーカー・ロールごとに少なくとも1つのインスタンスが実行されます。これを実行する必要があるときは、RoleEntryPointクラスのように見えるWorkerEntryPointから継承したThreadedRoleEntryPointに渡されたワーカーがいるため、コードへの影響は最小限に抑えられます。
はい、できます。ここにデザインパターンがあります。http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com/2010/12/running-multiple-threads-on-windows.html
- 1. CRM 2011複数の同じSQL Server上のインスタンス
- 2. 同じマシン上の複数のページ(Linode)
- 3. 同じクラスの同じインスタンスの複数のインスタンスを同じ行に割り当てる
- 4. 同じプログラムの複数のインスタンスを同期させる
- 5. 同じ非同期タスク(Windows Phone)の複数のインスタンス
- 6. 同じレールサーバ上の複数のプロジェクトの複数のサイト
- 7. 同じWAR(複数の異なるコンテキスト、同じコンテナ)の複数のインスタンスを効率的にデプロイ
- 8. 同じページの複数のインスタンス間のjqueryプラグインの相違点
- 9. 同じJVM内のDataNucleusのJDOの複数のインスタンス
- 10. 単一サーバー内の同じWARファイルの複数のインスタンス
- 11. 同じフォームの複数のインスタンスをテンプレートのユーザに
- 12. タイマーの異なる同じビューの複数のインスタンス
- 13. 同じページのd3 forceレイアウトの複数インスタンス
- 14. 同じOCXの複数のインスタンスを作成する
- 15. 同じウィンドウサービスの複数のインスタンスをインストールする方法
- 16. 同じWPFウィンドウとViewModelの複数のインスタンス
- 17. タブに同じレイアウトの複数のインスタンスを膨張させる
- 18. Java beanは同じjsp内の複数のインスタンス
- 19. 同じアンドロイドアクティビティの複数のインスタンス間でファイルを非表示
- 20. ruby:mechanizeの複数の同一インスタンスまたは同期インスタンス?
- 21. 複数のMavenプラグインモジョアでインスタンスを同じインスタンスで共有する方法は?
- 22. 同じドメインのポート80上の複数のドッカーコンテナ
- 23. モデル上の同じ型の複数のhasMany関係
- 24. 同じサーバー上の複数のドメイン間でのセッション共有
- 25. MVC - 同じページ上の複数のエンティティとのモデルバインディング
- 26. 同じサーバー上の複数のバージョンのMS CRM
- 27. Sitecore - ページ上のサブレイアウトの複数のインスタンス
- 28. 複数イベントの同じイベントハンドラ
- 29. 複数の同じWebリクエスト
- 30. facebook auto login(同じデバイス上の複数のユーザー)