Planung der skalierbaren Web-Anwendungsentwicklung

8

Welche Sprach-, Framework- und Hosting-Überlegungen sollten Sie vor Beginn der Entwicklung einer skalierbaren Webanwendung anstellen?

    
BWelfel 16.05.2009, 21:15
quelle

5 Antworten

11

Die wichtigste Überlegung ist, nicht zu viel zu entwickeln, um etwas aufzubauen und zu starten. Analyse Paralyse ist der größte Hemmnis für Produktivität, Fortschritte und Ergebnisse.

Ja, mach etwas Planung. Wählen Sie einen Rahmen. Perfektion in einem Framework wird unmöglich zu finden sein, weil es nicht existiert, teilweise weil du nicht weißt, was du brauchst, bis du es sowieso gebaut hast. Wahrscheinlichkeiten sind, wenn Sie etwas auswählen, ist es besser, als nichts auszuwählen.

Ja, versuchen Sie, flexible, interoperable Werkzeuge auszuwählen, wo Sie sich selbst sehen können.

Ja, achten Sie auf eine gute integrierte Funktion, in der Sie sich in den nächsten 6-18 Monaten sehen. Der Versuch, darüber hinaus zu schauen, ist sowieso nicht realistisch, da sich die meisten Projekte in Richtung der ersten Version ändern.

Also, wähle, was dir vertraut ist oder was dir vertraut ist. Folge nicht der Menge, tue, was dir die besten Ergebnisse bringt, am schnellsten und oft. Verstehe, dass du dich in Zukunft vielleicht ändern musst. Also, was auch immer Sie jetzt bauen, versuchen Sie Unit-Tests zu verwenden, damit Sie sie bei Bedarf neu einteilen können.

Wenn das, was du baust, super erfolgreich wird, wird es ein großes Problem sein, und es ist leicht, daran zu arbeiten, sobald es Geld verdient, da du andere Talente bekommst, die dir helfen.

Teilen Sie, was Sie am Ende pflücken und warum für Ihre Situation - es hilft uns, auch von Ihnen zu lernen!

    
Jas Panesar 16.05.2009, 23:54
quelle
3

Heirate dich nicht notwendigerweise mit einer Sprache oder einem Rahmen. Es kann sein, dass einige Teile Ihrer Website besser mit anderen Sprachen und Frameworks als andere funktionieren. Zum Beispiel basieren alle Websites von 37signs auf Ruby on Rails, aber sie haben kürzlich einen Blogbeitrag darüber geschrieben, wie die zugrundeliegende Technologie von einem tatsächlich in Erlang geschrieben ist, weil es viel einfacher ist, Parallelität auf diese Weise herzustellen.

Offensichtlich gibt es eine gewisse Komplexität, bei der Dinge zu einem Mischmasch werden, aber das richtige Werkzeug für den Job - auch wenn das verschiedene Werkzeuge für verschiedene Jobs bedeutet - kann Dinge vereinfachen.

    
Chuck 16.05.2009 23:46
quelle
2

Erstens ist es bei der Sprache weitgehend egal. PHP, Java und .Net sind wahrscheinlich die größten drei. Sie sind alle in dem Sinne bewährt, dass sie einige der größten Websites im Internet betreiben. Hören Sie also nicht auf jemanden, der Ihnen sagt, dass einer besser geeignet ist als jeder andere.

Einige könnten auch Ruby und Django / Python in diese Liste aufnehmen. Ich habe nichts gegen sie, aber ich kenne keine großen (sprich Top 50) Websites, die beide verwenden.

Hosting-Überlegungen hängen davon ab, wie niedrig Sie starten möchten, aber grundsätzlich ist die Reihenfolge:

  1. Freigegeben;
  2. Virtueller privater Server;
  3. Gewidmet.

Bei der Skalierbarkeit geht es in erster Linie um das Design Ihrer Anwendung, nicht um eine Sprache, ein Framework oder einen Anbieter. Effizientes Datenbankschema, effiziente Bereitstellung und Verwendung von Javascript / CSS und In-Memory-Caching sind alle Probleme, die in jeder Sprache oder jedem Framework auftreten.

    
cletus 16.05.2009 21:30
quelle
1

Sprache - Ich würde etwas mit guten Frameworks und guten Test-Bibliotheken wie Perl oder Java empfehlen.

Framework - es hängt davon ab, was Sie vorhaben zu tun. Wenn Sie mit einem Hosting beginnen, das FastCGI nicht zulässt, sollten Sie solche Frameworks wie Catalyst oder Rails am besten vermeiden. Deshalb liebe ich CGI :: Application (hauptsächlich Perl, aber auch auf andere Sprachen portiert) - es kann als CGI, FastCGI oder mod_perl laufen. Zur Entwicklung kann es von seinem eigenen Webserver aus ausgeführt werden.

Hosting - nichts ist besser als Ihr eigener Server. Es kann Ihr eigener Server, ein gemieteter Server oder ein virtueller Server sein. Aber Sie können mit dem günstigsten Hosting beginnen und wenn Sie mehr brauchen, sollten Sie es sich leisten können.

    
Alexandr Ciornii 16.05.2009 23:38
quelle
0

Kommt darauf an.

Beginnen Sie mit der Betrachtung Ihrer Anforderungen (funktional oder benutzerdefiniert) (nicht funktional) - Aspekte, die Ihr gewünschtes System Linktext )

Als nächstes würde ich klarstellen, was es bedeutet, eine skalierbare Webanwendung zu haben. Definieren Sie es als Testfälle, die eindeutig getestet werden können (müssen X Seitenaufrufe / Sekunde mit Antwortzeit & lt; Y Sekunden unterstützen).

Sobald ich diese Teile an Ort und Stelle hatte, würde ich mir überlegen, welche Art von Fähigkeiten mein Entwicklungsteam unterstützen kann (für das erste Projekt und für die Wartung). Dann finden Sie einige Fallstudien von Anwendungen in freier Wildbahn, die ähnliche Sprache oder Framework verwenden. Wenn jemand anders eine bestimmte Sprache / Rahmenmaßstab erstellt hat, sind die Chancen gut, dass Sie das auch können.

Schließlich gehen Sie los und suchen Sie nach einigen Hosting-Anbietern, die Ihre gewählte Sprache, Rahmenbedingungen und Anforderungen unterstützen.

    
Jeff 16.05.2009 21:30
quelle