Welcome! Log In Create A New Profile

Advanced

Вопрос про модули nginx'а

Anton Dutov
November 03, 2009 09:34PM
Доброго времени суток.

Написал модуль для nginx'а
Исходники: http://hg.dutov.org/nginx-module-events/archive/tip.zip
(сам файл можно посмотреть так
http://hg.dutov.org/nginx-module-events/file/35dd8bf623e2/ngx_http_events_module.c)
Докуметация: http://docs.dutov.org/nginx_modules_events_ru.html

Кратко - модуль выполняет системные команды которые определены внутри
секции виртуального сервера запуске и останавливет при остановке
nginx.
задумывалось(и задумка работает) что модуль будет автоматически
подымать и опускать связанный с виртуал сервером контент.
Команды запуска выполняется сейчас в обработке парсера комманд а
комманды остановки при _exit master_
то есть
....
ngx_http_events_commands, /* module directives */
....
static ngx_command_t ngx_http_events_commands[] = {
{ ngx_string("on_start"),
NGX_HTTP_SRV_CONF|NGX_CONF_1MORE,
ngx_http_events_args,
....
ngx_http_events_args(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
{
....
system(cmd);

Вопросы:
1. меня терзают смутные сомнения - что если по какой либо причине не
пройдет парсинг конфигурации и nginx аварийно завершится - то мои
команды старта выполнятся - и контекст приложений будет висеть?

2. обрабатывает ли nginx _exit master_ у тех модулей которые были
зарегистрированы до ошибки конфига?

3. Обработчик __init master__ выполняется после обработки кофигурации?
если это так то логично ли перенести запуск команд старта туда или
есть ньюансы?

4. Если один из модулей во время __init master__ вернет ошибку - и
nginx аварийно завершится - получат ли модули __exit master__
Subject Author Posted

Вопрос про модули nginx'а

Anton Dutov November 03, 2009 09:34PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 110
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready