Django oder CodeIgniter für Turn-Key-Webanwendung

8

Ich werde eine schlüsselfertige Lösung für einen vertikalen Markt entwickeln und möchte beide Optionen anbieten: Software als Service und ihnen die Möglichkeit geben, die Anwendung selbst zu hosten. Mit anderen Worten, ich möchte ähnliche Einsatzmöglichkeiten haben wie Joels FogBugz.

Ich bin Python-Programmierer und könnte mit Django über das Projekt fliegen. Es gibt mehrere Gründe, warum ich PHP bevorzuge:

1) Django Installation und Konfiguration setzt voraus, dass Sie Zugriff auf eine Shell haben (mein Ziel ist nicht der Typ des Programmierers). Obwohl ich Installationsservice anbieten konnte, aber nicht auf ihren Servern.

2) Django läuft nur auf bestimmten Hosts, auf die besonders viel Wert gelegt werden muss. Installieren von mod_python / mod_wsgi, und wahrscheinlich würde die Minderheit meiner potenziellen Kunden Root-Zugriff oder sogar ein cpanel haben.

3) Die Verwendung von PHP würde bedeuten, dass ich es auf dem vorhandenen Server ausführen könnte. Ich hätte keine Notwendigkeit, sie auf einen Django-fähigen Server zu verschieben, und keine Ausfallzeiten für ihre E-Mails, während die DNS aktualisiert.

Auf der anderen Seite habe ich sehr wenig Erfahrung mit PHP. Smarty als Vorlagensprache sieht gut aus und funktioniert ähnlich wie Django-Vorlagen. Es bietet jedoch keine Template-Vererbung, außer in einer sehr hackischen Art, in der ich nicht verwenden möchte, da es die Anwendung zerstören könnte, wenn der Designer sie vermasselt. Was denken Sie? Vielen Dank im Voraus!

    
Lorenzo 27.03.2009, 18:05
quelle

3 Antworten

4

Die Bereitstellung ist eindeutig ein Problem für alle nicht-PHP-basierten Web-Apps, aber ich denke, die Dinge werden besser mit den ISPs vom Typ DreamHost / Engineyard, die Ruby / Python usw. bereitstellen. Es sieht auch so aus, als würde es diese Woche auf der PyCon eine Menge Diskussionen über Möglichkeiten geben, um Bereitstellungsprobleme zu beheben. Die wachsende Beliebtheit von Django, Turbogears und Pylons fördert die Nachfrage nach besseren Bereitstellungslösungen.

Das heißt, wenn Ihr Zielmarkt Menschen sind, die auf dem sehr niedrigen $ 12 pro Jahr hosten, geben Sie ISPs ein, dann glaube ich nicht, dass Sie viel andere Wahl haben als PHP.

Schließlich stimme ich dir nicht zu, PHP und Django auf demselben Server laufen zu lassen. Ich betreibe einige PHP-Apps auf meinem Server mit Apache und Dutzenden von Django-Sites mit mod_wsgi im Daemon-Modus. Wenn man so vorgeht, bedeutet das, dass der Python-Interpreter in den Apache-Workern kein RAM verwendet und umgekehrt, der PHP-Interpreter verschmutzt nicht meine mod_wsgi-Daemons:)

    
Van Gale 27.03.2009 19:46
quelle
3

Wenn Sie möchten, dass Ihre Anwendung zum Mainstream wird, dann sind Sie fast gezwungen, mit PHP zu arbeiten. Von Django zu PHP zu gehen ist viel einfacher als von PHP zu Django. Sie kennen die Standards, Sie müssen nur die PHP-Syntax und Funktionen lernen.

Ich würde definitiv ein PHP-Framework verwenden. Symfony und akelos sind Rails sehr ähnlich (in der Nähe von Django). Auf der anderen Seite gibt es Code Igniter, der tut was er sollte - organisieren Sie Ihren Code.

    
user50635 27.03.2009 21:34
quelle
2

Basierend auf Ihren eigenen Schlussfolgerungen würde ich mit CodeIgniter gehen. Es scheint so, als würde es eine Menge Arbeit geben, Ihren Kunden bei der Installation Ihrer Web-App zu helfen, und ich nehme an, Sie wollen das nicht.

Erstellen Sie eine einfach zu installierende Web-App, damit Sie sich darauf konzentrieren können, sie besser zu machen und zu verkaufen, anstatt als Systemadministrator zu arbeiten oder umfangreiche Installationstutorials zu schreiben.

(Auf diese Weise war FogBugz nicht einfach auf unserem Linux-Server zu installieren, obwohl es in PHP geschrieben ist. Ich und meine Kollegin (beide Programmierer!) brauchten mehr als einen ganzen Arbeitstag für die Installation denke, es wird immer Probleme mit der Installation von selbst gehosteten Web-Apps geben.)

    
Christian Davén 28.03.2009 15:06
quelle

Tags und Links