#архитектура
2 декабря я принял участие в митапе PHP Friends Club. Одной из панельных тем для обсуждения были микросервисы, прости господи, без обсуждения которых не проходит ни одна конференция и ни один митап. Я обратил внимание на схожесть задаваемых вопросов после докладов и на схожесть аргументов в обсуждениях. К сожалению, я не слышал доводов зачем архитекторы или разработчики начинают реализовывать тот или иной функционал в рамках сервиса/микросервиса. Не могу пройти мимо...
Перестаньте считать микросервисы золотой пулей! Сами по себе они не решают ни одну проблему. Воспринимайте их как один из инструментов для снижения сложности разработки системы. Представим современный автомобиль. Он имеет множество сложных узлов и агрегатов, а удержать в голове нюансы работы каждой из систем среднестатистический сотрудник не может. Происходит разделение труда и образовываются отделы что отвечают за конкретные системы. Один отдел двигатель создает, другой трансмиссию, а третий разрабатывает блоки управления двигателем и трансмиссией. Чтобы эффективно работать, отдел по разработке двигателей предоставляет спецификацию по которой с двигателем можно общаться, например, углы зажигания задавать. Отделу не важно как будет происходить управление, их задача сдать спроектированный двигатель, работающий по спецификации. Это снижает сложность и упрощает процессы.
Аналогично и с микросервисами. Если монолитная система умещается в голове одного человека и нет особых нюансов технического плана, то микросервисы вряд ли нужны.
@noTieinIT
2 декабря я принял участие в митапе PHP Friends Club. Одной из панельных тем для обсуждения были микросервисы, прости господи, без обсуждения которых не проходит ни одна конференция и ни один митап. Я обратил внимание на схожесть задаваемых вопросов после докладов и на схожесть аргументов в обсуждениях. К сожалению, я не слышал доводов зачем архитекторы или разработчики начинают реализовывать тот или иной функционал в рамках сервиса/микросервиса. Не могу пройти мимо...
Перестаньте считать микросервисы золотой пулей! Сами по себе они не решают ни одну проблему. Воспринимайте их как один из инструментов для снижения сложности разработки системы. Представим современный автомобиль. Он имеет множество сложных узлов и агрегатов, а удержать в голове нюансы работы каждой из систем среднестатистический сотрудник не может. Происходит разделение труда и образовываются отделы что отвечают за конкретные системы. Один отдел двигатель создает, другой трансмиссию, а третий разрабатывает блоки управления двигателем и трансмиссией. Чтобы эффективно работать, отдел по разработке двигателей предоставляет спецификацию по которой с двигателем можно общаться, например, углы зажигания задавать. Отделу не важно как будет происходить управление, их задача сдать спроектированный двигатель, работающий по спецификации. Это снижает сложность и упрощает процессы.
Аналогично и с микросервисами. Если монолитная система умещается в голове одного человека и нет особых нюансов технического плана, то микросервисы вряд ли нужны.
@noTieinIT