Domanda

Il tema più comune che ho letto sul perché utilizzare node.js è per alta scalabilità grazie alla sua evented, non-blocking modello di I / O. Sto cercando di capire gli altri usi casi non scalabilità (e oltre ad essere usato come un motore JavaScript lato server generale).

  1. node.js ha altri casi di utilizzo se scalabilità non è un problema mio?
  2. Se sì a # 1, che cosa sono?
  3. Is node.js adeguato utilizzo per qualsiasi particolare tipo di architetture applicative? Per esempio. simile a come qualche chiave / valore. (NoSQL - ugh io odio questo termine) i database sono utili se non per ragioni di scalabilità
È stato utile?

Soluzione

Credo che questo post del blog riassume abbastanza bene: http://debuggable.com/posts/understanding-node -js: 4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb

In breve (pro node.js):

  • Velocità
  • Javascript (soprattutto se si sa già)
  • Efficienza

node.js è davvero grande. Provaci! :)

Altri suggerimenti

Il motivo per provare nodo è il fatto che è incredibilmente facile per inviare i dati JSON tra il server e il client per le richieste Ajax. Se si usa qualcosa come MongoDB, che dati come oggetto JSON negozi troppo, non devi mai preoccuparti di tradurre o l'analisi dei dati.

Se il sito utilizza un sacco di Ajax, e si sta inviando i propri dati come oggetti JSON (piuttosto che XML o testo semplice), quindi node.js vi farà risparmiare un bel po 'di fatica.

riesco a pensare a una ragione, ma non è molto profonda. In sostanza, se si sta sviluppando una RIA, l'intero stack può essere javascript. Che potrebbe avere un certo valore.

Ma Ill domanda la mia risposta, e cioè il pensiero è, anche se si rende il codice lato server più accessibile agli sviluppatori lato client, hanno ancora bisogno di capire come le loro opere dello stack del server. Quindi c'è ancora un po 'di apprendimento a.

Per essere precisi, penso che il motore JavaScript generale sul lato server nella vostra domanda sarebbe V8, mentre secondo il suo creatore nodo è stato costruito per "programmi di rete di scripting".

Sulla base di molti dei suoi commenti non credo che lo vede nel modo più ampio come molti di noi fanno, ma riconosce dove si può andare. [Non posso parlare per chiunque altro -. Che è solo la mia interpretazione basata sugli scritti e le presentazioni che ho visto]

Quindi si avvicina le cose da un livello leggermente inferiore, rende HTTP una prima classe cittadino e solo sembra essere davvero cool, che credo lo rende abbastanza di un "caso d'uso" per la maggior parte di noi. ;)

Si ha una curva di apprendimento e non è la piattaforma più stabile di costruire su a causa della sua rapido sviluppo. Credo che il tempo ci dirà dove è più utile.

Per ora le persone stanno usando per le applicazioni "real-time" per la sua leggerezza, la natura asincrona, così come lo sviluppo Web in generale, anche se i suoi resti IMO sweet spot con il suo scopo originariamente stabilita.

Quello che mi piace di node.js a parte non-blocking modello di I / O, la scalabilità e tutta quella roba "motivi principali":

  • natura leggera di esso di quadro. Nozioni di base sono facili da imparare.
  • comunità degli sviluppatori la costruzione di tonnellate di moduli e librerie utili su github che sono in espansione Node.JS nucleo leggero e le sue capacità.
  • E 'davvero facile e veloce per i sistemi lato server di build e in tempo reale (per esempio http o presa base) senza la conoscenza di librerie complesse.

Mi piace usare NodeJS di scrivere test harness, perché si può scrivere uno stub / server / client molto velocemente. E si può guidare la vostra applicazione, con facilità. Posso facilmente scritto un server back-end di terze parti per fare il test delle prestazioni sulla mia domanda. Io uso anche a guidare la mia domanda. Posso eseguire scenari di server client complessi utilizzando setTimout per causare più eventi di essere grilletto sulla base di ogni logica che voglio e li prova su larga scala.

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