使用supervisor为每个节点启动elixir子进程

使用supervisor为每个节点启动elixir子进程,elixir,otp,erlang-supervisor,Elixir,Otp,Erlang Supervisor,我试图输入节点的数量,并为每个节点启动genserver进程;即每个GenServer.start\u link(n)(其中n是节点号)为每个进程启动一个单独的进程(PID) pids=Enum.map(1..totalnodes,fn-> {:ok,unit}=GenSerModule.start_link(n) 单元 (完) PID从此行返回(,等等) 现在我想在一个主管下启动节点。也就是说,我必须通过每个节点的Supervisor的init函数启动genserver进程,并获得PID。类

我试图输入节点的数量,并为每个节点启动genserver进程;即每个
GenServer.start\u link(n)
(其中
n
是节点号)为每个进程启动一个单独的进程(PID)

pids=Enum.map(1..totalnodes,fn->
{:ok,unit}=GenSerModule.start_link(n)
单元
(完)
PID从此行返回(
等等)

现在我想在一个主管下启动节点。也就是说,我必须通过每个节点的Supervisor的init函数启动genserver进程,并获得PID。类似这样的事情:(我知道这是错误的)

pids=Enum.map(1..totalNodes,fn->
{:ok,unit}=worker(genserver模块,n)
单元
(完)
init(nodeMap,[策略::一对一])
我想在这个函数中获得已启动子进程的PID,在这里我通过主管启动子进程。我被困在这里了

我该怎么做呢?

,除此之外,它已被弃用,不做任何操作,它

当需要在监督下动态启动工人时,他们通常使用

但是,如果节点指的是远程节点,则无法监控远程进程,因为(除了许多其他问题外)它违反了容错性(VM无法确保另一个VM始终处于运行状态)