Victor Wagner <vitus@xxxxxx> wrote:
> > Хех. А Вы, типа, хотите, чтобы новый код подхватывал старые конекты? И
> > досылал данные с того байта, где старый код остановили? Как Вы это себе
> > представляете??? Откуда он эту информацию возьмет, хотелось бы знать???
> >
> На самом деле требуетс я не это. Требуется, чтобы при замене кода
> основного
> httpd все дети, которые отрабатывают запросы, не убивались, а продолжали
> жить, нсмотря на то, что код потомка поменялся. Но есть, по какому-то
> новому сигналу (не TERM, TERM уже занят) apache должен делать exec(
> argv[0]). Пр этом, естественно возникнут всякие проблемы. но. по-моему
> в таком контексте они решаются без копанья в ядре OS.
Проблема тут одна - пока все процессы не закроют сокет, порт 80 заново
не забайндить. Можно лишь использовать старый сокет, следовательно, надо
не закрывать его до exec'a, а после exec'а подхватить и использовать
дальше. Можно ли это реализовать конкретно для Апача - надо разбираться.
Там еще shmem есть, ее тоже надо делить... :)
--
Eugene Berdnikov
=============================================================================
= Apache-Talk@xxxxxxxxxxxxx mailing list =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =
"Russian Apache" includes software developed
by the Apache Group for use in the Apache HTTP server project
(http://www.apache.org/) See
Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C)
1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.