Elixir: Supervision树的启动策略可视化
对于一个容错系统, Elixir(Erlang)的Supervision树提供了4种策略, 名称分别为: :one_for_one
, :one_for_all
, :rest_for_one
, :simple_one_for_one
.
下面是每一种策略的可视化效果
策略 :one_for_one
策略 :one_for_all
策略 :rest_for_one
策略 :simple_one_for_one
和:one_for_one
相同, 不同的是它需要实现 Supervision.Spec
, 并且在子进程规范里面只能有一种子进程. 也就是说这类 Supervisor 创建的子进程都是同一种类型的子进程.