App - Server Kommunikation - welche moeglichkeiten

  • Hey Leute,


    So ich bin gerade mal wieder an kleiner App-Idee und komme diesmal zum ersten mal mit App-Server Kommunikation in Verbindung.
    Zuvor sollte gesagt sein, das ich kein Neuling bin was Netzwerkprogrammierung in Java, C etc angeht nur bei Android steh ich noch etwas auf dem Schlauch.


    Naja mal zu meiner App. Es soll aufjedenfall keine dauerhafte Kommunikation stattfinden.
    Die App schickt z.B nur nach jedem Positionswechsel die aktuellen GPS Daten an den Server.


    Ich hatte dies bisher ganz normal mit Sockets geloest, hatte nun aber im Forum gelesen das dies eher eine schlechte Idee ist?
    Welche anderen Möglichkeiten gibt es denn?


    Und dann noch eine weitere Frage bzgl. der Server seitigen Weiterverarbeitung.
    Ich hatte mir einmal überlegt die Daten per Post zu verschicken und von einem Phpscript abgreifen zu lassen und in einer DB speichern zu lassen.
    Andererseit koennte ich mir auch einfach mit Java, C etc einen Server schreiben, der die Daten in die DB schreibt.


    Welche Version findet ihr effektiver? Ich denke die Php Version dürfte um einiges einfacher sein, koennte aber bei hohen Zugriffszahlen etc. die schlechtere, unperformantermoeglichkeit sein oder?


    Ich freue mich auf eure Meinungen ;)


    Greetz AllesFAM

  • Als erstes wäre es vielleicht gut gewesen die Suche zu nutzen....
    Allein die letzten 2 wochen gab es zwei themen dazu.


    Serverkommunikaiton Architektur ?



    Die Frage ist doch warum möchtest du GPS daten deiner User auf deinem Server speichern?
    Würde es nicht vielleicht genügen diese lokal auf deren gerät zu speichern?
    Aber sonst wüsste ich nichts was gegen ein php script spricht.
    wahlweise könntest du es auch mit node.js probieren, das soll auf rießige zugriffszahlen getrimmt sein.

  • Oh ok, habe ich scheinbar übersehen, hatte davor schon nach ähnlichen Themen gesucht.


    Die Gps-Daten sollen auf dem Server gespeichert werden, damit eine Umkreis Suche stattfinden kann (Android schickt GPS-Daten und der Server gibt alle im Umkreis von x zurück)
    Daher müssen die Daten auf dem Server liegen.


    Ok das mit dem Script war eben meine frage, ob dies nicht zu "unprofessionell" ist.
    Denn ich denke berühmte Apps wie Whatsapp, Tinder, Facebook etc. werden die Daten doch sicher nicht per Php abgreifen oder?

  • Whatsapp professionell?
    whatsapp ist dahingeschustert, es war nur die erste seiner art.


    aber wenn du schnelle scriptsprachen benutzen möchtest empfehle ich dir ruby oder phyton :)
    was nun für deinen usecase besser geeignet ist vermag ich nicht zu entscheiden.

  • Whatsapp professionell?
    whatsapp ist dahingeschustert, es war nur die erste seiner art.


    aber wenn du schnelle scriptsprachen benutzen möchtest empfehle ich dir ruby oder phyton :)
    was nun für deinen usecase besser geeignet ist vermag ich nicht zu entscheiden.

    Mit über 500 Millionen aktiven Nutzern kann man nicht sagen das WhatsApp unprofessionell ist. :D
    Oder hast da was konkretes zu? Bis auf ein paar kleinere Ausfälle hatte ich nie Probleme damit. :o)

  • Mit über 500 Millionen aktiven Nutzern kann man nicht sagen das WhatsApp unprofessionell ist. :D


    Warum sollte man das nicht sagen können?
    Nur weil es weit verbreitet ist und überall Anklang findet, heißt das ja noch lange nicht, dass es professionell und gut sein muss.


    Beispiele aus der Realität gefällig?
    – Microsoft Windows
    – Christlich-Demokratische Union/Christlich-Soziale Union
    – Axel Springer Verlag
    – Casting Shows
    – PHP Hypertext Preprocessor


    Wie dem auch sei. ;)


    Zitat von AllesFAM

    Denn ich denke berühmte Apps wie Whatsapp, Tinder, Facebook etc. werden die Daten doch sicher nicht per Php abgreifen oder?


    Facebook bietet eine PHP API an.
    https://developers.facebook.com/docs/reference/php/4.0.0
    Kein Wunder, ist die Online-Variante doch nahezu komplett in PHP erstellt.
    https://www.facebook.com/notes…odebase/10150187460703920
    Mittlerweile basteln die Jungs wohl an ihren eigenen Betriebssystemen herum, pimpen ihre PHP Compiler um schnelleren Code anzubieten und biegen auch an sonst jeder erdenklichen Stelle an ihrer Hardware, um Skalierbarkeit zu gewährleisten.
    http://royal.pingdom.com/2010/…software-behind-facebook/


    Nichts desto Trotz: sie greifen ihre Daten per (leicht modifiziertem/abgewandeltem) PHP ab. Da das ungefähr 1,5 Millionen Daten pro Sekunde oder mehr sein dürften (pro Sekunde werden durchschnittlich ungefähr 3000 Bilder hochgeladen), müssen sie halt mehr in die Skalierung und Verteilung ihrer Systeme investieren. Das Rad neu erfinden und was Anderes als PHP nutzen werden sie aber sicherlich nicht. 1.000 Module mal eben von PHP umschreiben – ich denke nicht.


    Tinder Anmeldung ist gemäß Wikipedia ausschließlich via Facebook-Kontoanmeldung möglich. Facebook bietet eine PHP API an.


    Für WhatsApp gibt es eine inoffizielle PHP API, mit der sich die Grundfunktionen von WhatsApp umsetzen lassen.
    https://github.com/venomous0x/WhatsAPI


    Ich stimme Dir in einem Punkt zu: PHP ist nicht das Gelbe vom Ei, was Skriptsprachen angeht.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

    Einmal editiert, zuletzt von Marco Feltmann ()

  • Hm, da hast du mich falsch zitiert. Das zweite Zitat ist nicht von mir. ;D


    Um auf deine Liste zurückzukommen.
    Wäre WhatsApp nicht wenigstens vom Frontend Professionell umgesetzt (Keine Abstürze, gute Bedienung, Schnell, etc.pp) dann denke ich, dass die App nicht so erfolgreich wäre. Aber da kann man viel drüber diskutieren und ich kann die Qualität nicht beurteilen.


    Btw, schere die Axel Springer AG nicht über einen Kamm. :D
    Die Bild ist das eine, es gibt aber auch sehr viele hochprofesionelle Unternehmen im Axel Springer Konzern. :)

  • Stimmt, beim Zitieren war der Copy'n'Paste Finger etwas zu schnell. ;)


    Was Axel Springer betrifft:
    Sämtliche Fachzeitschriften, Wirtschaftspublikationen und Tageszeitungen sind allesamt auf dem Bild* Niveau.
    Zumindest inhaltlich. Immerhin passt die Relation Bildergröße/Überschriftengröße bei allen Printmedien, die kein 'Bild' im Namen haben. :P

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Cool, danke das war im Endeffekt meine Frage.
    Denn wenn ich eine ähnliche APP schreibe, will ich es wenigstens gleich von Anfang an Professionell und Fehlerfrei (oder eben wenigstens so professionell wie die großen ;) ) machen.


    Ich hatte zuvor eigentlich vor mir einen Javaserver zu schreiben und die Daten dann per Sockets ab zugreifen, aber dann werde ich wohl auf Php und Post umschwenken =)


    edit: eine andere Frage die mir spontan noch einfällt... wenn die komplette kommunikation also ohne Sockets stattfindet, wie wird dann eine Login-Session gehalten, ohne das jemand die Session Hijacken kann?
    Wäre bei Php und Post ja mehr als einfach oder?

  • Du hast nicht richtig gelesen.
    Facebook z.b. nutzt noch Php weil es einfach zu aufwändig wäre die vielen Php Module auf eine andere Sprache zu portieren.
    Twitter nutzt z.b. Ruby soviel ich weiß.


    Das was einen Messenger Professionell macht, ist die Sicherheit.
    Wie die daten transportiert werden ist erstmal zweitens, das kann dem Nutzer egal sein.
    Sicherheit und Benutzerfreundlichkeit hat oberste Priorität.


    Willst du was schnelles und zukunftssicheres, nimm ruby oder phyton

  • Ich würde auf jeden Fall auch auf PHP verzichten und eine andere Skriptsprache bevorzugen. ;)


    Vom Abgreifen mit Sockets rate ich ja immer wieder gern ab. :)
    Das Internet besteht quasi aus asynchronen Verbindungen mit permanentem Auf- und Abbau.
    Lieber kannst Du Dir in Ruby, Python oder Java einen eigenen kleinen 'Webserver' schreiben (der im Gegensatz zum richtigen WebServer dann halt kein HTTP/HTTPS kann), der Deine Daten pflegt und füttert und meinetwegen in HTML5 ein Web Backend dahinter schrauben.


    Die wirkliche Herausforderung das Ganze professionell aufzuziehen, und da haben die Großen die besseren finanziellen Mittel, ist die Skalierbarkeit der Server sowie die Sicherheit der Verbindung.


    Hochskalierbare Datenbanken werden übrigens auch von den genannten Betreibern nicht eingesetzt. Sie sind einfach sauteuer und recht kompliziert.
    Noch größere Zugriffszeiten aus WhatsApp und Co haben die Lagerverwaltungssysteme großer Unternehmen – und da wird selten SQL eingesetzt. ;)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!