Re: "Правильные" демоны - не демоны?
On Fri, Aug 28, 2009 at 12:02:54AM +0400, Alexey Pechnikov wrote:
> > Чтобы их быстро и дешево форкать...
>
> А смысл? Как пример, реверс-прокси pound с его форканьем на несколько порядков по
> производительности уступает единственному экземпляру haproxy. Ну, про апач
> даже не будем вспоминать, в такое лучше не вляпываться. То есть технически да,
> форкать демона - дешевле, но нужно ли это делать, еще вопрос, ответ на который
> всегда или почти всегда будет отрицательный.
Конечно, можно написать сервис на нитях. Только сделать это надо так, чтобы этот
несчастный экземпляр не падал и не тек. Что, говорят, изредка кому-то удается.
> > > Далее, зачем нужна встроенная работа с syslog, когда можно передавать в лог
> > > stdout & stderr через пайп (связку программы с логирующей утилитой могут
> > > обеспечить runit, daemontools, etc., если не хочется вручную перенапрявлять
> > > вывод).
> >
> > Куда именно перенаправить? syslog умеет очень быстро фильтровать и сортировать
> > сообщения, отправляя их куда надо и как надо. Не обязательно в файл.
>
> Вот только чтобы сообщения передать в сислог, нужно код программы переделывать,
> заменяя вывод в stdout/stderr на работу с сислогом. Кроме того, для того, чтобы вывод
> пользовательской программы направить в отдельный файл, надо отредактировать конфиг
> сислога и перезапустить его - и все это с правами рута. А потом еще нужно настроить
> ротацию этого лога, отредактировав еще один конфиг... На винду все больше смахивает,
> а не на юникс с цепочками утилит и пайпами.
Система из цепочки пайпов наплодит сотню grep и cat, после чего захлебнется на буферизации
и блокировках. Когда сто процессов будут в один файл логи складывать. Я уж не говорю про то,
что для вывода сообщений на произвольный терминал все-равно нужны рутовые (или около того)
права.
Reply to: