Опыт использования BigBlueButton для онлайн мастер-класса

Вчера впервые проверил работу сервера с BigBlueButton в боевых условиях.

Надо сначала пояснить, что это такое. BigBlueButton – открытый софт для проведения веб-конференций. Ориентирован в первую очередь на дистанционное обучение. Можно показывать презентации и документы, можно демонстрировать свой экран, участники могут общаться голосом и показывать изображения со своих веб-камер. Софт ставится на сервер под управлением Ubuntu Server, а участникам нужен только браузер с поддержкой Adobe Flash.

Софт можно свободно скачать с сайта проекта и установить на свой сервер. Что я и сделал: скачал и установил на виртуальную машину на арендованном сервере.

Мне было интересно, может ли он послужить заменой эккаунту на сервисе GoToWebinar, который использовался для проведения вебинаров Сообщества аналитиков и онлайновых тренингов.

Забегая вперёд, сразу скажу: да, может! А теперь подробности.


Конфигурация сервера

Железо: Core i5 3.8ГГц (4 ядра) / 8Гб RAM / 2×500Гб SATA / 100 Мбит

Виртуальная машина: 4 виртуальных ядра, 4Гб RAM, 100 Гб дискового пространства, Ubuntu Server 14.04.

Версия BigBlueButton: 0.9.0-beta, установлен по этой инструкции.

На сервере запущено ещё две виртуальных машины, но они не создают какой-либо серьёзной нагрузки на процессор и канал.


Боевое крещение сервер получил на мастер-классе Натальи Желновой «Как перейти от диаграммы BPMN к вариантам использования».

Предварительно записалось больше 150 человек. Было опасение, сервер не выдержит нагрузки, даже если придёт только половина из записавшихся. Поэтому за два дня до мастер-класса было проведено тестовое подключение. В нём участвовало чуть больше 10 человек. Каждый создал по несколько вкладок, подключенных к серверу, и нам удалось таким образом имитировать нагрузку от 70 до 90 клиентов в течение десяти-пятнадцати минут.

Сервер вёл себя прилично: исправно транслировал изображение и звук. Но не было окончательной уверенности в том, что он поведёт себя так же при подключении такого же количества реальных клиентов с разных IP-адресов.

На мастер-класс пришло около 50 человек. Звук транслировался без перебоев. Но с начала мастер-класса содержимое экрана Натальи передавалось с большими задержками: при смене изображения отрисовка длилась 10-15 секунд. Однако потом выяснилось, что проблема не в сервере, а в её ноутбуке. Одновременно с трансляцией на нём велась запись скринкаста и звука. Через сорок минут работы в таком режиме была съедена вся память, и трансляция экрана прервалась.

После остановки всех лишних программ и рестарта браузера трансляция возобновилась. Задержка отрисовки при этом практически пропала: экран показывался практически в реальном времени.

Со звуком не было серьёзных проблем в течение всего мастер-класса.

Полная запись мастер-класса опубликована здесь. Запись сформирована, обработана и опубликована софтом BigBlueButton автоматически, никакой дополнительной обработки не проводилось. Потеря трансляции экрана случилась на отметке 0:39:06. Трансляция возобновлена на отметке 1:14:35 (74:35).

Выводы

Cервер в такой конфигурации с успехом может заменить популярные сервисы проведения вебинаров вроде GoToWebinar и WebEx. При нынешнем курсе доллара можно найти предложения по аренде сервера в схожей конфигурации заметно дешевле эккаунта в этих сервисах.

При этом нужно учитывать, что у BigBlueButton нет своего интерфейса администрирования. Для управления и настройки разработаны плагины к популярным CMS и системам дистанционного обучения. В нашем случае использовался плагин для WordPress.

В мастер-классе не использовалась предварительно загруженная презентация, а только транслировался экран лектора в реальном времени. Использование только презентации позволило бы сократить трафик буквально в несколько раз.

Узким местом при проведении мастер-класса оказался не сервер, а компьютер ведущего. Трансляция была прервана в связи с крахом плагина Flash для браузера FireFox – с большой вероятностью из-за нехватки памяти. А задержки в трансляции экрана, скорее всего, происходили из-за высокой нагрузки на процессор. Поэтому при проведении вебинаров нужно позаботиться и о достаточной производительности рабочей станции у ведущего.

Ну и самое главное: у Сообщества аналитиков появился свой сервис для проведения онлайновых мероприятий. Чем мы не замедлим воспользоваться. Следите за анонсами!