2011-08-26 16 views
9

Soy bastante nuevo en Akka y nuevo en la programación distribuida en general. Utilizando el componente Akka's Mist, he creado actores supervisados ​​para manejar las solicitudes HTTP de forma asincrónica. Actualmente, todo se ejecuta en una máquina física con actores locales. Lo que no entiendo es cómo construir un sistema realmente tolerante a fallas con más de una caja. Como se indica en los documentos de Akka:Distributed Acctors en Akka

Además, usted (generalmente) necesita saber si una de las cajas está inactiva o si el servicio con el que está hablando está desactivado. Aquí, la supervisión/vinculación del actor es una herramienta fundamental no solo para monitorear la salud de los servicios remotos, sino para administrar el servicio, hacer algo sobre el problema si el actor o nodo está inactivo. Como reiniciar actores en el mismo nodo o en otro nodo.

¿Cómo puedo hacer esto? Estoy buscando un ejemplo o consejos sobre cómo comenzar a distribuir mi aplicación. Otros servicios de nuestro grupo usan puertas de enlace Apache frente a múltiples instancias de Tomcat, por lo que el evento de un servidor Tomcat que se apaga es transparente para el usuario. Estoy implementando mi servicio en el microkernel Akka y necesito alcanzar un nivel similar de alta disponibilidad en más de una caja física.

Estoy usando Akka 1.1.3.

Respuesta

2

La supervisión remota funciona solo con actores remotos administrados por el cliente para la serie Akka 1.x.

Akka 2.0 que se encuentra actualmente en desarrollo admitirá la agrupación en clúster transparente, la supervisión de todo el clúster y la supervisión del ciclo de vida de todo el clúster.

+2

¿Cuál es la fecha de lanzamiento estimada para 2.0? – chunjef

+9

Cuando haya terminado. –

1

Puede considerar colocar un equilibrador de carga HTTP delante de las instancias de Akka Microkernel que ejecutan Mist, esto coincidiría con lo que hace su grupo con 'Apache gateways'.

Otro enfoque sería exponer los agentes remotos en una serie de casos y luego usar de Akka LoadBalancer o actor piscina para enviar mensajes de vuelta, see here

El segundo enfoque es un poco de dolor si usted tiene una piscina dinámica de máquinas, porque el grupo de dispositivos quiere ser especificado programáticamente. Akka 2.0 aborda esto con soporte de clúster que se configura en el archivo akka.conf.

En cuanto a la fecha de lanzamiento de 2.0, por lo que su valor 1.2 fue lanzado recientemente en 2011-Sept-19.