В правильной Enterprise-архитектуре мы используем паттерн CQRS (Command Query Responsibility Segregation).
Да, у B2B-портала есть своя «легкая» база данных (или распределенный кэш). Чтение напрямую из ERP/Tririga на каждом запросе — это путь к деградации производительности и зависимости от аптайма ядра.
Как это работает в нашей связке:
Первичный слой (Read Model): Портал хранит локальную копию необходимых данных. Это обеспечивает мгновенный отклик интерфейса (Latency < 100ms) и работу портала, даже если ядро ушло на регламентное обслуживание.
Синхронизация (The Pulse): ESB работает как «сердце». При любом изменении в Master-системе (ядре), она инициирует событие и «пушит» обновленные значения в базу портала. Мы получаем Eventual Consistency (согласованность в конечном счете) — задержка обычно составляет доли секунды.
Single Source of Truth: Важно понимать, что база портала — это лишь «отражение». Источником правды всегда остается ядро. В паспорте АОК для таких модулей мы всегда жестко прописываем параметр @OWNERSHIP, чтобы разработчик знал: эти данные в базе портала нельзя менять локально, их можно только «просить» изменить через шину.
Именно наличие собственной базы позволяет реализовать механизм Offline First — подрядчик видит свои лимиты, даже если связь с центральным офисом временно нестабильна.
Ответ от @Daiichi: Скажу, что, на мой взгляд, рекомендации будут теми же самыми, за исключением того, что пакет SSL v1.1 логичнее будет брать из репозитория Debian, а не Ubuntu.
Также хотелось бы отметить, что и для Ubuntu 24.04 логичнее было бы скачивать пакет SSL v1.1 непосредственно с того репозитория, который указан в /etc/apt/sources.list или в /etc/apt/sources.list.d/*.sources, если он есть, для серии (suite) "$(lsb_release -sc)" компонента (component) main, и потому алгоритм скачивания окажется универсальным независимо от разновидности ОС, а также то, что символ подчёркивания не требует экранирования обратной косой чертой.
Само собой, желательно изложить этот алгоритм в виде функции bash. К сожалению, это потребует самостоятельной разработки и отладки процедур извлечения URI репозитория из текстовых файлов sources.list различных форматов (man 5 sources.list), на что у меня, к сожалению, сейчас нет времени.
Отличный вопрос, вы зрите в корень.
В правильной Enterprise-архитектуре мы используем паттерн CQRS (Command Query Responsibility Segregation).
Да, у B2B-портала есть своя «легкая» база данных (или распределенный кэш). Чтение напрямую из ERP/Tririga на каждом запросе — это путь к деградации производительности и зависимости от аптайма ядра.
Как это работает в нашей связке:
Первичный слой (Read Model): Портал хранит локальную копию необходимых данных. Это обеспечивает мгновенный отклик интерфейса (Latency < 100ms) и работу портала, даже если ядро ушло на регламентное обслуживание.
Синхронизация (The Pulse): ESB работает как «сердце». При любом изменении в Master-системе (ядре), она инициирует событие и «пушит» обновленные значения в базу портала. Мы получаем Eventual Consistency (согласованность в конечном счете) — задержка обычно составляет доли секунды.
Single Source of Truth: Важно понимать, что база портала — это лишь «отражение». Источником правды всегда остается ядро. В паспорте АОК для таких модулей мы всегда жестко прописываем параметр @OWNERSHIP, чтобы разработчик знал: эти данные в базе портала нельзя менять локально, их можно только «просить» изменить через шину.
Именно наличие собственной базы позволяет реализовать механизм Offline First — подрядчик видит свои лимиты, даже если связь с центральным офисом временно нестабильна.
Ответ от @Daiichi: Скажу, что, на мой взгляд, рекомендации будут теми же самыми, за исключением того, что пакет SSL v1.1 логичнее будет брать из репозитория Debian, а не Ubuntu. Также хотелось бы отметить, что и для Ubuntu 24.04 логичнее было бы скачивать пакет SSL v1.1 непосредственно с того репозитория, который указан в /etc/apt/sources.list или в /etc/apt/sources.list.d/*.sources, если он есть, для серии (suite) "$(lsb_release -sc)" компонента (component) main, и потому алгоритм скачивания окажется универсальным независимо от разновидности ОС, а также то, что символ подчёркивания не требует экранирования обратной косой чертой. Само собой, желательно изложить этот алгоритм в виде функции bash. К сожалению, это потребует самостоятельной разработки и отладки процедур извлечения URI репозитория из текстовых файлов sources.list различных форматов (man 5 sources.list), на что у меня, к сожалению, сейчас нет времени.
Благодарим, за рекомендации. Что скажете касательно комментария:
"okop20003 часа назад
"А у вас нет такого же, только с перламутровыми пуговицами?“ ©
Нужно для Debian 13 —мне не для себя, просто друг интересуется"
?
Было бы интересно, Ваше профессиональное мнение.