Esistono server Web non bloccanti per Java?

3

Stavo studiando l'infrastruttura utilizzata da Facebook, mentre stavo sviluppando un sito web basato sull'interazione sociale per un progetto universitario.

Facebook utilizza Tornado Web Server come server Web scalabile e non bloccante, ma è scritto per Python. Sto cercando di trovare qualcosa di simile per Java: cosa dovrei guardare? Quali sono le tue esperienze nei server Web non bloccanti per Java?

    
posta Pinnacle 06.10.2011 - 20:26
fonte

3 risposte

6

Netty

Netty è un framework di rete basato su eventi ad alte prestazioni che supporta HTTP e altri protocolli comuni. Netty usa l'I / O non bloccante. Ma è piuttosto basso da usare.

Play Framework

Play Framework è un moderno framework web per Java e Scala. Ha un ciclo di sviluppo molto breve: basta salvare il file e aggiornare il browser. È ispirato a Ruby on Rails. Play Framework è per impostazione predefinita basato su Netty (incorporato), ma può anche essere utilizzato in un contenitore Java Servlet come file di guerra.

Utilizzo Play Framework in pochi mesi. È un framework che è facile da usare e ha ottime prestazioni poiché è basato su Netty. Se hai fatto qualche programmazione della GUI, ad es. utilizzando Swing, hai già eseguito la programmazione basata sugli eventi e sono gli stessi principi: esegui l'elaborazione a lungo termine in un thread in background, altrimenti il server verrà bloccato come una GUI viene bloccata quando il thread è utilizzato in modo errato.

    
risposta data 06.10.2011 - 22:09
fonte
3

È possibile utilizzare ngnix come proxy di fronte a un contenitore java. Il problema che Tornado e ngnix risolvono è che l'io sugli zoccoli è gestito da un evento anziché da un blocco, il che limita le connessioni permanenti a qualcosa come 10.000. In un ambiente java è possibile utilizzare ngnix come proxy inverso / bilanciamento del carico per uno o più contenitori java e ottenere una scalabilità simile. Ci sono progetti come netty di jboss che stanno iniziando ad affrontare questo problema per lo spazio java, ma non sono sicuro che ci siano eventuali implementazioni commerciali che lo utilizzano.

    
risposta data 06.10.2011 - 20:32
fonte
0

Ci sono state alcune attività intorno alla costruzione di un server web in cima a Apache Mina , ma non sono sicuro di quanto sia lungo. La pagina web è attualmente piuttosto leggera sui dettagli.

    
risposta data 07.10.2011 - 16:59
fonte

Leggi altre domande sui tag