Cloud Pattern - Wie setze ich das um?

kuhki

kuhki

Aktives Mitglied
Thread Starter
Dabei seit
31.12.2005
Beiträge
531
Reaktionspunkte
6
Hi,

ich arbeite momentan an einer aufwändigen iOS App, die bevorzugt offline Daten (Core Data) nutzen soll und zusätzlich an eine Cloud angebunden ist.
Sollten die Daten auf dem Server aktueller sein, sollten diese dann offline gespeichert werden, sollten die offline Daten aktueller sein, sollen diese auf den Server geladen werden.
Es gibt eine Web-App, mit der Änderungen "produziert" werden können und es gibt Inhalte, die von anderen Nutzern erstellt werden können.

Ich bin in diesem Gebiet ein totaler Noob. Wie könnte ich so etwas sauber umsetzen bzw. gibt es dafür gute, bzw. allgemeingebräuchliche Patterns?

Grüße, kuhki
 
Wenn dnach dem Motto verfahren wird "Der letzte gewinnt" ist das ja relativ einfach, was passiert aber wenn der Server auf Zustand A ist und eine Aenderung B vollzogen wurde, die Du noch nicht kennst ...

http://www.drdobbs.com/tools/three-way-merging-a-look-under-the-hood/240164902

Ansonsten reicht ein einfacher Hash auf die Daten und bei Ungleichheit wird auf den Server geladen oder eben lokal geupdated.
Je nach Zeitstempel.

PS: Zeitstempel sind immer schlecht. Generationen, also Nummern sind da besser.
 
  • Gefällt mir
Reaktionen: kuhki
Wie machst du das dann mit Generationen?
Angenommen auf dem Server ist die Generation 100
Einer arbeitet von der Web-App aus, der andere von der iOS App. Somit würden doch beide eine Generation 101 erzeugen und dann hätte ich zwei davon!? (also insofern z.B. die Verbindung zum Server unterbrochen ist)
 
Nee. Der Client generiert content mit nem hash und lädt den hoch, also
1 7676754745764758756abcdeff

Der zweite schaut auf dem Server und sieht,
"Nee, den hab ich nicht, ich nehm den."

Wenn beide hochladen steht da
1 abcd56564646
2 a8996876587d
3 78685875fa3e

Die Generationen dienen nur dazu falls jemand zurückrollen will. Der fragt dann:

"Wo ist eigentlich abcd....?"

Und bekommt also Antwort "1". Der weiss also wie viele ihm quasi fehlen.
Ob er sich die neue nimmt oder "gewaltsam" seine aufspielt, musst Du wissen.
 
  • Gefällt mir
Reaktionen: kuhki
Danke. :) Ich bin noch leicht überfordert. Werde mich da wohl noch etwas einlesen müssen und das dann Schritt für Schritt "zusammenbasteln" ;)
 
Zurück
Oben Unten