Я начал разрабатывать приложение, которое состоит из двух частей. Вся система действует как приложение для цифровых вывесок. Все находится на одной физической машине.
Первый компонент - это административный бэкэнд для управления контентом. Пользователи могут планировать и загружать мультимедийные файлы. Это веб-приложение, доступное через браузер.
Вторая часть - медиаплеер. Его задача - в основном загружать данные, загруженные людьми, и отображать их. Метаданные для них сохраняются в базе данных (например, сколько времени должно отображаться это изображение, что дальше ...) и физические данные в файловой системе, поскольку все они находятся на одной машине.
Все связанные данные хранятся в базе данных PostgreSQL. Есть основная информация о расписании + пути к содержимому файловой системы, а не их двоичная форма.
Существует соединение сокетов через локальную петлю между этими двумя. Существует несколько очень простых способов коммуникации и анализа команд (проверка состояния, выход, обновление содержимого). Если пользователь загружает и планирует новый контент или меняет текущий с помощью веб-интерфейса - в медиаплеер отправляется сообщение через сокет, в котором ему предлагается создать новое расписание.
Однако, как только игрок получает сообщение для проверки нового контента, он загружает данные планирования из базы данных.
Я хотел бы знать, рассматривается ли это как база данных как антипаттерн IPC? Если да, то каковы были бы лучшие способы ее решения?