Depository of News

Очередь без серверов и головной боли: как устроен Serverless Queue в MWS Cloud Platform

newsdepo.com · sport

Если вы хоть раз эксплуатировали Kafka, то знаете, сколько нервных клеток способен съесть её кластер. Поднять Kafka для PoC несложно, а вот дальше начинается планирование ёмкости, диски, replication factor, перераспределение партиций и восстановление после отказа брокера. В MWS Cloud Platform мы решили, что так дальше жить нельзя, и запустили Serverless Queue — бессерверный Kafka-совместимый брокер. Читайте статью, чтобы узнать, как с его помощью быстро и просто можно запустить сценарии обработки сообщений по Kafka-протоколу. Message queue — важная часть бэкенда. Задача сервиса проста: надёжно и безопасно передавать сообщения от producer’ов к consumer’ам. Очередь можно организовать с помощью RabbitMQ, а можно с помощью PostgreSQL или Redis, а если нужен не просто транспорт, а история событий, которую можно перечитать, то стандарт индустрии, конечно, Kafka. В среде бэкендеров и devops’ов Kafka считается сложной технологией в первую очередь из-за непростой эксплуатации: планирования емкости локальных дисков для брокеров, репликации и перераспределения партиций. Но что, если мы скажем, что большинству команд (на старте уж точно) не нужна избыточная сложность Kafka? Меня зовут Кирилл Пятковский, я разработчик в команде Serverless Data Streams в MWS Cloud Platform. Я готовил эту статью вместе с Денисом Титовым, TPO дата-сервисов платформы. В материале мы разберём модели передачи сообщений, а затем посмотрим, как сервис MWS Serverless Queue устроен внутри: почему брокеры не владеют ни одной партицией, как сообщения разных клиентов оказываются в одном объекте S3 и почему Kafka-клиент при этом ничего не замечает. И честно скажем, сколько это стоит по задержке. Читать далее

Read full article →