Size: a a a

2020 September 28

БС

Байт Словович... in rannts
Fred
Всем привет. Есть вопрос кто нибудь работал с микросервисами? Меня интересует решение как организовать паттерн shared db (много микросервисов одна база) фреймворк не имеет значение но orm sql alchemy. Может кто видел на github или статью какую как пилят такое
У вас какой размер команды разработчиков и девопсов?
Кто решил что вам нужны микросервисы?
Какую цель он хочешь достичь?
Какую цель хотят достичь разработчики?
источник

RB

Roman Bolkhovitin in rannts
может кто знает, а то я в гугл не смог.

pip умеет ставить зависимости из pyproject.toml, а на лок файл он при этом смотрит или нет?
источник

A🌚

Al 🌚l in rannts
Kirill (Cykooz) Kuzminykh
Это какой-то анти-паттерн наверное. Микросервисы ведь делают для того что бы они были минимально связаны друг с другом. Т.е. у каждого сервиса должна быть своя база и он не должен знать про базу других сервисов. А если им надо общаться между собой, то они должны это делать через API, который можно поддерживать в рабочем состоянии независимо от изменений внутри самого сервиса.

Как вариант - можно и базу представить как сервис, но в таком случае надо работать с ней через "API", например в виде сохранённых процедур, а не через прямые SQL запросы. И поддержку этого "API" надо реализовать в виде отдельного проекта микросервиса.
Да не, это такой же паттерн как и db per service
источник

A🌚

Al 🌚l in rannts
Просто реже используется из-за усложнения коммуникации
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Al 🌚l
Да не, это такой же паттерн как и db per service
Только не понятно нафига тогда нужны микросервисы, если из-за общей базы их нельзя будет нормально масштабировать, и как самый критичный вариант - нельзя перенести часть микросервисов в другой дата-центр.
источник

A🌚

Al 🌚l in rannts
Kirill (Cykooz) Kuzminykh
Только не понятно нафига тогда нужны микросервисы, если из-за общей базы их нельзя будет нормально масштабировать, и как самый критичный вариант - нельзя перенести часть микросервисов в другой дата-центр.
А почему нельзя масштабировать?
источник

A🌚

Al 🌚l in rannts
А вот про переезд в другой дц- да, проблема
источник

A🌚

Al 🌚l in rannts
Видимо его используют только на ранних этапах проектирования и распиливания
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Al 🌚l
А почему нельзя масштабировать?
Так база будет бутылочным горлышком всего проекта. Иногда придётся всю базу масштабировать только из-за проблем одного микросервиса.
источник

VR

Victor Ryabinin in rannts
есть же AWS RDS
источник

VR

Victor Ryabinin in rannts
и под постгрес у них есть RDS для микросервисов
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Ну и конечно же исходная проблема топик-стартера - как такое всё разрабатывать с учётом того что база будет меняться.
источник

A🌚

Al 🌚l in rannts
Kirill (Cykooz) Kuzminykh
Так база будет бутылочным горлышком всего проекта. Иногда придётся всю базу масштабировать только из-за проблем одного микросервиса.
Но это надо сначала упереться в производительность базы. Тогда то уже и можно начинать распиливать на бд пер сервис. Просто я к тому что этот паттерн/антипаттерн имеет право на жизнь на каких-то этапах разработки
источник

RB

Roman Bolkhovitin in rannts
на тех когда лучше делать монолит? 😊
источник

SA

Sergey Arkhipov in rannts
Roman Bolkhovitin
может кто знает, а то я в гугл не смог.

pip умеет ставить зависимости из pyproject.toml, а на лок файл он при этом смотрит или нет?
Ставь через poetry, в чем проблема-то
источник

A🌚

Al 🌚l in rannts
Roman Bolkhovitin
на тех когда лучше делать монолит? 😊
Или на тех, когда наоборот монолит превращается в сервисы, да :)
источник

RB

Roman Bolkhovitin in rannts
Sergey Arkhipov
Ставь через poetry, в чем проблема-то
проблема интересная - не знаю как его в ci нормально воткнуть, в jenkins )
источник

SA

Sergey Arkhipov in rannts
в смысле как установить?
источник

SA

Sergey Arkhipov in rannts
он просто в директорию ставится, вещь в себе
источник

RB

Roman Bolkhovitin in rannts
да не, образ с poetry заводить чтобы из него билды поднимать не очень хочется
источник