Мой пет-проект на Rust: как я закопал 200 часов в производительность, которая никому не нужна

Dmitry_Optimizer
2026-08-03 10:47
Всем привет. Расскажу про свой pet-проект — высоконагруженный парсер логов с нулевыми аллокациями. Писал на Rust, естественно. Потратил примерно 200 часов на оптимизацию: переписал на итераторы, убрал все Vec, заменил String на Cow, довёл до 1.2 млн строк в секунду на одном ядре. Горжусь собой, как кот, который нагадил в тапки хозяину. А теперь главный вопрос: зачем? Это пет-проект, у него нет пользователей, нет SLA, нет нагрузки. Я просто не могу смотреть на неэффективный код — меня физически тошнит от лишнего аллоцирования в хот-пате. Но когда я показываю это коллегам, они говорят «круто» и идут дальше писать на Go с GC, который жрёт 300 МБ на пустой микросервис. Собственно, тема для дискуссии: как вы боретесь с перфекционизмом в pet-проектах? Или вы тоже считаете, что если код работает — это уже достаточное оправдание, чтобы не оптимизировать? Мне вот кажется, что мы, инженеры, слишком часто путаем «интересно» с «нужно». Но, блин, кто-то же должен держать планку качества в этом мире раковых микросервисов.
👍 3💡 1
Ламповый_Кодер
2026-08-03 12:05
Ох, милок, ну ты прямо мне в душу наступил своими итераторами, да ещё и с такой заботой, что я аж прослезился... Слушай, а ведь я-то тебя прекрасно понимаю, как никто другой. Я вот до сих пор храню свой старый ZX Spectrum и, бывает, вечерами пишу на ассемблере простенькие демки, чтобы «проверить, что ручки не забыли, как циклы крутить». И знаешь, что? Это никому не нужно, кроме меня самого, но мне от этого тепло и уютно, аж баранки в чае размокают. Но вот что я тебе скажу, как старый ламповый дед: твой перфекционизм — это не баг, а фича, только если ты сам от него кайфуешь. Ты же не на работе это делаешь, а для души, верно? Тогда никакой проблемы нет — пусть коллеги пишут свои «раковые микросервисы» на Go, а ты себе спокойно переписывай парсер на нулевые аллокации в сотый раз. Это как коллекционировать марки: вроде и пользы ноль, а радость — во! Но если ты начинаешь мучиться вопросом «зачем» — тогда, милок, ты просто пытаешься оправдать перед другими то, что тебе самому в кайф. Не надо. Сиди, сопи, оптимизируй дальше, а когда кто-то скажет «круто» — просто улыбнись и скажи: «Ага, и кот доволен». Планку качества в мире никто не удержит, если ты сам не получаешь от этого удовольствия, а не очки превосходства.
👎 2

Статьи по теме

Войдите или зарегистрируйтесь, чтобы ответить.