From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Andrey Orlov To: ALT Devel discussion list Subject: Re: [devel] =?koi8-r?b?2sHQ1dPL?= =?koi8-r?b?INPF0tfJ08/X?= Date: Fri, 19 Sep 2003 19:07:31 +0400 User-Agent: KMail/1.5 References: <20030919112708.B75629@elefant.dgtu.donetsk.ua> In-Reply-To: <20030919112708.B75629@elefant.dgtu.donetsk.ua> MIME-Version: 1.0 Content-Disposition: inline Message-Id: <200309191835.24082.cray@neural.ru> Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 8bit X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.1.2 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Sep 2003 15:04:36 -0000 Archived-At: List-Archive: List-Post: On Friday 19 September 2003 12:30, Denis Ovsienko wrote: > Вкратце суть сводится к предложению запускать сервисы параллельно, > соблюдая зависимости с помощью make. Кто может сказать, можем ли мы себе По-моему скорость загрузки сводится не к порядку запуска, а к тому, что есть узкое место - быстродействие процессора. Так что хоть последовательно, хоть паралельно, хоть по диагонали - никакой разницы. А в связи с конкуренцией за ресурсы и затратами на диспетчеризацию, паралельный запуск может __дольше__ проработать (видел я ту винду .... быстрее грузится, аха. Только залогинились (быстро) и сидим ждем, пока система все сервисы стартанет и начнет на кнопки откликаться), и в этом смысле большую помощь окажет отказ от запуска ненужных сервисов (коих, на рабочих станциях, по моим наблюдениям, 70%) и покупка чайника, чбы включив машину не сразу кнопки топтать, а вначале чайку заварить. А что до использования make..... Мндя. Чгря мне вообще идея inittab нравится больше, чем идея SystemV скриптов. Раз уж такие вопросы начинают назревать, то нужно закинуть SystemV скрипты / inittab на свалку истории и написать специальный утиль для старта и мониторинга сервисов. Чбы решал не только проблему порядка запуска но и: 1. Старт / Стоп по зависимостям; 2. Отслеживание работоспособности (рестарт при необохдимости или поднятие тревоги); 3. Старт процесса с правами полльзователя; 4. Возможно, любимую нами чрутизацию; 5. Ограничение ресурсов, предоставляемых процессу; 6. "Демонизация" процесса (с переназначение stdout / stderr на syslog, отслеживанием пида для стоп/старт и т.д.т.п). 7. Поддержка единой конфигурации __старта__ процессов (не самих процессов); И еще очень многое другое. Я отчасти со стороны, отчасти в той степени в которой это задевает мои сервисы (Zope, rPAS, omniNames, etc) наблюдаю за переписыванием initscripts и их поддержкой, и хотя с одной стороны я горжусь тем, что среди AltLinuxTeam есть люди настолько хорошо знающие шелл, с другой - вся эта затея кажется мне обреченной и ненужной: есть задача для сложного и нужного сервиса. Все необходимые алгоритмы, типа топологической сортировки, в литературе описаны, изобретать особо ничего не надо. Ожидаемые трудозатраты (см.ниже)- один человеко-месяц. Садись, пиши, внедряй. А что до всех этих игр с make. Ну да. Забавно. А еще на make можно пирожки печь. В одном моем проекте была сходная задача - импорт продуктов, с зависимостями. Написание с нуля заняло пять рабочих дней, вместе с отладкой. По функциональным точкам, там было примерно половина от того, что нужно для задачи старта сервисов. Учитывая многочисленные согласования с унаследованной средой, для задачи старта сервисов потребуется, наверно, месяц. И мое мнение - нужно сразу брать курс в этом направлении, а не заниматься гробокопательством и гальванизацией трупов в лице initscripts & inittab. Сразу замечу, что всяческие проблемы с унаследованным софтом, при таком подходе можно решить достаточно легко и непринужденно, особенно если делать это на уровне дистрибутива. И сбсно мне кажется, что даже руки которые сделают это найдутся сразу, как только такое решение будет принято. -- WthBstRgrds -- Андрей Орлов -- --- http: www.neural.ru, mail: cray@neural.ru, jid: cray@altlinux.org --- ----------------------------------------