TL; DR: какие-либо советы или ресурсы по извлечению кода в многократно используемые, хорошо структурированные и поддерживаемые библиотеки?
Я работаю над приложениями на python в архитектуре в стиле микросервиса, где мы будем разрабатыватьи развертывание множества небольших приложений, каждое из которых решает определенные проблемы, возможно (или, возможно, нет), взаимодействуя с другими приложениями / внешними службами.
Мы только начали переходить на эту микросервисную архитектуру, поэтому у нас уже есть довольнонемного кода в монолитном проекте.Поскольку мы добавляем новые микросервисы, становится очевидным, что нам нужно извлекать общий код (например, утилиты, базовые классы, ...) в библиотеки, чтобы избежать повторной реализации или копирования-вставки кода, который затем необходимо будет поддерживать отдельно.Поскольку я пытаюсь сделать это (чего я никогда раньше не делал), я понимаю, что это не тривиально и может довольно быстро усложниться, и я мог бы потратить некоторое время на обдумывание этого тоже.
Так чтоЯ ищу советы или указатели на ресурсы по передовым методам, связанным с этой ситуацией, т.е. пишу хорошо структурированные библиотеки python, упаковываю и распространяю библиотеки, делюсь кодом в микросервисной архитектуре и избегаю ошибок, которые могут поставить меня в проблемные ситуации.
Конкретные проблемы / проблемы, с которыми я сталкиваюсь:
* Как лучше группировать / разделять код в управлении версиями.Мол, один репозиторий на пакет?Количество хранилищ может взорваться довольно быстро ...