2011-01-31 17 views

Respuesta

9

Un poco más bajo que ese grupo es el módulo slave(3). Pool se basa en la funcionalidad en esclavo.

Utilice slave:start para iniciar un nuevo esclavo.

Probablemente también deba especificar -rsh ssh en la línea de comandos.

Así que use el grupo si necesita el tipo de funcionalidad que ofrece, si necesita algo diferente, puede construirlo usted mismo fuera del esclavo.

11

Hay una instalación pool(3):

piscina se puede utilizar para ejecutar un conjunto de nodos Erlang como un conjunto de procesadores computacionales. Es organizada como un maestro y un conjunto de nodos esclavos ..

pool:start/1,2 comienza una nueva piscina. El archivo .hosts.erlang se lee en para buscar nombres de host donde se pueden iniciar los nodos de agrupación . Los nodos esclavos son comenzados con slave:start/2,3, pasando por Name y, si se proporcionan, Args. Name se utiliza como la primera parte de los nombres de nodo, Args se usa para especificar argumentos de línea de comandos.

Con la piscina obtienes la instalación de distribución de carga de forma gratuita.

nodo maestro puede iniciar de esta manera:

erl -sname poolmaster -rsh ssh 

Clave -rsh aquí especifica una alternativa a rsh para iniciar un nodo esclavo en un host remoto. Usamos SSH aquí. Asegúrate de que tu caja tenga teclas SSH activas, y puedes autenticarte en los hosts remotos usando estas teclas.

Si no hay hosts en el archivo .hosts.erlang, no se inician nodos esclavos, y puede usar slave:start/2,3 para iniciar nodos esclavos que pasan argumentos manualmente si es necesario.

Se podría, por ejemplo, iniciar un nodo remoto:

Arg = "-mnesia_dir " ++ M, 
slave:start(H, Name, Arg). 

Asegúrese epmd(1) está en funcionamiento en las cajas remotas con el fin de iniciar los nodos de Erlang.

Espero que ayude.

Cuestiones relacionadas