2011-08-26 21 views
9

Sono abbastanza nuovo per Akka e nuovo per la programmazione distribuita in generale. Usando il componente Akka's Mist, ho creato degli attori supervisionati per gestire le richieste HTTP in modo asincrono. Tutto è attualmente in esecuzione su una macchina fisica con attori locali. Quello che non capisco è come costruire un sistema veramente fault-tolerant con più di una scatola. Come indicato nei documenti di Akka:Attori distribuiti in Akka

Inoltre, è (di solito) necessario sapere se una casella è inattiva e/o il servizio con cui si sta parlando nell'altra casella è inattivo. Qui la supervisione/collegamento degli attori è uno strumento fondamentale non solo per monitorare lo stato dei servizi remoti, ma per gestire effettivamente il servizio, fare qualcosa per il problema se l'attore o il nodo non funziona. Come il riavvio degli attori sullo stesso nodo o su un altro nodo.

Come posso fare? Sto cercando un esempio o dei suggerimenti su come iniziare a distribuire la mia applicazione. Altri servizi nel nostro gruppo utilizzano i gateway Apache di fronte a più istanze di Tomcat, quindi l'evento di un server Tomcat che scende è trasparente per l'utente. Sto distribuendo il mio servizio al microkernel Akka e ho bisogno di raggiungere un livello simile di alta disponibilità su più di una scatola fisica.

Sto usando Akka 1.1.3.

risposta

2

La supervisione remota funziona solo con gli attori remoti gestiti dal client per la serie Akka 1.x.

Akka 2.0 attualmente in fase di sviluppo supporterà il clustering trasparente, la supervisione a livello di cluster e il monitoraggio del ciclo di vita a livello di cluster.

+2

Qual è la data di rilascio stimata per 2.0? – chunjef

+9

Al termine. –

1

Si potrebbe considerare di mettere un bilanciamento del carico HTTP di fronte alle istanze di Akka Microkernel che eseguono Mist, questo corrisponderebbe a ciò che il vostro gruppo fa con 'gateway Apache'.

Un altro approccio sarebbe quello di esporre gli attori a distanza su un certo numero di casi e poi usare di Akka LoadBalancer o Attore piscina a inviare messaggi in giro, see here

Il secondo approccio è un po 'di dolore, se si dispone di una piscina dinamica di macchine, perché il pool di dispositivi vuole essere specificato in modo programmatico. Akka 2.0 affronta questo problema con il supporto cluster che è impostato nel file akka.conf.

Per quanto riguarda la data di rilascio di 2.0, per quale valore 1.2 è stato rilasciato di recente su 2011-Sept-19.

Problemi correlati