Собственная система облачного видеонаблюдения.
    
    
    Зачем мы это сделали.
    При монтаже и обслуживании систем видеонаблюдения на территории многоквартирных жилых домов мы пришли к тому, что традиционные системы, которые работают локально,
    с точки зрения работы на объектах ЖКХ, обладают рядом недостатков
    Чаще всего в пределах жилого дома нет человека, который постоянно контролирует работу камер. Охранника могут себе позволить далеко не все жилые дома.
                                     В этом случае, о поломке камеры жильцы обычно узнают когда уже что-то произошло и нужно получить записи.
    Для жилого дома, где доступ к видео с камер хотело бы получить большое количество человек, при работе традиционной системы могут возникнуть сложности.
                                     Многие современные видеорегистраторы позволяют настроить удаленный доступ и он работает. Но когда видео с камер хотят время от времени смотреть 30-40-50...200
                                     человек, удаленный доступ с помощью функционала видеорегистратора обеспечить очень сложно и в техническом и в организационном плане.
    Когда на территории жилого дома установлен видеорегистратор, который сохраняет архив записей с камер видеонаблюдения на установленные в него жесткие диски
                                     существует риск преднамеренного удаления "ненужных записей" людьми, имеющими доступ к этому оборудованию.
    Существуют сложности с добавлением нового функционала. В рамкаж локальной системы дополнительный функционал видеонаблюдения чаще всего можно обеспечить
                                     только заменой видеорегистратора на другой, что может быть не всегда приемлемо.
    Могут возникнуть проблемы с размещением оборудования. В то время как камеры видеонаблюдения могут работать в условиях улицы, для видеорегистратора, в котором установлены
                                     чувствительные к внешним условиям жесткие диски, нужно закрытое, сухое, отапливаемое помещение.
    
    Какие задачи мы перед собой поставили.
    Максимально убрать все сложное, чувствительное к внешней среде оборудование с территории жилых домов.
    Для организации передачи трафика видео отказаться от услуг сторонних провайдеров, все максимально перенести в зону
                                     отвественности нашей компании.
    Организовать систему личных кабинетов пользователей, в которых индивидуально для каждого клиента можно было бы управлять доступами к просмотру камер
                                     видеонаблддения.
    Организовать систему автоматического мониторинга доступности и работоспособности камер в рамках всей сети.
    Построить распределенную систему серверов для централизованного сбора архивных записей с камер.
 
    
    Что мы сделали
    Разработали архитектуру будущей сети. Поделили город на районы исходя из соображения простоты организации связи. И в каждом районе запустили сервер, который
                                      будет подключаться к камерам своего района и сохранять с них записи.
    
    Выделили центральный сервер, к которому могут подлючаться клиенты и получать нужные им записи. В рамках центрального сервера организовали систему
                                      личных кабинетов клиентов.
    Постарались максимально упростить функционал серверов, которые установлены в районах города. Функционал максимально вынесли на центральный сервер.
    Организовали автоматический мониторинг доступности камер с оповещением о проблемах ответственных сотрудников.
    
    Как это работает
    Ядром серверной части выступает исключительно гибкий web-сервер российской разработки Nginx.
    Обработка потоков видеоинформации выполняется на базе пакета свободных библитотек Ffmpeg.
    Все взаимодействие программных компонент, связь с базой данных выполняется с помощью программных модулей собственной разработки.
 
    Архитектура сети постоена так, что все оборудование видеонаблюдения находится в нашей внутренней сети без возможности выхода в интернет.
    Связь с сетью интернет и доступ в личные кабинеты пользователей обеспечивают ограниченное количество серверов видеонаблюдения, находящихся за защитными фаерволами.
    Подобная архитектура позволила создать исключительно гибкую и масштабируемую систему, которая может обслуживать любое количество
    камер видеонаблюдения, от единиц до сотен тысяч.