BC/NW 2016 № 1 (28):5.2

ОСОБЕННОСТИ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ ПЕРЕДАЧИ ПОТОКА ДАННЫХ ОТ ИСТОЧНИКА МНОЖЕСТВУ КЛИЕНТОВ

Суханов М.Г., Гольцов А.Г

В настоящее время программное обеспечение, осуществляющее передачу потоков данных большому количеству клиентов, используется повсеместно. Подобное программное обеспечение находит применение в области доставки контента, передачи видео, аудио и прочих областях.

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

Рис. 1 Сценарии получения потока с камер

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

Одним из наиболее интересных подходов к проектированию взаимодействия множества потоков исполнения в подобном программном обеспечении является событийный подход [1]. В этом исследовании рассматриваются и сравниваются различные подходы к проектированию подобного программного обеспечения для выявления наиболее подходящих подходов к конкретным задачам. В докладе раскрываются подходы к проектированию подобного ПО, а также детали проводимого исследования.

 

Литература

1. Dorian P. Yeager. Object-Oriented Programming Languages And Event-Driven

Programming, 2014.