LINUX.ORG.RU

как правильно деплоить?

 ,


0

2

как сейчас кошерно деплоить все эти ваши микросервисы?

какие идеи:

1. мульен реп. и для протокола взаимодействия второй. но проблема: вся эта радость расползается, один хочет новый протокол связи, второй отдает старый, при этом сам протокол может быть третий. как всю эту радость синхронизировать, стейджем?

2. одна мультимодульная репа, которая внутри себя вполне консистентна, но тогда чем разруливать комиты? т.е. поменяли либу --- надо пересобрать и задеплоить зависимые бинари. обновили сырцы бинаря --- надо задеплоить вроде только его, иначе, если деплоить все на каждый чих, это не особо-то лучше монолита.

где грань?

зы. нет тега «микросервисы».

как всю эту радость синхронизировать, стейджем?

А не надо это синхронизировать, надо делать обратно совместимые в обе стороны протоколы. На основе protobuf, например.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

На основе protobuf, например.

имхо слабовато, один шлет 3 параметра, другой читает только два, вся математика разъехалась, зато нигде не упало. и че делать?

Rastafarra ★★★★
() автор топика

Делать нормальные пакеты для своего дистрибутива src/bin и репозиторий свой. Остальное костыли.

anonymous
()
Ответ на: комментарий от Rastafarra

Я ни на чём не акцентировал внимание. Я написал всё что нужно было написать.

slovazap ★★★★★
()

Нужно нанять побольше людей и проводить побольше митингов. Только так микросервисы работать будут.

redixin ★★★★
()
Ответ на: комментарий от Rastafarra

Тесты писать, чтобы когда разъехалось - всегда падало.

alpha ★★★★★
()
Ответ на: комментарий от slovazap

Поддерживаю, в 90% случаев обратная совместимость или ввод новой (параллельной) версии API прекрасно работает.

urxvt ★★★★★
()

Хранение кода с организацией выкатки не связано. Можно хранить в одной репе, выкатывать асинхронно, можно хранить в разных и выкатывать вместе.

Но как тут отписались выше отписались, микросервисы - это не просто 15 джарников.

Приложение становится микросервисом не тогда, когда ты его в контейнер положишь или на несколько файлов разобьешь, а когда у него будет стандартизированный версионированный API, обложенный тестами.

Поэтому приложение надо не «деплоить как микросервис», и не «складывать в гит как микросервис», его надо разрабатывать как микросервис.

alpha ★★★★★
()

Микросервисы всем подряд не нужны, альфодевопсы не нужны никому. Не надо усложнять себе жизнь из-за моды.

anonymous
()

1-й вариант. Если ты хочешь микросервисы, значит ты понимаешь, что между версиями ты должен обеспечивать обратную соместимость. Ко всему этому у тебя обязательно должно быть тестирование контрактов, чтобы микросервисы могли проверять друг друга на предмет совместимых версий.

v9lij ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.