apt-get_mebeer
Новичок
Всем привет! После изучения темы модульного пограммирования хотелось бы получить некий совет в проектировании....
Суть такая, есть пару модулей:
PrintServer - Модуль который печатает пдф файлы (или отправляет сформированный файл по email)
Точка входа в данный модуль одна... PrintServer->build($invoiceId, $email) - То есть если передан email то сформированный пдф файл будет отправлен на указанную почту. Если $email не указан то пдф формируется в общем потоке и его можно скачать.
Encryption - Модуль реализует шифрование переданных данных на выходе hex. Тут тоже минимум интерфейса, crypt($param, $depth) ну и decrypt($param). В целом данный модуль будет использоваться при передачи параметров в PrintServer модуль.
TaskManager - Модуль реализует слой работы с RabbitMQ. Нужен этот модуль что бы складывать в СТЭК задачи по формированию ПДФ (собственно эти задачи будут отправляться в PrintSever модуль).
PartnerPanel - Модуль личного кабинета.... Сюда я захожу.... ищу нудный INVOICE и жмякаю на кнопку напечатать , эта задача шифруется модулем Encryption и в зашифрованном виде отправляется в TaskManager модуль. Затем последний отправляет задачу на реализацию в PrintServer и закрывает задачу.
Надеюсь тут все понятно...
Ну так вот.... Проблема в том что я не могу понять как связывать эти модули? Вот какие мысли были...
Создать Один большой пакет для composer назвать его к примеру printer и уже в нем создать папки со всеми модулями (как это делает к примеру symfony2 с vendors). Затем взять этот пакет заинсталить в какой либо АПИ и уже в этой самой АПИ подтягивать нужные модули и работать? Да все же хотелось бы что бы поверх этих самых модулей было некое АПИ на том же самом yii2 || slim
Вот хоть убейте не могу уже третий день понять как все можно развернуть это... Поделитесь прошу кто нить....
Заранее спасибо!
Суть такая, есть пару модулей:
PrintServer - Модуль который печатает пдф файлы (или отправляет сформированный файл по email)
Точка входа в данный модуль одна... PrintServer->build($invoiceId, $email) - То есть если передан email то сформированный пдф файл будет отправлен на указанную почту. Если $email не указан то пдф формируется в общем потоке и его можно скачать.
Encryption - Модуль реализует шифрование переданных данных на выходе hex. Тут тоже минимум интерфейса, crypt($param, $depth) ну и decrypt($param). В целом данный модуль будет использоваться при передачи параметров в PrintServer модуль.
TaskManager - Модуль реализует слой работы с RabbitMQ. Нужен этот модуль что бы складывать в СТЭК задачи по формированию ПДФ (собственно эти задачи будут отправляться в PrintSever модуль).
PartnerPanel - Модуль личного кабинета.... Сюда я захожу.... ищу нудный INVOICE и жмякаю на кнопку напечатать , эта задача шифруется модулем Encryption и в зашифрованном виде отправляется в TaskManager модуль. Затем последний отправляет задачу на реализацию в PrintServer и закрывает задачу.
Надеюсь тут все понятно...
Ну так вот.... Проблема в том что я не могу понять как связывать эти модули? Вот какие мысли были...
Создать Один большой пакет для composer назвать его к примеру printer и уже в нем создать папки со всеми модулями (как это делает к примеру symfony2 с vendors). Затем взять этот пакет заинсталить в какой либо АПИ и уже в этой самой АПИ подтягивать нужные модули и работать? Да все же хотелось бы что бы поверх этих самых модулей было некое АПИ на том же самом yii2 || slim
Вот хоть убейте не могу уже третий день понять как все можно развернуть это... Поделитесь прошу кто нить....
Заранее спасибо!