[make-initrd] Update
Alexey Gladkov
legion at altlinux.ru
Fri Jun 14 11:12:45 MSK 2019
Привет!
Я тут переписал ueventd от слова совсем и как следствие изменились и
эвенты и их обработка.
ueventd теперь работает немного сложнее:
* Очередей может быть несколько. Их можно создавать и удалять динамически.
* Эвенты в каждой очереди обрабатываются последовательно в блокирующем
режиме т.е. пока текущий обработчик не завершится следующий вызван не
будет.
* Эвенты в разных очередях обрабатываются параллельно.
* Эвенты - это всегда файл с значениями вида 'NAME="VALUE"\n'.
Сервер обрабатывает эвенты используя обработчики. Они могут быть написаны
либо на shell, либо на lua (меня отговорили от schema). Для второго случая
действует правило: один файл => один обработчик. В lua-файле должна быть
функция main, которая будет вызвана для каждого эвента. Обработчики можно
добавлять/удалять динамически.
При вызове обработчика эвенты читаются и передаются через переменные
окружения.
Соответственно, поменялись все обработчики. В фиче network каждый
интерфейс обрабатывается параллельно.
На моих тестах я получил прирост к скорости, но буду благодарен за
дополнительное тестирование.
--
Rgrds, legion
More information about the Make-initrd
mailing list