Frage

Ich bin der Gestaltung der Architektur eines neuen Web-Site. Da auf jeden Fall Multi-Tier-Architektur alle die Symptome der vorzeitigen Optimierung haben (Komplexität, Dauer der Entwicklung, etc.) würde ich es an dieser Stelle zu vermeiden lieben, aber ich glaube, dass eine solche Architektur einzuführen, nachdem das System geschrieben (und Einführung richtig wird) sehr kostspielig sein. Ich glaube, dass, wenn die Site groß genug bekommt, eine solche Architektur zwingend notwendig ist.

Was denken Sie?

War es hilfreich?

Lösung

It depends on which platform are you going to rely on.

You can develop a n-layered architecture using good practices and avoiding dependencies between layers, and that's having a design that can grow to a n-tier approach.

For example, if you're in .NET arena, porting a non-n-tier architecture to n-tier is easy thanks to Windows Communication Foundation, which avoids you to write a lot of code to expose your services through HTTP, raw TCP or whatever protocol you want to use to communicate tiers, and even client code to consume them.

Take a look to Domain-driven design and its related design patterns and you'll win.

Summarizing, you need to analyze if distributing your solution in different tiers would improve its scalability in your first version. And prepare your design to easly support n-tier.

That is separating concerns in order to avoid dependencies and let each part of your program work together with shared interfaces.

Anyway, n-tier websites should perform bad compared to a non-n-tier one in a low to medium usage scenario, meaning that you should think if your application will need to serve content to thousands or milions of users concurrently and which would be the cost for having an n-tier scenario.

N-tier would need a dedicated hosting.

Can you provide more information about goals of your project? (I mean in terms of scalability).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top