服务器进程之间的依赖关系即服务器进程的启动顺序,由管理服务器进程来协调它们之间的启动。假如A依赖于B,那么B应该先启动,如果B尚未启动,那么A应该暂停启动流程,等待B启动。B在启动的时候会通知管理服务器,管理服务器再向A通知B进程已经启动,A收到消息后继续启动流程。
一般来说服务器进程之间的依赖关系(->)如下:
sessionserver -> recordserver
sceneserver -> recordserver, sessionserver, functionserver, mailserver
gatewayserver -> recordserver, sessionserver, sceneserver, functionserver, mailserver
functionserver -> recordserver, sessionserver, mailserver
mailserver -> sessionserver
voiceserver -> sessionserver
spaceserver -> sessionserver
imageserver -> sessionserver
所以启动脚本中启动顺序如下:
server/superserver
sleep 15
server/recordserver
sleep 8
server/sessionserver
sleep 8
server/mailserver
server/spaceserver
sleep 8
server/voiceserver
server/imageserver
sleep 8
server/functionserver
sleep 8
server/sceneserver
sleep 8
server/sceneserver
server/gatewayserver
sleep 5