Предварительная организация мультипроцессной и многопоточной обработки
Ранее был описан ряд методов одновременной обработки нескольких входящих соединений в серверном приложении.
1) Последовательный метод. Сервер обрабатывает соединения по одному. Такой метод, как правило, применяется в серверах UDP, поскольку каждая итерация является непродолжительной, однако он неприемлем для серверов с установлением логического соединения.
2) Прием и ветвление. Сервер принимает соединения и выполняет ветвление с созданием нового дочернего процесса для обслуживания каждого соединения. Это — наиболее распространенный тип сервера в системах UNIX; к этому типу относятся также серверы, запускаемые супердемоном inetd.
3) Прием и формирование потока. Сервер принимает соединения и создает новые потоки выполнения для обслуживания каждого из них. Этот метод может обеспечивать более высокую производительность, нежели метод приема и ветвления, поскольку системные издержки запуска нового потока обычно ниже по сравнению с запуском нового процесса.
4) Мультиплексный метод. В сервере применяется функция select () и реализована собственная логика сопровождения состояния сеансов для чередования обработки многочисленных соединений. Этот метод обеспечивает самую высокую производительность, поскольку с ним не связаны издержки запуска процесса, однако его оборотной стороной является повышенная сложность кода, особенно если применяется неблокирующий ввод-вывод.
В большинстве случаев требования, предъявленные к проекту, могут быть удовлетворены с использованием одной из этих четырех архитектур. Однако иногда, особенно если сервер должен выдерживать тяжелую нагрузку, приходится применять более сложную конструкцию программы. Здесь будут описаны еще две серверные архитектуры с предварительным ветвлением и предварительным формированием потоков.
2014-11-27 15:21:50
это интересно Уже давно не секрет что лучшим упаковочным средством является пленка стрейч для ручной упаковки . С ее помощью можно легко и эффективно защитить товар от внешних воздействий на складе или при транспортировке. Кроме всего прочего пленка обладает всеми необходимыми достоинствами эксплуатации: надежность, прочность, прозрачность и др.