Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Выбор программного обеспечения






 

В качестве системного ПО используется операционная система CentOS 5 – дистрибутив GNU/Linux, Срок поддержки каждой версии CentOS составляет 10 лет (с помощью выпуска обновлений безопасности). Новая версия CentOS выходит раз в 2 года и каждая версия регулярно обновляется (каждые 6 месяцев) для поддержки новых аппаратных средств. В результате это приводит к безопасной, легко обслуживаемой, надежной, предсказуемой и масштабируемой Linux среде.

Red Hat Enterprise Linux состоит из свободного ПО с открытым кодом, но доступен в виде дисков с бинарными пакетами только для платных подписчиков. Как требуется в лицензии GPL и других, Red Hat предоставляет все исходные коды. Разработчики CentOS используют данный исходный код для создания окончательного продукта, очень близкого к Red Hat Enterprise Linux и доступного для скачивания. Существуют и другие клоны Red Hat Enterprise Linux, созданные на основе этого кода.

CentOS использует программу yum для скачивания и установки обновлений из репозитория CentOS Mirror Network, тогда как Red Hat Enterprise Linux получают обновления с серверов Red Hat Network. CentOS до версии 5.0 для обновлений использовал также программу up2date.

Типовая платформа виртуального офиса ЗАО «Теледисконт» развертывается на двух серверах. Выбор двухсерверной реализации обусловлен необходимостью обеспечить оптимальные условия исполнения приложений, выполняющих принципиально разные задачи, и имеющих при этом значительные потребности в аппаратных ресурсах.

Один из серверов выполняет функции сервера БД и WWW сервера, второй – функции IP ATC и интерфейса к сервису синтеза речи. (см. схему).

В качестве сервера баз данных была выбрана хорошо зарекомендовавшая себя и широко используемая в WWW среде СУБД MySQL 5, в качестве WWW сервера использован Apache 2.2.

СУБД MySQL. SQL - это сокращение от Structured Query Language (структурированный язык запросов). SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными). MySQL соответствует спецификации ANSI 92 SQL.

MySQL разработал Михаэль Видениус. MySQL является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL) [6].

Основные преимущества пакета MySQL следующие.

· Многопоточность. Поддержка нескольких одновременных запросов.

· Оптимизация связей с присоединением многих данных за один проход.

· Записи фиксированной и переменной длины.

· ODBC драйвер в комплекте с исходником

· Гибкая система привилегий и паролей.

· До 16 ключей в таблице. Каждый ключ может иметь до 15 полей.

· Поддержка ключевых полей и специальных полей в операторе CREATE.

· Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени.

· Интерфейс с языками C и perl.

· Основанная на потоках, быстрая система памяти.

· Утилита проверки и ремонта таблицы (isamchk).

· Все данные хранятся в формате ISO8859_1.

· Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках.

· Псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице.

· Все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей.

· Легкость управления таблицей, включая добавление и удаление ключей и полей.

Наиболее простой способ работы с MySQL сводится к использованию программы MySQL. Это клиентская часть СУБД MySQL. Можно выполнять команды SQL непосредственно из командной строки системы unix или из интерактивного режима MySQL.

СУБД MySQL имеет библиотеку C API. Ее можно использовать для запросов к базе данных, вставки данных, создания таблиц и т.п. C API поддерживает все функции MySQL. Язык perl поддерживается сразу двумя способами:

· Портирован интерфейс с perl из mini-SQL, разработанный Андреасом Коенигом.

· Есть модуль perl DBD.

Также доступен 32-битный ODBC драйвер для MySQL. Он позволяет запрашивать и получать данные из других источников с поддержкой ODBC.

Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM WebSphere. На данный момент разработка ведётся в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. На текущий момент последняя версия ветки 2.4 - 2.4.3 (21 августа 2012), для первой версии это 1.3.42.

Даже не смотря на то, что Apache является свободно распространяемым сервером, все-таки главной причиной успеха Apache является его широкие функциональные возможности.

