2010-07-28 15 views
20

Node.js è più veloce e più scalabile di Apache? Esistono dati sulle prestazioni per il backup delle prestazioni di Node.js per un'applicazione Web su Apache?Come funziona Node.js rispetto ad Apache?

UPDATE: Ok forse la mia domanda (sopra) è confusa perché sono un po 'confuso su come Node.js si trova all'interno di uno stack web. In quali circostanze dovrei prendere in considerazione l'utilizzo di Node.js invece di uno stack più tradizionale come PHP, MySQL e Apache - o Node.js gioca è parte di questo stack?

+5

Più veloce per * cosa *? Che tipo di applicazione web hai intenzione di servire? –

+0

Questa domanda è essenzialmente impossibile da rispondere al di fuori del contesto di un caso di test specifico. –

+2

Questo articolo può essere utile per rispondere alla tua domanda: http://al3x.net/2010/07/27/node.html –

risposta

17

Node.js è un framework particolarmente adatto per la scrittura di applicazioni Web ad alte prestazioni senza dover capire come implementare la concorrenza a un livello basso. È un framework per scrivere app JavaScript lato server usando IO non bloccanti: passando le continuazioni verso le chiamate IO piuttosto che attendere i risultati. Node.js fornisce un'API di sistema (accesso al filesystem, accesso alla rete, ecc.) Dove tutte le chiamate API richiedono una continuazione che il runtime eseguirà in seguito con il risultato, anziché bloccare e restituire il risultato al chiamante originale.

È possibile utilizzare da solo, se ti piace. Ma potresti volere un proxy inverso dedicato di fronte a Node.js: qualcosa come Apache, Nginx, LigHTTPD, ecc. Oppure, per il clustering di un'app più grande, potresti volere qualcosa come HAProxy davanti a più app in esecuzione su Node.js.

+0

@agnoster Grazie per il tuo commento - Ho cambiato la mia risposta. – yfeldblum

+0

Grazie per il tuo feedback! L'unico altro commento che darei è che, per ragioni tecniche, se vuoi eseguire un proxy inverso di fronte a Node.js, e stai usando socket.io, vorrai bypassarne la maggior parte per la comunicazione websocket . – agnoster

+1

Qual è il vantaggio di un proxy inverso? La funzionalità del server di Node è più adatta a test della luce e meno sicura/performante o è solo che altre cose hanno caratteristiche che la gente vuole che il server di base non lo faccia? –

7

C'è un recente (28 luglio, 30) pubblicato Google Tech Talk about Node.js dove ci sono alcuni numeri di prestazioni e dove parla anche di ridimensionamento.