rabbitmq 源码分析1启动脚本

来源:互联网 发布:淘宝伪造授权书 编辑:程序博客网 时间:2024/06/07 03:36

从启动命令脚本说起

scirpts/rabbitmq-server,执行下面的代码启动rabbitmq

RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \exec ${ERL_DIR}erl \    -pa ${RABBITMQ_EBIN_ROOT} \    ${RABBITMQ_START_RABBIT} \    ${RABBITMQ_NAME_TYPE} ${RABBITMQ_NODENAME} \    -boot "${SASL_BOOT_FILE}" \    ${RABBITMQ_CONFIG_ARG} \    +W w \    ${RABBITMQ_SERVER_ERL_ARGS} \    ${RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS} \    ${RABBITMQ_LISTEN_ARG} \    -sasl errlog_type error \    -sasl sasl_error_logger "$SASL_ERROR_LOGGER" \    -rabbit error_logger "$RABBIT_ERROR_LOGGER" \    -rabbit sasl_error_logger "$RABBIT_SASL_ERROR_LOGGER" \    -rabbit enabled_plugins_file "\"$RABBITMQ_ENABLED_PLUGINS_FILE\"" \    -rabbit plugins_dir "\"$RABBITMQ_PLUGINS_DIR\"" \    -rabbit plugins_expand_dir "\"$RABBITMQ_PLUGINS_EXPAND_DIR\"" \    -os_mon start_cpu_sup false \    -os_mon start_disksup false \    -os_mon start_memsup false \    -mnesia dir "\"${RABBITMQ_MNESIA_DIR}\"" \    ${RABBITMQ_SERVER_START_ARGS} \    ${RABBITMQ_DIST_ARG} \    "$@"

erlang 代码入口 ${RABBITMQ_START_RABBIT}

RABBITMQ_START_RABBIT=[ "x" = "x$RABBITMQ_ALLOW_INPUT" ] && RABBITMQ_START_RABBIT=" -noinput"[ "x" = "x$RABBITMQ_NODE_ONLY" ] && RABBITMQ_START_RABBIT="$RABBITMQ_START_RABBIT -s rabbit boot "
执行 rabbit:boot()启动erlang代码

具体rabbit:boot()如何处理,请往后继续看。




0 0
原创粉丝点击