Как стать автором
Обновить

Комментарии 4

Интересная статья. Занимать 4 порта ради задачи которую можно написать проще, легче и с использованием только 1 порта. В качестве вводной в массы и как работает сейчас айти нормас. +

Полностью с вами согласен по поводу "4-ех портов". Задача решается достаточно просто и без всяких брокеров, раздул проблему в статье специально, чтобы продемонстрировать взаимодействие с брокером. Вдруг кто-то тестовое решать будет (?). Спасибо за проявленный интерес!

Прошу не воспринимать мой комментарий как резкую критику, но у меня в голове не укладывается несоразмерность поставленной задачи и ее решения. Понятно, что это учебный пример / проект, цель которого - показать на практике, как работают какие-то концепции. Но тем не менее, задача стоит, как "API, которое по id и коду валюты напишет в ТГ пользователю с этим ID текущий курс этой валюты в рублях". А следующим предложением идет "нам понадобится Redis, Kafka и Zookeper ". А кончается статья отправкой единственного POST-запроса.

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

Но здесь уже будет другой момент. Решая одни проблемы - порождаем другие, уже связанные с обслуживанием такой системы. Упрощенное описание из статьи к сожалению скрывает детали и всю сложность вместе с ними. Насколько полезен такой практический опыт - лично мне не очевидно.

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

То есть акцент был поставлен именно на взаимодействии с брокером и попытке описать несколько возможных ситуаций (когда сервис исключительно производитель, когда и производитель, и потребитель, и когда только потребитель). При этом попытался подобрать разные фрейморвки, а не 5 микросервисов на каком-нибудь одном "фласке".

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

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

Спасибо за такой большой и конструктивный фидбек!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории