lato server o lato client mvc: quale approccio impone meno carico sul server?

1

Qual è l'approccio migliore quando si sviluppa un'app Web dinamica con più viste e contenuto dinamico. per quanto riguarda il carico del server e i tempi di risposta:

  1. usa un mvc lato server (come Sailsjs o ASP.NET MVC) per eseguire il rendering e quindi visualizzare le viste o
  2. usa un'API per ottenere dati dal server e un MVC lato client (come angolare) per eseguire il rendering delle viste

Quale approccio impone meno carico sul server?

    
posta gkaimakas 13.10.2014 - 11:26
fonte

1 risposta

0

Dichiarazione di non responsabilità: ci sono così tanti altri fattori in gioco che la tua decisione su quale approccio usare probabilmente non dovrebbe essere fatta solo su questo valutazione. Considerare i set di competenze del team, la manutenibilità a lungo termine, le funzionalità necessarie rispetto alle funzionalità fornite da vari framework, quali piattaforme / dispositivi client è necessario supportare e così via. Tuttavia, da un punto di vista puramente accademico ...

  • MVC lato server: il server gestisce l'accesso ai dati + crea HTML

  • MVC lato client: il server gestisce l'accesso ai dati + serializzazione DTO

Quindi, a prima vista, sembra essere una semplice questione di che richiede più risorse, costruisce HTML o serializza DTO? Se costruire HTML è meno oneroso della serializzazione di DTO, allora vai con il server -side MVC. In caso contrario, andare con MVC lato client.

Ma un altro fattore da tenere a mente è il numero grezzo di richieste HTTP che colpiscono il tuo server. Con MVC lato server, è probabile che sia relativamente basso (in genere 1 richiesta per "pagina"). Ma con MVC lato client, a seconda di come si imposta l'API dei servizi Web, è possibile che un numero qualsiasi di richieste HTTP colpisca il server per ogni "pagina" nell'app. Un approccio estremamente chiacchierone potrebbe causare un utilizzo molto maggiore delle risorse del server dal sovraccarico dell'elaborazione delle richieste HTTP rispetto al lavoro effettivo di creazione di codice HTML o serializzazione di DTO.

    
risposta data 13.10.2014 - 18:27
fonte

Leggi altre domande sui tag