Сервер Apache поддерживает одновременную работу и, следовательно, может обслуживать большое количество клиентов. Количество клиентов, которое может одновременно обслуживаться, ограничивается лишь используемыми аппаратными средствами и операционной системой. Сервер может быть легко сконфигурирован с помощью редактирования текстовых файлов или, используя один из многочисленных инструментов с графическим интерфейсом.

 

Рисунок 17 - HTTP сервер Apache в своем окружении

 

В соответствии со своей модульной архитектурой, множество возможностей, которые необходимы для работы некоторых приложений, могут быть реализованы в виде дополнительных модулей Apache. Для поддержки такой возможности для разработчиков модулей реализован хорошо документированный API. Модульность и существование множества бесплатных модулей позволяет легко создать мощный веб-сервер без изменения его исходного кода. Используя на сервере множество доступных скриптовых языков, можно легко создать любое веб-приложение. Для использования любого скриптового языка необходим только соответствующий подключаемый модуль. Также обе версии Apache полностью совместимы с HTTP 1.1. Для большинства популярных платформ сделана простая процедура установки сервера. Диаграмма на рисунке 17 показывает HTTP сервер Apache в своем окружении. По сравнению с простым HTTP сервером, тут мы видим администратора, который работает с файлами конфигурации, а также с серверными расширениями, используя CGI или серверный API. Эти расширения могут получить любой ресурс на машине сервера или на удаленной машине через сеть.

Функции IP АТС выполняет ПО Asterisk 1.8, интерфейс к сервису синтеза речи реализуется библиотекой UniMRCP.

Asterisk – свободное решение компьютерной телефонии (в том числе, VoIP) с открытым исходным кодом от компании Digium, первоначально разработанное Марком Спенсером. Приложение работает на операционных системах Linux, FreeBSD, OpenBSD и Solaris. Asterisk в комплексе с необходимым оборудованием обладает всеми возможностями классической АТС, поддерживает множество VoIP-протоколов и предоставляет богатые функции управления звонками, среди них:

· Голосовая почта.

· Конференции.

· Интерактивное голосовое меню (IVR).

· Центр обработки вызовов (постановка звонков в очередь и распределение их по агентам используя различные алгоритмы).

· Запись (Call Detail Record).

Для создания дополнительной функциональности можно воспользоваться собственным языком Asterisk для написания плана нумерации, написав модуль на языке Си, либо воспользовавшись AGI — гибким и универсальным интерфейсом для интеграции с внешними системами обработки данных. Модули, выполняющиеся через AGI, могут быть написаны на любом языке программирования.

Asterisk распространяется на условиях двойной лицензии, благодаря которой одновременно с основным кодом, распространяемым по открытой лицензии GNU GPL, возможно создание закрытых модулей, содержащих лицензируемый код: например, модуль для поддержки кодека G.729.

Благодаря свободной лицензии Asterisk активно развивается и поддерживается тысячами людей со всей планеты. В течение последних двух лет[ когда? ] рынок Asterisk -приложений активно развивается в США.

Для того чтобы уйти от проблем, создаваемых двойным лицензированием, был создан форк проекта, в настоящее время называющийся CallWeaver.

Различные функциональные расширения для Asterisk, необходимые для реализации на базе него сервисов виртуального офиса, таких как «Корпоративный ПИН КОД», «Звонок с сайта», «Голосовое меню», «Автоматический массовый обзвон» и пр., написаны на языках Perl и PHP. Взаимодействие между внешними скриптами и Asterisk происходит посредством интерфейса AGI (Asterisk Gateway Interface), который специально предназначен для этих целей. Выбор языков написания скриптов расширения обусловлен механизмом взаимодействия между сервером Asterisk и сервером БД-WWW.

Поскольку такое взаимодействие осуществляется приемом – посылкой HTTP запросов, было необходимо выбрать средства реализации внешних расширений, предназначенных для разработки веб-приложений. Perl и, в особенности PHP, этим требованиям удовлетворяют.

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.