Есть необходимость организовать работу ряда микросервисов.
Микросервисы работают на python, общаются с бд напрямую.
Хочу для мониторинга, чтобы не писать кастомные всегда недостаточные по функционалу вещи, использовать laravel с какой-нибудь надстройкой типа moonshine.
Насколько реалистичен сценарий, при котором микросервисы будут работать напрямую с бд (в основном только insert/select), а пользователь будет общаться через веб-интерфейс laravel? Не ковырялся в БД, создаваемой laravel и не знаю подводных камней. Возможно есть сотни дополнительных зависимых полей/таблиц, которые не позволят читать/писать данные напрямую в БД без системного обработчика.
Может быть вопрос звучит абсурдно, но не хочется писать кучу костыльных интерпретаторов python-laravel, которые будут медленно работать с и без того нагруженной бд и требовать постоянной доработки.
Возможно, вы знаете какой-то более подходящий кейс (вместо использования laravel)?
На самом деле, совершенно неважно, что создает Лара. Вы же будете работать с данными, а не с Ларой. То есть будете читать-писать таблицы, которые сами же и пропишете в БД.
Засада может быть в кэшировании: Лара может считать, что таблица не изменялась и выдавать закешированные данные, а вы там уже все пересобачили Питоном... можно, конечно, каждый раз запускать очистку кэша artisan-ом...
Может быть, имеет смысл завести отдельную таблицу под то, что приходит от микросервиса, а в Ларе прописать ежеминутный обработчик, разгребающий это в свои данные. А то ведь анализировать содержимое таблицы, в которую суются с двух сторон, при необходимости отладки будет невесело...
Ну а почему нет?
В ларке не так много штатных таблиц. Вспоминается только sessions, access_tokens и jobs. Все остальные вы создается сами под свои нужды, сами настраиваете связи между ними.