Process discovery in a large OTP system

Tim Bates <>
Tue Sep 6 15:27:52 CEST 2005


Hi folks,
I'm having some difficulty with the start-up procedure of my OTP-based 
system. Specifically, some applications start up faster than others and 
so Application A reaches its configuration phase faster than Application 
B and starts making requests of processes in Application B before 
they're initialised.

I know one way to address this is to use included applications and 
start_phases. However I don't want to include the applications in each 
other, I'd like them to stand alone so I can shift them around and things.

Someone on IRC suggested having each application's start() function not 
return until all the processes in that application are initialised, but 
I can't see an elegant way to do this.

I've also heard someone say on this mailing list that they seldom use 
registered processes, which smacks of global state, and instead manage 
to pass around pids to only the processes that need them. Again, I don't 
know of an elegant structure that would allow me to do this for all the 
disparate parts of my system.

Can someone offer some guidance in this matter?

Thanks,
Tim.

-- 
Tim Bates




More information about the erlang-questions mailing list