Telegram Group & Telegram Channel
Сэм Ньюмен, "От монолита к микросервисам"

Распил монолита на микросервисы уже стал притчей во языцех. Если вбить в поиск ютуба эту ключевую фразу, то вы увидите бесконечную загрузку кучу видосов и выступлений на конфе. Оно и неудивительно, тема сложная и богатая на нюансы.

Сэм Ньюмен, автор книги "Создание микросервисов" (на которую я писал обзор), тоже успел проехаться на хайповой теме. Его книга про микросервисы мне очень понравилась, поэтому я решил прочитать и про распил монолита.

О чём книга

Книга довольно небольшая, состоит из 5 глав, которые и покрывают все аспекты миграции.

Первая глава посвящена терминологии, которая используется в книге (микросервис, монолит, cohesion/coupling, немного DDD).

Вторая глава покрывает планирование миграции с монолита на микросервисы. Интересно, что Ньюмен акцентирует внимание на важности планирования и как управлять распилом с точки зрения проектного управления (риски, контрольные точки, вот это всё). Даже когнитивные искажения вспомнил.

Третья и четвёртая главы рассказывают о технической части миграции: как пилить монолит и как пилить БД. Для распила монолита автор предлагает несколько шаблонов, которые позволяют постепенно переехать с монолита. Есть как относительно стандартные шаблоны (душитель, вынос куска логики в микросервис и так далее), так и более экстравагантные типа использования CDC для создания параллельно работающих систем.

Для распила БД автор тоже предлагает набор архитектурных шаблонов, от обёртывания БД микросервисом до различных синхронизаций. Также описан ряд вспомогательных шаблонов, которые могут немного упростить переезд. В конце главы про БД автор прошёлся по транзакциям, 2FC и сагам в микросервисах.

Пятая глава на мой вкус должна быть второй, потому что она рассказывает о болезнях роста микросервисной архитектуры. В ней описаны все страдания, которые предстоит пережить с масштабированием микросервисной архитектуры. Также в ней Ньюмен затрагивает вопросы мониторинга и логирования, DX разработчиков микросервисов, проблемы отказоустойчивости и многое другое.

Мои впечатления

Книга мне понравилась. Она даёт общий обзор проблемы распила монолита на микросервисы с точки зрения как кода, так и хранения данных. Ньюмен двигается от проблемы к решению, поэтому книгу довольно легко читать и воспринимать.

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

Отдельно хочу выделать русский перевод, который сделан из рук вон плохо. Если английский позволяет, то читайте книгу в оригинале.

На мой взгляд, книгу стоит прочитать каждому бэкендеру начиная с уровня Middle (это то место, где хочется прикручивать много всяких разных архитектурных паттернов и тому подобных вещей). С книгой стоит ознакомиться, даже если вы не планируете в ближайшее время пилить монолит - планы могут измениться :)

#обзор_книги



group-telegram.com/ulshinblog/389
Create:
Last Update:

Сэм Ньюмен, "От монолита к микросервисам"

Распил монолита на микросервисы уже стал притчей во языцех. Если вбить в поиск ютуба эту ключевую фразу, то вы увидите бесконечную загрузку кучу видосов и выступлений на конфе. Оно и неудивительно, тема сложная и богатая на нюансы.

Сэм Ньюмен, автор книги "Создание микросервисов" (на которую я писал обзор), тоже успел проехаться на хайповой теме. Его книга про микросервисы мне очень понравилась, поэтому я решил прочитать и про распил монолита.

О чём книга

Книга довольно небольшая, состоит из 5 глав, которые и покрывают все аспекты миграции.

Первая глава посвящена терминологии, которая используется в книге (микросервис, монолит, cohesion/coupling, немного DDD).

Вторая глава покрывает планирование миграции с монолита на микросервисы. Интересно, что Ньюмен акцентирует внимание на важности планирования и как управлять распилом с точки зрения проектного управления (риски, контрольные точки, вот это всё). Даже когнитивные искажения вспомнил.

Третья и четвёртая главы рассказывают о технической части миграции: как пилить монолит и как пилить БД. Для распила монолита автор предлагает несколько шаблонов, которые позволяют постепенно переехать с монолита. Есть как относительно стандартные шаблоны (душитель, вынос куска логики в микросервис и так далее), так и более экстравагантные типа использования CDC для создания параллельно работающих систем.

Для распила БД автор тоже предлагает набор архитектурных шаблонов, от обёртывания БД микросервисом до различных синхронизаций. Также описан ряд вспомогательных шаблонов, которые могут немного упростить переезд. В конце главы про БД автор прошёлся по транзакциям, 2FC и сагам в микросервисах.

Пятая глава на мой вкус должна быть второй, потому что она рассказывает о болезнях роста микросервисной архитектуры. В ней описаны все страдания, которые предстоит пережить с масштабированием микросервисной архитектуры. Также в ней Ньюмен затрагивает вопросы мониторинга и логирования, DX разработчиков микросервисов, проблемы отказоустойчивости и многое другое.

Мои впечатления

Книга мне понравилась. Она даёт общий обзор проблемы распила монолита на микросервисы с точки зрения как кода, так и хранения данных. Ньюмен двигается от проблемы к решению, поэтому книгу довольно легко читать и воспринимать.

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

Отдельно хочу выделать русский перевод, который сделан из рук вон плохо. Если английский позволяет, то читайте книгу в оригинале.

На мой взгляд, книгу стоит прочитать каждому бэкендеру начиная с уровня Middle (это то место, где хочется прикручивать много всяких разных архитектурных паттернов и тому подобных вещей). С книгой стоит ознакомиться, даже если вы не планируете в ближайшее время пилить монолит - планы могут измениться :)

#обзор_книги

BY Никита Ульшин про IT




Share with your friend now:
group-telegram.com/ulshinblog/389

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

A Russian Telegram channel with over 700,000 followers is spreading disinformation about Russia's invasion of Ukraine under the guise of providing "objective information" and fact-checking fake news. Its influence extends beyond the platform, with major Russian publications, government officials, and journalists citing the page's posts. "We're seeing really dramatic moves, and it's all really tied to Ukraine right now, and in a secondary way, in terms of interest rates," Octavio Marenzi, CEO of Opimas, told Yahoo Finance Live on Thursday. "This war in Ukraine is going to give the Fed the ammunition, the cover that it needs, to not raise interest rates too quickly. And I think Jay Powell is a very tepid sort of inflation fighter and he's not going to do as much as he needs to do to get that under control. And this seems like an excuse to kick the can further down the road still and not do too much too soon." However, the perpetrators of such frauds are now adopting new methods and technologies to defraud the investors. The regulator took order for the search and seizure operation from Judge Purushottam B Jadhav, Sebi Special Judge / Additional Sessions Judge. "We as Ukrainians believe that the truth is on our side, whether it's truth that you're proclaiming about the war and everything else, why would you want to hide it?," he said.
from ua


Telegram Никита Ульшин про IT
FROM American