Mit SignalR in der Azure-Worker-Rollen

Ich habe eine Azure-gehostete web-Anwendung, die arbeitet mit einer Anzahl von Instanzen der worker-Rolle. Derzeit ist die web-app geht die Arbeit für diese Arbeitnehmer durch das platzieren von Nachrichten in eine Azure-Warteschlange für die Arbeiter zu Holen. Die Arbeiter pass-status und Fortschritt-Nachrichten zurück, indem Sie Nachrichten in ein 'feedback' - Warteschlange. Im moment, um sich zu informieren meine browser-clients, wie die Fortschritte, die ich mache ajax-basierte periodische polling-rufe im browser zu einem MVC controller-Methode, die wiederum liest die Azure-feedback-queue und gibt diese Nachrichten als json an den browser zurück.

Offensichtlich, SignalR sieht aus wie eine sehr attraktive alternative zu dieser plumpen polling /queing Ansatz, aber ich habe sehr wenig Anleitung auf, wie man über das tun dies, wenn wir reden über mehrere worker-Rollen (im Gegensatz zu den web-Rolle) benötigen, senden Sie status an einzelne oder alle Kunden .

SignalR.WindowsAzureServiceBus von Clemens vasters sieht Super, lässt aber ein bisschen hoch und trocken am Ende also ein gutes Beispiel-Lösung fehlt.

Hinzugefügt Kommentar: Von meiner Lesung bisher scheint es, dass keine direkte Mitteilung Arbeiter Rolle (im Gegensatz zu web Rolle) browser-client über den SignalR-Ansatz möglich ist. Es scheint, dass die Arbeitnehmer für die Kommunikation mit dem web-Rolle mithilfe von Warteschlangen. Dies wiederum zwingt eine polling-Ansatz, D. H. die Warteschlangen müssen abgefragt werden, die für Nachrichten von den worker-Rollen - dieses polling stammt (aus gesteuert werden) aus dem browser-es erscheint (wie kann ein polling-Schleife eingerichtet werden, in eine web-Rolle?)

In der Zusammenfassung, SignalR, auch mit die SignalR.WindowsAzureServiceBus scale-out-Ansatz von Clemens Vasters, nicht in den Griff direkte Kommunikation von worker-Rolle zu browser.

Kommentare von den Experten geschätzt werden.

  • Was war der leichteste Weg, Sie waren in der Lage, relais worker-role => webrole => client-browser?
  • Als bacr beantwortet haben. Ich hatte auch multiplizieren worker-Rollen laufen als clients und die webrole kontrolliert Sie.
InformationsquelleAutor t0rus | 2012-03-04
Schreibe einen Kommentar