Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (39 – предобработка мультипроцессов, часть 42)

предыдущая часть ««»» следующая часть

Многопоточный Web-сервер

Прежде чем перейти к описанию Web-cepвepa с предварительным формированием потоков, рассмотрим простую многопоточную версию этого сервера. Его суть состоит в том, что цикл accept () выполняется в основном потоке. Каждое входящее соединение, например, запрос страницы по оценке дома , передается новому “рабочему” потоку, который обслуживает соединение, а затем завершает работу. Поэтому для обслуживания каждого входящего соединения создается, а затем уничтожается один новый поток.

Проведем анализ программы.

Строки 1-7. Загрузка модулей. Кроме стандартных модулей, загружается модуль Thread, который предоставляет доступ к API-интерфейсу потоков Perl.

Строки 8-10. Создание констант, глобальных переменных и обработчиков прерывания. Выбирается путь, который будет применяться для доступа к файлу PID сервера, и устанавливаются обработчики сигналов, которые позволяют корректно завершить работу сервера после получения сигнала term или int.

Строки 11-17. Создание приемного сокета и автоматический перевод в фоновый режим. Создается приемный сокет, и сервер переводится в фоновый режим путем вызова процедуры init_server() модуля Daemon. Снова создается объект IO::Select для использования в главном цикле в целях предотвращения блокировки выполнения функции accept () при получении сигнала завершения.

Строки 18-24. Цикл accept (). Этот цикл аналогичен другим циклам, рассматриваемым здесь. Для каждого нового входящего соединения вызывается метод Thread->new () для запущенного нового потока выполнения. В новом потоке выполняется подпрограмма do_thread ().



2014-12-21 15:17:12

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония