8 berichten aan het bekijken - 1 tot 8 (van in totaal 8)
  • Q:
    Bijdrager
    OSSy

    Real time sync met server en tussen devices.

    Na vele ideeën en slapeloze nachten ben ik begonnen met het uitwerken van een app waar volgens mij vraag naar is. Nu is één van de key features realtime synchronisatie tussen meerdere devices/server.

    Nu ben ik geen programmeur en ben ik niet van plan dat te worden omdat ik mijn tijd beter kan besteden dingen waar ik goed in ben. (GUI, sales ect.)

    Nu vroeg ik mij af of deze realtime synchronisatie mogelijk is of dat er bij IOS bijzondere voorwaarden aanzitten.

    Ik had in gedachten deze synchronisatie te laten plaatsvinden via een server (OSX of Windows?) met daarnaast de voorwaarde dat deze server niet aangesloten op het internet hoeft te zijn (lokaal netwerk).

    Ik hoop dat u mij kunt helpen met deze vraag.

    m.v.g.

    Bijdrager
    fred44nl

    je kun iOS-devices niet “zo maar” verbinden met een server, zoals je dat met pc’s/laptops doet.
    daar heeft Apple het programma iTunes voor uitgevonden.
    daarom kun je ook niet “zo maar” bestanden van en/óf naar een iOS-device kopieëren.

    Bijdrager
    TRML

    Wat wil je maken, als dat een soort database toepassing is dan kan je beter FileMaker Pro op je server zetten en FileMaker Go op je iDevices werkt perfect en realtime sync en je hoeft het wiel niet meer uit te vinden.

    Bijdrager
    lord anubis

    @Fred, je antwoord is waar. Maar, misschien dat ik er over heen kijk, maar ik zie niet in de startpost dat er gesproken wordt over files en app’s.

    Sync van data tussen app’s is wel degelijk mogelijk zonder iTunes. En deze data is dan te gebruiken alleen in jouw app. In je eigen sandbox-je.

    Het hangt er veel van af wat je jouw data is? Zijn het enkele bytes of tig kilo bytes die elke keer verzonden moeten worden. Wat bepaald de reden van de sync, datum, recht van de sterkste? Zit er data van andere gebruikers ertussen die dan alleen gelezen mag worden, dus extra metadata meesturen? Hoe real time moet het zijn? Jij veranderd iets, wordt gesync’t maar kan tegelijkertijd de server syncen naar jouw?
    In je titel schrijf je Syncen naar Server en devices, maar je bedoeld volgens je tekst Sync tussen een device en server. Een ster sync dus, en geen mesh of p2p sync ( netwerk ) zoals je titel.

    Daar, over het syncen zijn meerdere mogelijkheden voor.

    Zoek op Zarra. Deze man had een leuk werkend idee. Echter op zijn site is het niet meer te vinden, heeft hij schijnbaar onlangs veranderd. Google Zarra en ios sync en je zal wel wat vinden. Bij vimeo en youtube houd hij er zelfs een spreekbeurt over.

    Dan is er https://github.com/couchbaselabs/TouchDB-iOS.

    En specifiek tussen ios en osx

    Je kan ook je eigen webdav server op zetten met een specifieke port voor jouw app en server. JSON, etc.

    Over het local netwerk. Om de server te vinden kijk hier, over Bonjour

    Bijdrager
    OSSy

    Bedankt voor de reacties, hier heb ik wat aan.

    Het gaat idd om synchronisatie binnen een app met de server als “knooppunt”
    Hoe sneller de aanpassing op het andere device verschijnt hoe beter, maar enige vertraging hoeft geen ramp te zijn omdat het niet waarschijnlijk is dat er meerdere users tegelijk het zelfde veld bewerken.

    Inactief
    Anoniem

    Misschien heb je hier wat aan: http://www.heroku.com/

    Bijdrager
    bitsflew
    OSSy op 05 september 2012

    Bedankt voor de reacties, hier heb ik wat aan.

    Het gaat idd om synchronisatie binnen een app met de server als “knooppunt”

    Hoe sneller de aanpassing op het andere device verschijnt hoe beter, maar enige vertraging hoeft geen ramp te zijn omdat het niet waarschijnlijk is dat er meerdere users tegelijk het zelfde veld bewerken.

    Kijk ook eens naar CouchDB i.c.m. CouchCocoa

    Is werkelijk ideaal (en goedkoop;) )om een database op b.v. een mobiel in sync te houden met een externe database en vice-versa.

    Bijdrager
    lord anubis
    OSSy op 05 september 2012

    Hoe sneller de aanpassing op het andere device verschijnt hoe beter, maar enige vertraging hoeft geen ramp te zijn omdat het niet waarschijnlijk is dat er meerdere users tegelijk het zelfde veld bewerken.

    Weet niet voor hoeveel mensen dit is. Maar als het b.v een zakelijke app is en men begint om 9 uur, zal je zien dat mensen data gaat wijzigen 15-20 min na die tijd. En dat dan op dat moment de wijzigingen erg dicht bij elkaar komen liggen.

    Dan loop je tegen vragen zoals, ga je op veld niveau of op document niveau de wijziging doorgeven.

    Wat ik zou doen, is net zoals Lotus Notes, een datum/tijd ( 10ste/sec ) en UUID aan een veld toewijzen als metadata. Aan de hand daarvan de wijziging in de server db plaatsen. Je kan eventueel een tijd delta berekenen tussen de server en client.

    Houd er ook rekening mee over veld afhankelijkheid. Je weet dat als je een veld kan berekenen dat je dat moet doen en niet opslaan om het antwoord van de berekening gaat bewaren.
    Houd er rekening mee dat men soms geen verbinding heeft, en wel moet kunnen werken. Dat betekent dat data later op de server db in gevoegd wordt, dan data van iemand die het later heeft aangemaakt maar eerder ingevoegd heeft op de server db waardoor de afgeleide data niet meer juist hoeft te zijn.

    PS. Knooppunt, iedere verbinding is een knooppunt ( node ). Noem het ‘het centrale knooppunt’. Virtueel heb je voor je idee maar één knooppunt, maar fysiek heb je er meerdere.

8 berichten aan het bekijken - 1 tot 8 (van in totaal 8)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.