[erlang-questions] Alternative supervision approaches

Jay Nelson <>
Thu Jun 26 19:16:17 CEST 2014


I believe the supervisor and link constructs pre-date monitoring.
Would supervision have been implemented differently in OTP if
monitors were available (nudge, Lenart, Francesco)?

Does anyone start supervisors without children and then use an
external FSM to control starting of children as their approach to
managing when services are available?

One technique for allowing a service to fail and restart later when
conditions have changed is to make a restart strategy for the
supervisor of workers, but make its supervisor use a transient
strategy. The workers will restart a few times, then the parent
fails but does not restart. Monitoring plus some strategies for
altering the setup environment can be used before reinstantiating
the children on the transient supervisor.

Anyone else use non-standard supervision approaches they
would like to share?

jay




More information about the erlang-questions mailing list