yChat экспериментальный, XML конфигурируемый, быстро, очень портативный, мультиплатформенный веб-чат-сервер, написанный на С ++ и немного подмножество С, который поддерживает Secure Sockets SSL, используя OpenSSL, базы данных MySQL и совместим практически со всеми браузеры, которые поддерживают фреймы и JavaScript.
yChat работает на всех серверах, которые POSIX.4a совместимы и используют ++ компилятор GNU GCC C с 3,1 и с поддержкой Pthreads. Его разработали в рамках GNU General Public License.
yhttpd очень легкий веб-сервер на основе сокетов yChat и резьбы двигателей.
Вот некоторые ключевые особенности "yChat":
Его свободный и портативная
· YChat разрабатывается под общедоступной лицензии GNU и основана на GNU
инструменты (GCC, gmake), другие библиотеки с открытым исходным кодом вещи (например, libncurses и т.д.)
и должен работать на любом POSIX-совместимую операционную систему (например, все основаны Linux
системы, FreeBSD, NetBSD, OpenBSD и другие BSD-системы и на Unices как
IRIX, HP-UX, Solaris и т.д.).
Там нет необходимости в специальных чат-клиентов
· YChat является веб-основе, это означает, что клиенты могут подключаться только к чат-серверу
с обычного веб-браузера, такого как Microsoft Internet Explorer или любой Gecko-
Powerd двигателя браузеры, такие как Mozilla, Firefox и др Камино
Он имеет черты реального HTTP веб-сервер
· YChat полностью работает в одиночку и стоять не нужен еще один веб-сервер, чтобы построить
на как Apache и не должны быть запущены с помощью какого-либо CGI. создает yChat
собственный разъем на пользовательский порт (стандартный порт: 2000) и, кажется, полный
полнофункциональный HTTP веб-сервер для клиентов (веб-браузеров).
· Код база yChat может быть преобразован в базу кода yhttpd автоматически. yhttpd
является веб-сервер подмножество yChat которая проходит полностью самостоятельные и обеспечивает
нормальные сайты в сети. Он также поддерживает Common Gateway Interface (CGI)
сценариев.
Его быстрый и безопасный
· YChat написан на С ++, которая быстрее, чем любой основе Java Chat-сервер или любой
сервер, написанный на языке сценариев, как PHP, Python или Perl. Как
внутренние структуры данных хеш-карты используются для garuantee поиске уверен
Значения в O (1) количество времени. Если хэш карты получает полный, он будет подогреты.
В настоящее время, yChat была измерена обеспечения более 1000 хитов / запросов в секунду
на коробке сервера на базе FreeBSD, используя менее чем 2% загрузки процессора
на XP 1900+ Athlon. Производительность, кажется, ограничивается только вашей пропускной.
Кроме того, каждый пользователь получает свой собственный идентификатор сессии (случайных строка) стандартной длины
50 символов для аутентификации друг вошедшего в систему пользователя. Длина идентификатора сессии
может быть пересмотрена, а также. Кроме того, идентификатор сессии будет получить MD5 хэш-необязательно
так вот, даже труднее обратный инжиниринг идентификаторы сессий других пользователей.
Кроме того, yChat поддерживает протокол передачи гипертекста безопасный (HTTPS) соединения
используя библиотеку OpenSSL в. Затем, все сообщения чата будет зашифрована в
безопасным способом. HTTPS является обязательным для HTTP (необеспеченные соединения).
Его шаблон HTML на основе и легко настроить с помощью XML на основе конфигурации
· Все HTML-сайты предопределены как файлы HTML-шаблонов и может быть легко изменен
для использования с заказной веб-дизайна. Кроме того, много yChat предпочтений может быть
устанавливается в основной конфигурационный файл (ychat.conf). ychat.conf полностью написан
в XML 1.0, что делает его проще в использовании опции конфигурации в программах
3-й человек, который, возможно, захотите написать несколько полезные инструменты для yChat.
yChat кэширует все HTML и веб-изображения, чтобы повысить общую производительность. Если необходимо,
Кэш может быть сброшен в кэширования новые версии файлов шаблонов.
На основе его шаблона язык
· Администратор может легко создать новый язык, на котором все системные сообщения
появляются в Чат-пользователь. Предопределенные языки английский, но другие могут быть
легко добавлены. Язык может быть изменен в файле конфигурации XML на основе.
Базы данных на основе MySQL
· Зарегистрированные пользователи хранятся в базе данных MySQL в. C ++ программисты могут свободно
заменить класс-оболочку базы данных (data.h) с другой подпрограммах баз данных
использовать другие базы данных, такие как PostgreSQL, SQLite или в базе данных на основе текста и т.д.
По желанию, вы можете отключить поддержку базы данных в предварительной компиляции вариантов.
Он имеет интерфейс администрирования
· YChat включает в себя интерфейс администрирования Ncurses, которая отслеживает некоторые
Интересная статистика и системные сообщения и позволяет выполнять некоторые
административные задачи. Кроме того, вы можете переключиться на CLI (Command Line
Интерфейс) режим интерфейса управления с целью быть снабжен
более доступные функции (такие как отслеживание текущего использования системы и т.д.).
Если вы не любите Ncurses и / или CLI вы можете отключить обе опции в пре-
опции компиляции.
Он имеет возможности регистрации
· Менеджер регистрации отслеживает всех системных сообщений yChat (таких как пользователи
которым войдите и выйдет, модули, которые загружаются, запросы MySQL и т.д.). Также,
Apache-стиль в сочетании формат файла журнала создается yChat (вы можете разобрать этот
лог с любой Apache лог-файлов парсер как AWStats и т.д.). И последнее, но не
мере, все общественные сообщения всех свободных номеров будут записываться на диск, как
Что ж . Чтобы повысить производительность, можно определить протоколирования паровоз (стандартно
Новые журналы будут записаны на диск после каждого 20 линий). Если вы хотите, чтобы войти
все сразу, вы можете сбросить эту опцию 1 в ychat.conf.
Его модульная через собственную команду и динамического HTML двигателя
· Все команды чата реализуются через динамически загружаемые файлы модуля, который может
перекомпилировать и заново без перезапуска весь сервер yChat. Также
HTML-сайты с определенными задачами может быть скомпилирован как модуль, как
моды / HTML / yc_register.so, моды / HTML / yc_options.so и модов / HTML / yc_colors.so
и т.д., так что вы также можете запрограммировать динамические веб-сайты yChat в C ++.
Его поддерживает многопоточность (POSIX Threads)
· Существует только один главный процесс, который порождает несколько потоков, каждый для своих собственных
задача уникальная. Например, один поток используется для обработки менеджер разъем, который
ждет входящих запросов TCP / IP, еще расписания нить таймер системы
что доказывает, если клиенты все еще активны или освобождает память не требуется в некоторых
временные интервалы (см также "сборщик мусора"). Кроме того, каждый Чат-пользователь получает это собственный
нить. Там нет необходимости потерь памяти, создавая для каждой задачи нового
обработать. Все Система-Темы управляются пула потоков, чтобы избежать потери процессора
создание каждый раз новую тему счет повторного использования объектов нить, которая его сделали
рабочих мест уже и были readded в очереди пула потоков.
стандартные размеры очереди и общего размера пула может быть установлен в ychat.conf.
Его с помощью смарт-сбор мусора двигатель
· Все пользователи и номера, которые не должны храниться в основной памяти (так как
Пользователь вышел из системы или в комнате была разрушена, потому что она была пуста) будет
не могут быть удалены немедленно, но быть размещены около 10 минут в yChat
уборщик мусора. Каждый раз, когда новый номер созданы системы проверяет
мусор для повторного использования неактивного объект номеров. Если определенный пользователь хочет войти, то
Система проверяет, если он уже присутствует в сборщиком мусора. Если да, он будет
быть возобновлена, не тратя дорогих запросов к базе данных для извлечения пользователя
опции. Это повышает общую производительность на тяжело нагруженных серверов yChat, если
много пользователей и номеров объектов создаются и уничтожаются часто.
Что нового в 0.8.2 версии:
· Исправлены некоторые опечатки
· Добавлена - версиями - пункт в файл README
· Удалены исходный модуль файл yc_template команды
· Скрипты / config.pl теперь также принимает д и бросить в команде
· Незначительные исправления ошибок в скриптах / config.pl
· Некоторые улучшения в SRC / Настройка
· Изменены некоторые значения по умолчанию в SRC / glob.h
Что нового в 0.7.9.5 версии:
Этот выпуск добавляет .pm обнаружения в сценарии / stats.pl.
· Это изменяет README (новый CVS PServer адрес).
· Все .cpp, .h и .tmpl файлы теперь есть новый заголовок исходного помощью Документов / header.txt, как скелет заголовка.
· Были сделаны некоторые мелкие исправления.
Детали программы:
Версия: 0.7.9.5
Дата загрузки: 3 Jun 15
Тип распространения: Бесплатная
Популярность: 197
Комментарии не найдены