Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Рейтинг: 71.7% · 16 голосов
Python, Rust, Go, C++, C#, Java, Kotlin: синтаксис, паттерны проектирования, производительность, многопоточность и сравнение языков.
Ответить
Аватара пользователя
rburr
Сообщения: 77
Зарегистрирован: 12 май 2026, 17:53

Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение rburr »

Пишем новый сервис обработки потока событий: Kafka input, трансформация, enrichment из Redis, запись в ClickHouse. Ожидаемый пик — 80к событий/сек на инстанс, latency p99 < 5 мс. Команда сейчас пишет в основном на Python и немного Go. Рассматриваем Go 1.24 или Rust (tokio + rdkafka). Аргументы за Rust: перформанс и memory overhead, аргументы за Go: команда быстрее пишет, проще онбординг. Что думаете? Кто гонял похожие нагрузки?
👍1 ❤️1 🔥 😄 🤔
✔ Лучший ответ сформирован автоматически — lawlorg
Третий вариант — рассмотреть Zig или не рассматривать и всё-таки взять Go. Zig для проды в 2026 ещё слишком рано. А вот вопрос: у вас enrichment из Redis синхронный на каждое событие или батчами? Если синхронный — это съест весь ваш latency budget вне зависимости от языка. Batching + local LRU cache (ristretto на Go отлично) решает это лучше чем выбор языка.
Перейти к ответу →
Аватара пользователя
fedya69
Сообщения: 1
Зарегистрирован: 08 июн 2026, 17:12

Re: Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение fedya69 »

На таких цифрах Go справится абсолютно нормально. 80к/сек — это не те нагрузки где Rust даёт ощутимое преимущество в реальном сервисе. Bottleneck будет в сети и IO, а не в CPU. Go 1.24 с новым рантаймом NUMA-aware очень неплохо себя ведёт на многоядерных машинах. Я бы взял Go просто потому что команда будет итерировать быстрее и меньше стрелять себе в ногу.
👍2 ❤️ 🔥 😄 🤔
Аватара пользователя
simmeon1
Сообщения: 18
Зарегистрирован: 11 май 2026, 08:45

Re: Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение simmeon1 »

@fedya69, Работаю в команде где гоняли похожий пайплайн на Rust tokio. Перформанс отличный, p99 у нас 1.2 мс при 120к/сек, но онбординг новых людей занял 3–4 месяца до уровня уверенного кода. Lifetime checker в async-контексте с rdkafka — это отдельный квест. Если команда не планирует плотно сидеть в Rust — я бы не советовал для операционного сервиса.
👍3 ❤️ 🔥 😄1 🤔
Аватара пользователя
lawlorg
Сообщения: 30
Зарегистрирован: 16 май 2026, 06:26

Re: Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение lawlorg »

✔ Лучший ответ — сформирован автоматически
Третий вариант — рассмотреть Zig или не рассматривать и всё-таки взять Go. Zig для проды в 2026 ещё слишком рано. А вот вопрос: у вас enrichment из Redis синхронный на каждое событие или батчами? Если синхронный — это съест весь ваш latency budget вне зависимости от языка. Batching + local LRU cache (ristretto на Go отлично) решает это лучше чем выбор языка.
👍1 ❤️ 🔥1 😄 🤔
Аватара пользователя
baseddeadlock
Сообщения: 8
Зарегистрирован: 11 май 2026, 21:42

Re: Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение baseddeadlock »

@rburr, Мы брали Rust для аналогичного пайплайна два года назад. Сейчас бы взял Go. Не потому что Rust плох — а потому что на Go проще нанять, проще дебажить в 3 ночи в продакшне, и 99% перформанс-проблем у нас были не в языке а в схеме партиционирования Kafka и неправильных batch sizes в ClickHouse inserter.
👍1 ❤️ 🔥 😄1 🤔
Аватара пользователя
nixos_andy
Сообщения: 61
Зарегистрирован: 11 май 2026, 03:44

Re: Rust или Go для нового микросервиса обработки событий — что выберете в 2026?

Сообщение nixos_andy »

За Rust один реальный аргумент — memory footprint. Если сервис деплоится в сотнях инстансов, 20–40 МБ vs 80–120 МБ на инстанс суммарно значимо. Но если инстансов 5–10 — это копейки.
👍1 ❤️ 🔥 😄 🤔
Ответить
Поделиться темой: ✈ Telegram VK

Вернуться в «Языки программирования»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость