2010-12-20 12 views
2

Ich bin bald auf ein mittleres Projekt zu starten. Obwohl dies in meiner großen Liste von Dingen, die ich tun muss, keine sehr hohe Priorität hat, habe ich versucht, wie ich mit Datenkonkurrenzen umgehen kann. Ich werde ein staatenloses EJB-Backend für meine Flex-Anwendung verwenden.flex und Daten Nebenläufigkeit

Idealerweise suche ich nach einer einfachen Methode, um mit Datenkonkurrenzen umzugehen. z.B. Wenn Daten auf einer Schnittstelle gespeichert werden, werden sie in einer anderen aktualisiert. Oder es warnt, dass die Daten vor dem Speichern einer neuen Version der Daten geändert wurden.

Hat jemand irgendwelche Ideen, wie ich im Moment ratlos bin. Wie ich schon erwähnte, ist das keine hohe Priorität, aber ich würde mich viel besser fühlen, wenn ich einen Mechanismus hätte, um den Prozess zu verbessern.

Antwort

0

Versionskontrollsysteme speichern user_id und datetime für jede Revision. Sie können dieselbe Methode verwenden. Client-App erhält aktuelles Datetime für angeforderte Daten und speichert es. App sendet geänderte Daten mit gespeicherter Datetime. Der Server überprüft die Datetime der letzten Revision und die empfangene Datetime. Und antworte auf die App entsprechend.

Die zweite Methode verwendet Broadcast-Nachrichten vom Server an Clients. Aber ich denke nicht, dass es in Ihrem Fall anwendbar ist. Diese Methode wird in der Regel in LAN (Umgebung mit stabiler Verbindung) in die Praxis umgesetzt.

1

Wenn Sie vorhaben, AMF-Kanäle für die Kommunikation zu verwenden, können Sie die Funktion für lange Abfragen verwenden, um Ihrer Anwendung den Push-Nachrichten-Typ effektiv zu geben. Sowohl die BlazeDS- als auch die GraniteDS-Datendienste unterstützen diese Fähigkeit genau aus den von Ihnen genannten Gründen.