Backend in PHP vs. Node vs Python

  • Ich habe ein Frondend für meine Berechnungen erstellt, welches ich mit Angular (Typescript/Javascript) strikt modular aufgebaut ist. Daher kann ich bestimmte Formeln und Funktionen, jelche ja alle im Browser sichtbar sind, ins Backend verbannen.


    Beim Webhosting 8000 kommen da gleich 3 Möglichkeiten in Betracht:


    PHP - out of the box. Hier gibt es wohl die geringsten Probleme mit der Grundversion. Wie sieht es mit den Zusatzinstallationen aus? Wie installieren? - einfach oder Tricky.


    NODE - hier muß einmal das gesamte NODE (120MB) auf den Server geschoben werden und nach dem Start der App läuft es dann. Hierbei wird aber jedes mal wieder von einer neu gestarteten Instanz losgelegt. Kurze Verzögerung beim Start, aber dann ist ja alles O.K und wenn die Daten in der DB oder einer Datei gespeichert sind, ist nichts verloren. Um neue Funktionalitäten zu haben, einfach das Package lokal auf dem PC laden und erstellen und dann auf den Server schieben/kopieren, gut ist.


    Python - Hier habe ich keine Erfahrung mit dem Webserver. Wie können Erweiterungen auf den Server installiert werden, oder kann ich,wie bei NODE, einfach die lokalen Dateien auf den Server kopieren? Und muß wie beim Node erst einmal das Python nach dem Aufruf neu gestartet werden?


    Bevor ich tiefer in das PHP und Python einsteige, wolle ich gerne wissen, was die beste Option auf den Webserver ist.

    Ein vServer möchte ich nicht mehr betreiben, daher kann ich auch mit einem gewissen Kompromiss leben.


    Danke für Eure Gedanken und Meinungen.

  • Hallo Jürgen,


    Bevor ich tiefer in das PHP und Python einsteige, wolle ich gerne wissen, was die beste Option auf den Webserver ist.

    die Beste Option ist immer deine beste Option.

    Wenn du bereits TypeScript kannst, aber keine Erfahrung mit PHP hast, nimm TypeScript.

    Wenn die Module sowieso fertig sind, hast du keinen weiteren Programmieraufwand.



    PHP - out of the box. Hier gibt es wohl die geringsten Probleme mit der Grundversion.

    Das stimmt. Zudem hast du den Funktionsumfang sehr genau auf der Produktseite beschrieben, sodass es hier zu keinen Überraschungen kommt.

    Ein weiterer Vorteil: PHP wird auf nahezu allen Webhostings angeboten. Das macht eine Migration zu einem anderen Anbieter sehr einfach.



    Wie sieht es mit den Zusatzinstallationen aus? Wie installieren?

    Was meinst du mit Zusatzinstallationen?

    Viele Module sind bereits im Hosting erhalten. Eine genaue Übersicht verschafft dir phpinfo()



    NODE - hier muß einmal das gesamte NODE (120MB) auf den Server geschoben werden und nach dem Start der App läuft es dann. Hierbei wird aber jedes mal wieder von einer neu gestarteten Instanz losgelegt. Kurze Verzögerung beim Start, aber dann ist ja alles O.K und wenn die Daten in der DB oder einer Datei gespeichert sind, ist nichts verloren. Um neue Funktionalitäten zu haben, einfach das Package lokal auf dem PC laden und erstellen und dann auf den Server schieben/kopieren, gut ist.

    Soweit richtig erfasst. node.js kennst du ja bereits, die Umgebung im Webhosting hat die von dir erwähnte Einschränkung.

    Andere Laufparameter sind leider nicht Dokumentiert. Eine Forensuche nach node.js sollte dir aber auch die Basics liefern.



    Python - Hier habe ich keine Erfahrung mit dem Webserver. Wie können Erweiterungen auf den Server installiert werden, oder kann ich,wie bei NODE, einfach die lokalen Dateien auf den Server kopieren? Und muß wie beim Node erst einmal das Python nach dem Aufruf neu gestartet werden?

    Python läuft auf dem Webhosting über den Applicationserver Phusion Passenger.

    Hier kannst du wie bei node.js dein gesamtes venv hochladen, oder dir pip auf dem Webhosting installieren und per pip deine Dependencies laden.

    Programmablauf ist mir nicht bekannt. Ebensowenig das weitere Featureset. Auch hier: Forensuche nach Python.


    Bei Python und node.js ist leider nicht dokumentiert, wie lange entsprechende Skripte laufen dürfen und welche Ressourcen sie nutzen dürfen.

    Es gibt leider eine strikte Trennung zwischen Runtime in Webhosting und Runtime im SSH Zugriff.


    Gerne die Optionen auch ausprobieren und berichten, was deine Erfahrungen mit den Techniken im Webhosting sind.

  • Hallo H6G,


    danke für die lange Antwort.


    PHP wäre demnach die beste Option. Zu mindestens für weitere kleinere Sub-Scripte.


    Da ich Nestjs kenne und das ähnlich Angular ist, werde ich hiermit versuchen. Mal sehen, wann die Schallmauer der Scripausführung durchbrochen ist, bzw. das Starten dauert. Auf jeden Fall werde ich berichten.

    Jedenfalls stoppt das NODE nach ca. 4-5min. wenn nichts weiter passiert.


    Da Python (Jupther) beherrschbar ist aber für mich Neuland, bleibe ich bei den "alten" Bekannten. Hier weiß ich wenigsten, wo der Fehler liegen könnte.

  • Hast du dein Projekt mittlerweile umgebaut? Mich würde ein Erfahrungsbericht interessieren, denn ich habe bisher nur mit PHP gearbeitet und nie mit node.js. Dafür kenne ich ein wenig Angular

    :S Webhosting 2000 SE BF22

    :) Webhosting Wollmütze