Я хотів би створити систему, яка б обробляла тривожні повідомлення з різних програм і могла обробляти ці сповіщення споживачам по повітрю через електронну пошту. Все це міститиметься в одній внутрішній мережі.
Я думаю, що я хочу, щоб основна архітектура виглядала приблизно так:
Основна проблема, яку я маю на даний момент, - це біт "Обробник повідомлень", який буде моїм "сортуванням API". Я хочу, щоб усі компоненти цієї системи надсилали дані в API, який обробляє всі записи в базу даних. Я думаю, що такий підхід простіший, оскільки він спрощує безпеку і дозволяє мені містити в одній програмі багато складніших запитів БД.
Турбота полягає в тому, що я хочу, щоб це було агностиком мови - це означає, що будь-який код повинен мати можливість надсилати повідомлення моєму оброблювачу, - який інтерпретуватиме їх. Я сподіваюся зробити це через плоскі файли JSON - або через REST-дзвінки до програми (надаючи гнучкість програмам низхідного потоку).
Моє запитання:
Чи повинен мені зациклюватися на обробці повідомлень - чи це додасть простоти, щоб просто дозволити прямий доступ до бази даних до програм низхідного потоку, а також до двох інших компонентів (консолі управління та менеджера сповіщень)?
Таким чином, вони можуть вставляти будь-яке попередження, яке вони хотіли б - доки INSERT в таблиці / сек БД є дійсними.
Я не є дизайнером програмного забезпечення в торгівлі, тому вибачте - я просто хочу, щоб проект займався у вільний час.