- Basit ve yeniden kullanılabilir bileşenlerle eşzamanlı programları kolayca kurmayı sağlar
- Go'nun doğal kanal tabanlı modelini korurken boilerplate kodu azaltır
Başlıca özellikler ve hedefler
- Yaygın eşzamanlılık işlerini basitleştirme
- Paralel iş çalıştırma, gerçek zamanlı olay işleme gibi senaryolarda güvenli ve temiz bir yöntem sunar.
- Goroutine, kanal ve hata yönetiminin karmaşıklığını soyutlar.
- Eşzamanlılık düzeyi üzerindeki tam kontrolü geliştiriciye bırakır.
- Modüler kod yazımını destekleme
- Fonksiyonlar, Go kanallarını girdi olarak alıp dönüştürülmüş kanallar döndürecek şekilde çalışır.
- Unix pipe'larına benzer biçimde birden fazla iş zincir gibi bağlanabilir.
- Hata işlemeyi merkezileştirme
- Pipeline içinde oluşan hatalar tek bir noktadan ele alınabilir.
- Daha karmaşık durumlar için, hataları belirli noktalarda yakalamaya veya işlemeye yarayan araçlar da sunar.
- Akış işlemeyi basitleştirme
- Sonsuz akışları işleyebilir.
- Belleğe sığmayan büyük veriler veya gerçek zamanlı işleme için uygundur.
- Gelişmiş işleri destekleme
- Batch işleme, Map-Reduce, akış bölme, birleştirme gibi gelişmiş özellikler sunar.
- Yalnızca doğrusal değil, DAG (Directed Acyclic Graph) yapısında pipeline'ları da destekler.
- Özel genişletmeleri destekleme
- Standart Go kanallarıyla uyumludur ve kullanıcı tanımlı fonksiyonlar eklemek kolaydır.
- Hafiflik ve bağımlılıkları kaldırma
- Küçük API'si ve zero-dependency yapısıyla mevcut projelere kolayca entegre edilebilir.
- Kaynak kullanımını en aza indirir.
Henüz yorum yok.