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

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

Реклама

Perl для IP-Телефонии (35 – Мультиплексные приложения, часть 11)

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

Мультиплексный психотерапевтический сервер.

В настоящем разделе описана версия сервера Chatbot::Eliza, в которой приме­няется мультиплексирование. Она может служить иллюстрацией того, как работает типичный мультиплексный сервер. Основной принцип действия этого сервера соот­ветствует следующей общей схеме. 1) Создание приемного сокета.

 2) Создание набора дескрипторов IO::Select и добавление приемного сокета к списку сокетов, контролируемых для определения готовности для чтения.

3) Переход к выполнению цикла select ().

4) После возврата из цикла select () проверка списка сокетов, готовых для чтения. Если в их число входит приёмный сокет, выполняется вызов функций accept ( ) и добавление результирующего подключенного сокета к набору дескрипторов IO::Select.

5) Если для чтения готовы другие сокеты, осуществляется выполнение в них операции ввода-вывода.

6) Удаление сокетов клиентских соединений из набора дескрипторов IO::Select по мере завершения их выполнения.

В данной версии сервера Eliza показано, как эта схема реализуется на практике.

Главная программа сервера.

Новый сервер eliza_select.pl состоит из главной части и модуля Chatbot::Eliza::Polite, который образует подкласс класса Chatbot::Eliza.

Такое значительное изменение проекта по сравнению с предыдущими версиями сервера связано с необходимостью разбить на две части метод command_interfасе () объекта Chatbot::Eliza. Дело в том, что метод command_interface ( ) имеет собственный цикл ввода-вывода, который не освобождает соединение до тех пор, пока не завершится диалог с клиентом. Этого нельзя позволить, поскольку такая организация работы приводит к блокировке других клиентов.



2014-07-16 14:13:21

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


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


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


РЕКОМЕНДУЕМ

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