Николай Сасковец: Строим микросервисное приложение используя Kafka и Django
Строим микросервисное приложение используя Kafka и Django
Когда ваше приложение беззаботно оперирует сотней-другой событий в секунду, основывая свои действия на ручейке данных из внешнего мира, то всё вокруг кажется красочным и прекрасным. Хотя окружающий мир непредсказуем, и внезапно могут возникнуть жесткие требования к отказоустойчивости и производительности некоторых частей приложения, а другим частям бизнес может пообещать вместо ручейка данных — настоящий водопад!
Все эти вызовы окружающей среды могут решаться по-разному, но в нашем случае сквозь все решения проходит Kafka в переплетении с микросервисами.
Так, для укрощения водопада данных многие рекомендуют Kafka, обещая нам что она сможет обработать до 2 миллионов записей в секунду.
А ещё мы постарались безболезненно внедрить Kafka в проект базирующийся на Django-микросервисах. Она здесь используется в качестве шины обмена данными, чтобы как-то справиться с намечающимся водоворотом микросервисного ада. Тем более, что среди сервисов, сделанных с помощью aiohttp, Golang и многого другого тоже нужно было как-то распределить ручейки данных.
В конце концов, когда у вас в руках Кафка, то всё вокруг кажется потоком.
TAGS: Microservices, Apache Kafka, Django, Avro, Confluent Schema Registry, Kafka Connectors, Debezium, PostgreSQL, Kafka Streams, confluent-kafka, python-kafka, pykafka, aiokafka.
Николай Сасковец
Минск, Беларусь
Passionate Software Engineer
Николаю доводилось начинать, проводить, забрасывать и завершать процессы перевода монолитных приложений к микросервисной архитектуре как python-only приложений, так и довольно гетерогенных в плане языков программирования, и технологического стека в общем, проектов. В процессе этих увлекательных приключений так или иначе приходилось сталкиваться с различными технологиями, подходами, решениями. Какие-то из этих решений оказали неизгладимое впечатление на него самого и на команды, в которых он работал.
Теперь Николай стремится делиться своей радостью и болью от интересных технологических находок с сообществом.