Domanda

Sto progettando l'architettura di un nuovo sito web. Dal momento che l'architettura multi-tier sicuramente hanno tutti i sintomi di ottimizzazione prematura (per complessità, lunghezza dello sviluppo, ecc) mi piacerebbe evitare a questo punto, però, credo che l'introduzione di una simile architettura dopo che il sistema è scritto (e introducendola correttamente) sarà molto costoso. Credo che se il sito ottiene abbastanza grande, tale architettura è imperativo.

Cosa ne pensi?

È stato utile?

Soluzione

Dipende da quale piattaforma stai andando a fare affidamento su.

È possibile sviluppare un'architettura n-livelli utilizzando le buone pratiche e di evitare le dipendenze tra gli strati, e che sta avendo un design che può crescere fino a un approccio a più livelli.

Per esempio, se siete in .NET Arena, il porting di un'architettura non-n-tier a n-tier è facile grazie a Windows Communication Foundation, che si evita di scrivere un sacco di codice per esporre i propri servizi tramite HTTP , TCP crudo o qualsiasi protocollo che si desidera utilizzare per comunicare i livelli, e anche il codice client per consumare loro.

Date un'occhiata al Domain-Driven Design e le relative modelli di progettazione e vincerai.

Riassumendo, è necessario analizzare se distribuire la soluzione a diversi livelli migliorerebbe la sua scalabilità nella vostra prima versione. E preparare il disegno di supportare facilmente n-tier.

Questo è separare le preoccupazioni in modo da evitare le dipendenze e lasciare che ogni parte del vostro programma di lavoro insieme con le interfacce condivise.

siti web

In ogni caso, n-tier devono eseguire male rispetto a un non-n-tier uno in un basso di scenario di utilizzo medio, il che significa che si dovrebbe pensare se l'applicazione sarà necessario per servire contenuti a migliaia o Milioni di utenti contemporaneamente e che sarebbe il costo per avere uno scenario a più livelli.

N-tier avrebbe bisogno di un hosting dedicato.

Si può fornire ulteriori informazioni sugli obiettivi del progetto? (Intendo in termini di scalabilità).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top