Информация об изменениях

Сообщение Re: Микросервисы заменить монолитом = 90% экономии от 07.05.2023 17:09

Изменено 07.05.2023 17:10 vsb

Re: Микросервисы заменить монолитом = 90% экономии
Про микросервисы судить не буду. Наверное на каком-то масштабе они неизбежны. Вроде у всех крупных компаний они. Я таких проектов не видел.

Монолит в экстремуме это однозначно дурость. Если у меня есть человек, который на питоне делает ИИ, правильней этот модуль обернуть в докер и вызывать. А не переписывать на го.

Также часто есть отдельные задачи, очевидно требующие масштабирования. Ну к примеру перекодировка видео. Запускать новый инстанс монолита (и вообще проектировать монолит под кластерность) только потому, что у тебя на сервере закончился CPU это тупо. Выделить перекодировку видео в отдельный сервис из ста строк, и масштабировать только его — правильно.

Также есть отдельные задачи, легко решающиеся на одном стеке технологий и сложно решающиеся на другом. К примеру в Казахстане используется своя криптография. Есть библиотека для Java. Код на Java это несколько сотен строк. Переписывать эти библиотеки на Go (к которым нет исходников), потом по-хорошему эту новую реализацию ещё и сертифицировать в КНБ надо будет. Удачи, ага.

Резюмируя — начинать надо с монолита, но не стесняться выделять из него то, что "просится" выделиться в отдельные сервисы, а не впихивать невпихуемое.

А насчёт прям полноценных микросервисов сказать ничего не могу. Пока нужды такой не было.
Re: Микросервисы заменить монолитом = 90% экономии
Про микросервисы судить не буду. Наверное на каком-то масштабе они неизбежны. Вроде у всех крупных компаний они. Я таких проектов не видел.

Монолит в экстремуме это однозначно дурость. Если у меня есть человек, который на питоне делает ИИ, правильней этот модуль обернуть в докер и вызывать. А не переписывать на го.

Также часто есть отдельные задачи, очевидно требующие масштабирования. Ну к примеру перекодировка видео. Запускать новый инстанс монолита (и вообще проектировать монолит под кластерность) только потому, что у тебя на сервере закончился CPU это тупо. Выделить перекодировку видео в отдельный сервис из ста строк, и масштабировать только его — правильно. Вы же не суёте постгрес в адресное пространство бэкэнда.

Также есть отдельные задачи, легко решающиеся на одном стеке технологий и сложно решающиеся на другом. К примеру в Казахстане используется своя криптография. Есть библиотека для Java. Код на Java это несколько сотен строк. Переписывать эти библиотеки на Go (к которым нет исходников), потом по-хорошему эту новую реализацию ещё и сертифицировать в КНБ надо будет. Удачи, ага.

Резюмируя — начинать надо с монолита, но не стесняться выделять из него то, что "просится" выделиться в отдельные сервисы, а не впихивать невпихуемое.

А насчёт прям полноценных микросервисов сказать ничего не могу. Пока нужды такой не было.