2011-08-19 9 views
6

Voglio creare un'app di chat che userebbe php/codeigniter per fare le viste e l'interfaccia utente. Ho letto molti post su StackOverflow che raccomandavano node.js o socket.io. Eppure ho anche incontrato APE (Ajax Push Engine). Neppure non ne so molto e mi chiedevo quale usare.applicazione chat: node.js o APE?

Ho letto su node.js e ho visto molte cose positive su di esso, ma la cosa più importante che mi preoccupa è che è relativamente nuovo e non ha molti siti web del mondo che lo testano/utilizzano.

D'altra parte, l'APE lo fa. E sembra simile a node.js. Ma come ho detto, non ne so abbastanza né per sapere quale scegliere.

Qual è il migliore nella creazione di un'app di chat?

Grazie!

+0

Discalaimer: ho usato socket.io/node (così come socket.io/Tornadio) per molti progetti, ma non ho mai usato APE. In termini di "migliori" nella creazione di un'app di chat, sono entrambi perfettamente capaci. Come ho visto, socket.io è un po 'più potente (si avvale di WebSockets per esempio) mentre APE è un po' più stabile (l'API di socket.io è cambiata radicalmente nel mese scorso). Controlla maggiori informazioni qui: http://stackoverflow.com/questions/6513367/what-are-the-main-differences-between-ape-and-node-js –

risposta

2

Come te, non ho familiarità con APE, tuttavia socket.io su node.js viene fornito con chat app as it's main example app.

È vero, non ci sono molti siti che utilizzano Node.js in questo momento. Socket.io, tuttavia, è probabilmente considerato 'Killer App' di Node, e quindi ha un sacco di discussioni/lavoro con esso.

Suppongo che APE abbia API stabili, tuttavia, che socket.io potrebbe non avere necessariamente - La versione 0.7 è stata ad esempio un aggiornamento piuttosto ampio, che modifica le API. Ciò potrebbe accadere meno spesso con la pubblicazione dello socket.io spec.

+0

Ho scritto questo prima di aver visto il tuo commento ... ancora rilevante comunque, penso. La pubblicazione socket.io-spec suggerisce che sta diventando più stabile e si sta dirigendo verso implementazioni di server multipli, tuttavia questo è un po 'speculativo. – Stoive

+0

devo quasi sempre utilizzare socket.io quando si utilizza node.js? – Derek

+1

No, piuttosto se avessi bisogno di integrare la funzionalità 'push' in qualcosa, andrei allo sforzo di integrare Node.js + Socket.io con qualsiasi backend esistente (PHP/.NET/JSP/qualunque cosa) sono già utilizzando. Ho provato a trovare qualcosa con .NET, ad esempio, e ho concluso che sarebbe stato meglio creare un layer 'socket' con socket.io – Stoive

6

Ho giocato un po 'con node.js, ho provato socket.io - ma alla fine ho fatto un grande progetto con APE.

Penso, come sempre, c'è la domanda su cosa si vuole ottenere. Solo confrontando le parti del server: Con node.js si ottiene una macchina che non farà nulla da sola, è necessario scriverla da soli (o usare le librerie) Con APE, la gestione dei canali e delle connessioni è già integrata (compilata C). Hai ancora bisogno di costruire parti della tua logica in alto con JS - o usare gli esempi.

Sul lato client, socket.io fornisce un framework client con tre comandi - e APE ha la sua APE_JSF che gestisce le connessioni (che porta più funzionalità rispetto socket.io canali materia)

Personalmente, preferisco APE , anche se c'è una mancanza di documentazione per i principianti. Tuttavia, tieni presente che APE non distribuirà file/immagini, non è un server Web completo ma ottimizzato per la spinta in tempo reale dove può gestire ~ 10.000 utenti simultanei

+0

Ho seguito i tuoi post e sembra che tu non abbia letto node.js supporta anche i moduli C/C++ nativi, sono difficili da scrivere e ammetto che sono difficili da trovare ma il parser BSON MongoDB in C è un buon esempio di come il nodo nativo può ottenere – ShrekOverflow

+1

Accetto che APE sia molto più stabile di NodeJS, ma la documentazione che confonde deve essere aggiornata, altrimenti i nuovi sviluppatori non saranno contenti di usarlo. – ShrekOverflow

+0

Hai ragione su entrambi i commenti: non ho scavato troppo in profondità nelle opzioni node.js oltre a scrivere JS E i documenti APE mancano di un po 'di roba ed è difficile entrare nell'argomento Tuttavia, una volta ottenuto il blocco di esso , puoi fare cose impressionanti con esso. Sarai ancora in grado di ottenere lo stesso con il nodo, penso che quando si tratta di prestazioni puri (> 10K utenti) il nodo avrà i suoi problemi – Xosofox