[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