私のおすすめ
作業距離:
- rabbit mq のように、メッセージをメッセージ キューに入れるリクエストのレシーバーを用意します。
- 同じキューをリッスンし、そこから作業を取得し、完了したらそれを確認する、多数のワーカーを用意します。
- 完了したら、ネットワーク ドライブなどの既知の場所への URI を含むメッセージを別のキューに送信します。ターゲットは、解析されたデータです。
- 受信者は、これらの「完了」メッセージをリッスンします。URI からデータを取得します。
終わり。
RabbitMQ には優れた CLR API が付属しています。
同じ理由が、Microsoft Azure とその AbbFabric Queue にも当てはまります。プラスは、それが非常にうまくスケーリングされることです。
ホットバージョニング
http://topshelf-project.com/
バイナリをドロップできるフォルダーが提供され、バイナリが実行されます。これらのバージョン管理と、Windows サービスとしての実行を管理します。
展開
robocopy/xcopy および「net use Q: pwd \server\share」、「net delete Q:」を使用してバイナリを展開できます。
継続的インテグレーション
チームシティ
MsBuild を広範囲に使用した後、psake でスクリプトを作成し、PowerShell でビルドを実行することをお勧めします。PowerShell に慣れると、ビルド スクリプトから WinRM を利用できるようになります。これは非常にスムーズです。
git/subversion コミット番号を以前のバージョン番号の 0.0.0.x, x として使用すると、「デバッグ」/「本番」ビルド全体で「共有」される自動バージョン管理が行われます。
アズールウェイ
作業距離:
上記と同じですが、RabbitMQ の代わりに AppFabric Queue を使用します。
ホットバージョニング
「Staging」インスタンスと「Production」インスタンスを入れ替えることで、ダウンタイムを回避できます。
展開
ここで読むことができるように Azure Tools for Visual Studio の MsBuild タスクを利用するか、継続的インテグレーションのために上記と同様のセットアップで PowerShell AzureSnapIns を使用することができます。
継続的インテグレーション
同上。