BC/NW 2016 № 1 (28):5.2
ОСОБЕННОСТИ
РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ ПЕРЕДАЧИ ПОТОКА ДАННЫХ ОТ ИСТОЧНИКА
МНОЖЕСТВУ КЛИЕНТОВ
Суханов
М.Г., Гольцов А.Г
В
настоящее время программное обеспечение, осуществляющее передачу потоков данных
большому количеству клиентов, используется повсеместно. Подобное программное
обеспечение находит применение в области доставки контента, передачи видео,
аудио и прочих областях.
Одной
из наиболее значимых сфер применения являются системы видеонаблюдения. В таких
системах обычно есть программное обеспечение, которое передает видеопотоки с
камер видеонаблюдения операторам. Такое программное обеспечение может
поставляться разработчиками оборудования. Однако достаточно часто оно не
работает со сторонним оборудованием и имеет существенные ограничения. Такое программное
обеспечение может вообще отсутствовать, и операторы получают видеопотоки с камер
напрямую, что очень сильно нагружает камеры и приводит к проблемам. Такое
программное обеспечение может поставляться сторонними фирмами, которые
устраняют подобные недостатки. Сценарии получения потока с камер, показаны на
рис. 1.
Рис.
1 Сценарии получения потока с камер
Проектирование
и разработка подобного программного обеспечения представляет собой
нетривиальную задачу. При решении данной задачи необходимо обеспечить
правильную обработку данных внутри программы, распределить выполняемые задачи
между потоками исполнения и пр.
Одним
из наиболее интересных подходов к проектированию взаимодействия множества
потоков исполнения в подобном программном обеспечении является событийный
подход [1]. В этом исследовании рассматриваются и сравниваются различные
подходы к проектированию подобного программного обеспечения для выявления
наиболее подходящих подходов к конкретным задачам. В докладе раскрываются
подходы к проектированию подобного ПО, а также детали проводимого исследования.
Литература
1. Dorian P. Yeager. Object-Oriented
Programming Languages And Event-Driven
Programming,
2014.