rill

Если пишешь на Go и часто сталкиваешься с конкурентностью, то Rill точно стоит твоего внимания. Он здорово упрощает работу с горутинами и каналами, позволяя собирать сложные конвейеры из простых, переиспользуемых частей. Больше не нужно писать кучу бойлерплейта, чтобы запустить параллельную обработку или стриминг данных.
Это toolkit для Go, который даёт композитную конкурентность. Он написан на Go и фокусируется на работе с каналами, чтобы ты мог строить пайплайны, как в Unix, но для Go-кода. Никаких лишних зависимостей, всё легковесно и встраивается в любой проект.
Что мне особенно понравилось, так это возможность "бесшовной" обработки ошибок и "умное" батчирование. Rill сам протаскивает ошибки по всему пайплайну, а батчинг с таймаутом позволяет эффективно работать как с быстрыми, так и с медленными потоками данных, не теряя при этом отзывчивость.
https://github.com/destel/rill | 1846 звёзд
#сервисы


