Frage

Ich erstelle eine Anwendung, die ich in die Cloud setzen will. Diese Anwendung hat eine Hauptfunktion.

Es beherbergt Socket-Client-Sitzungen im Auftrag anderer Nutzer (man denke an Beejive IM für das iPhone, wo es IM-Sitzungen für Kunden bewirtet Zustand auf diesen IM-Netzwerken zu erhalten, den Client ermöglicht / disconnect nach Belieben zu verbinden, ohne das zu Brechen IN Netzwerkverbindung).

Nun, so wie ich es jetzt geplant habe, ist, dass eine ‚Arbeitnehmer-Instanz‘ kann wahrscheinlich nur eine endliche Anzahl von Client-Sitzungen behandelt (von 50.000 Argumenten willen sagen lassen). Diese Sitzungen werden sehr lange Arbeiter Aufgaben gelebt.

Das Problem Ich versuche, meinen Kopf um zu bekommen, ist, dass ich manchmal Aufgaben an spezifischen Client-Sitzungen durchführen muß (zB: Wenn ich eine Client-Sitzung trennen müssen). Mit Azure, würde ich in der Lage sein, eine kleinere Aufgabe in die Warteschlange einzureihen, die nur die Instanz, die bestimmte Client-Sitzung Hosting der Lage wäre, aus der Warteschlange entfernt?

Im Moment bin ich erwägt GoGrid als mein Provider, und ich dieses Problem zu lösen, indem Apache Active Messaging Queue-Software. Mein Web-App Enqueues ‚Trennung‘ Aufgaben, die auf eine bestimmte Instanz Id zugeordnet sind. Jeder Client-Sitzung wird deshalb auf eine bestimmte Instanz-ID zugewiesen. Die Instanz nur dann entnimmt ‚Trennung‘ Aufgaben, die ihm zugewiesen sind.

Ich frage mich, ob es machbar ist etwas ähnliches auf Azure zu tun, und wie ich in der Regel würde es tun. Ich mag die Idee, nicht viele verschiedene VM Setup mit maßstäblich, sondern nur ein einzelnes Paket bereitstellen. Auch wäre es schön, Verwendung von Azure-Warteschlangen zu machen, anstatt ein Drittprodukt wie Apache ActiveMQ, oder auch MSMQ zu integrieren.

War es hilfreich?

Lösung

würde ich sehr besorgt über eine Produktionsanwendung auf Azure bis zum Funktionsumfang Aufbau, Preise und Lizenzbedingungen abgeschlossen sind. Für den Anfang können Sie nicht einmal einen Kostenvergleich zwischen ihm und z.B. GoGrid oder EC2 oder Mosso. Also ich sehe nicht, wie es möglicherweise einen Front-runner könnte am Ende. Auch wissen wir, dass alle diese Systeme haben Pannen wie sie reifen. Amazon-Dienste sind in viel breiteren Einsatz als alle anderen, und sind schon sehr lange Jahre lang öffentlich zugänglich gewesen. IMHO Wahl Azure ein Rezept für Schmerz ist, wie sie zu stabilisieren.

Haben Sie darüber nachgedacht, Amazon Einfache Queue Service zum Einreihen?

Andere Tipps

Ich glaube, Sie absolut Windows Azure für diese verwenden können. Meine Empfehlung wäre, eine Warteschlange für jede Sitzung zu erstellen, die Sie nachverfolgen. Dann enqueue die Trennungsnachricht (zum Beispiel) in der Warteschlange für diese Sitzung. Die Arbeiter-Instanz, die diese Verbindung Bei der Verarbeitung sollte die einzige Abfrage, die Warteschlange, so dass es auf dieser Verbindung die Aufgabe, die Durchführung behandeln soll.

Im Hinblick auf die Applikations-Hosting-Socket-Verbindungen für Kunden zu verbinden, würde ich doppelt überprüfen, was erlaubt ist, wie ich glaube, nur HTTP und HTTPS-Verbindungen sind erlaubt mit Azure gemacht werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top