Solana Stream SDK, Solana v3 Yükseltmesi İçin Tamamen Güncellendi

Solana Stream SDK, Solana v3 Yükseltmesi İçin Tamamen Güncellendi

Solana Stream SDK, Solana v3 Yükseltmesi İçin Tamamen Güncellendi
ELSOUL LABO B.V. (Merkez: Amsterdam, Hollanda; CEO: Fumitake Kawasaki) ve Validators DAO, açık kaynaklı Solana Stream SDK'nın Solana v3 yükseltmesini tam olarak destekleyen yeni sürümlerini yayımladı. Hem Rust hem de TypeScript sürümleri, yaklaşan Alpenglow döneminde Shreds ve Geyser gRPC dâhil Solana'nın gerçek zamanlı veri akışlarına güvenilir ve yüksek performanslı erişim sağlamak üzere yükseltildi.
Rust crate'i solana-stream-sdk, 0.6.1 sürümüyle artık Solana v3'ü destekliyor; TypeScript / Node.js paketi @validators-dao/solana-stream-sdk ise 0.12.0 sürümüne güncellendi. İki sürüm birlikte, Solana yeni nesil mimarisine geçerken yüksek performanslı akış işleme için ortak bir temel sunuyor.

Arka Plan – Solana v3 ve Alpenglow Neden İstemci Tarafında Güncelleme Gerektiriyor?

Solana v3, yeni Alpenglow mutabakat mimarisine doğru büyük bir geçişi temsil ediyor. Alpenglow, mevcut TowerBFT + Proof of History birleşiminin yerine ağın yanıt hızını çarpıcı biçimde artırmayı amaçlayan, yeniden tasarlanmış bir mutabakat yolu getiriyor. Alpenglow ile bugün yaklaşık 12 saniye olan kesinleşme süresinin yaklaşık 100–150 milisaniyeye inmesi bekleniyor. Bu değişim, blok üretim hızını ve gerçek zamanlı verilerin ağ genelinde yayılma özelliklerini temelden değiştiriyor.
Aynı zamanda doğrulayıcılar ve RPC operatörleri, daha sık derleme döngüleri ve yapılandırma güncellemeleri nedeniyle v3 altında artan operasyonel gereksinimlerle karşılaşıyor. Validators DAO, SLV gibi araçlarla sunucu tarafı ortamını modernleştiriyor; ancak bu geçiş kritik bir noktayı da ortaya koyuyor:
İstemci yazılımı da v3'e güncellenmelidir; aksi hâlde ağın performans kazanımlarından tam olarak yararlanılamaz.
Bu durum özellikle Shreds ve Geyser gRPC gibi gerçek zamanlı akışlar için geçerlidir. Yeni spesifikasyonları veya çalışma zamanı özelliklerini izlemeyen istemciler, zaman içinde gecikme biriktirme ya da tutarlılık kaybetme eğilimindedir. RPC düğümleri ve doğrulayıcılar v3'e geçerken istemci yazılımlarının da paralel biçimde geçiş yapması gerekiyor.
Bu Solana Stream SDK güncellemesinin amacı, söz konusu boşluğu kapatmak ve Alpenglow dönemindeki gerçek zamanlı uygulamalar için kullanıma hazır bir temel sunmaktır.

Solana Stream SDK v0.6.1 (Rust) ve v0.12.0 (TypeScript) Sürümlerindeki Yenilikler

Solana Stream SDK en başından beri hem Shreds'i hem de Geyser gRPC'yi destekleyecek şekilde tasarlandı. Bu sürümde SDK, Solana v3 üzerinde kararlı performans sağlamak ve Alpenglow tabanlı çalışma zamanına hazır olmak amacıyla çeşitli iyileştirmelerle güncellendi.

Rust Crate v0.6.1

Rust sürümü; alım satım yapanlar, indeksleyiciler ve azami veri işleme kapasitesi gerektiren tüm gerçek zamanlı iş yükleri için yüksek performanslı bir referans uygulama olarak tasarlandı. Başlıca güncellemeler şunlardır:
  • Solana v3 serisindeki protokol değişiklikleri için destek
  • Rust'ın asenkron çalışma zamanı üzerinden Shreds ve Geyser gRPC akışlarının verimli biçimde işlenmesi
  • Shreds ile ilgili protobuf tanımlarını saran iyileştirilmiş katman sayesinde akış işleme mantığının daha kolay uygulanması
  • Sürekli yüksek veri akışı altında bile gecikme birikimini en aza indirecek şekilde optimize edilmiş çok iş parçacıklı yürütme yolları
Rust sürümü, Shreds ve Geyser gRPC'den mümkün olan en yüksek performans düzeyinde tam olarak yararlanmak isteyen kullanıcılar için önerilir.

TypeScript / Node.js v0.12.0

TypeScript sürümü, arka planda Rust destekli akış işlemeyi kullanırken Node.js geliştirme ergonomisini koruyacak şekilde tasarlandı. v0.12.0 sürümünde şu iyileştirmeler yapıldı:
  • Geriye dönük uyumsuzluk yaratmamak için mevcut olay odaklı arayüzün (emitter.on gibi) tamamen korunması
  • Dâhilî akış işleme için Rust ve NAPI-RS entegrasyonu; böylece @grpc/grpc-js paketinin daha önce sınırlarına ulaştığı noktalarda Node.js'in Shreds'i güvenilir biçimde işleyebilmesi
  • Solana v3 ile uyumluluk sağlamak üzere hem Geyser gRPC hem de Shreds akışlarının işlenme biçiminin güncellenmesi
Çoğu kullanıcı için v0.12.0'a yükseltme yalnızca package.json içindeki sürümü artırmayı gerektirir; kod değişikliği gerekmez.

Node.js Tek Başına Neden Shreds'e Yetişemiyor?

ShredStream, Solana ekosistemindeki en düşük gecikmeli ve en yüksek frekanslı veri kaynağıdır. Shreds, ağ etkinliğine benzersiz bir gerçek zamanlı görünürlük sağlarken istemciden de çok yüksek işleme kapasitesi talep eder.
@grpc/grpc-js üzerinde oluşturulan Node.js istemcileri yapısal darboğazlarla karşılaşır:
  • Olay döngüsü tek iş parçacıklıdır; bu nedenle protobuf verilerinin serileştirmeden çıkarılması ile kullanıcı geri çağrıları birbirini engeller
  • Mesajlar hızla geldiğinde JavaScript iş parçacığı doygunluğa ulaşır ve işleme kuyrukları büyür
  • Tamponlar doldukça HTTP/2 akış kontrolü alım penceresini daraltır; sonunda akış duraklar ve “ağ yavaşladı” ya da “veri gelmiyor” izlenimi oluşur
Gözlemlenen pek çok durumda sorun ağda veya ShredStream sunucusunda değil, Node.js istemcisinin kendi içinde geride kalmasındadır.
Bu sınırlama, filtrelenmemiş Shreds'in ölçekli biçimde işlenmesinde Node.js'in doğasından kaynaklanır.
Rust + NAPI-RS bu engeli aşar.

Rust + NAPI-RS, Node.js Akış İşlemeyi Nasıl Hızlandırıyor?

Solana Stream SDK'nın TypeScript sürümü, aşina olunan JavaScript API'lerini korurken ağır işleri Rust'a devreder.
  • gRPC bağlantı yönetimi, akışın alınması ve protobuf verilerinin serileştirmeden çıkarılması Rust içinde asenkron olarak yürütülür
  • Node.js, işlenmiş veriyi standart bir akış veya olay yayıcı olarak alır; böylece mevcut kod değişmeden çalışmayı sürdürebilir
  • NAPI-RS, Rust ile Node.js arasındaki ek yükü en aza indirerek JavaScript arayüzünün arkasında gerçek anlamda çok iş parçacıklı veri işleme kapasitesi sağlar
Sonuç olarak Solana Stream SDK ile yazılan uygulamalar, @grpc/grpc-js kullanan yalnızca Node.js tabanlı yaklaşımlara göre çok daha yüksek Shreds ve Geyser gRPC veri akışını işleyebilir; üstelik yoğun trafik altında bile kararlı gecikme özelliklerini korur.

Tek Bir SDK'da Hem Shreds'i Hem Geyser gRPC'yi Desteklemek Neden Önemli?

Solana'nın gerçek zamanlı verileri birbirini tamamlayan iki katman olarak ele alınabilir:
  • Shreds: Doğrudan liderden yayılan, son derece düşük gecikmeli parçalar; zincir etkinliğinin mümkün olan en erken görünümünü sunar
  • Geyser gRPC: Slot, işlem ve hesap güncellemelerinin yapılandırılmış akışları; temiz ve öngörülebilir bir veri modeli sağlar
Solana Stream SDK, geliştiricilerin veri yapılarını anlamak için Geyser gRPC ile başlayıp daha sonra araç değiştirmeden veya veri işleme hatlarını yeniden yazmadan ultra düşük gecikmeli senaryolar için Shreds'e geçmesine olanak tanır.
Alpenglow blok üretimini ve onay sürecini hızlandırdıkça bu çift katmanlı yaklaşım daha da değerli hâle geliyor.

Başlarken: Kaynaklar ve Test Ortamları

Solana Stream SDK tamamen açık kaynaklıdır; hem Shreds hem de Geyser gRPC için örnek kod GitHub'da sunulmaktadır.
ERPC, gerçek dünya testleri için yüksek performanslı ShredStream ve Geyser gRPC uç noktalarında bir günlük ücretsiz deneme sunarak geliştiricilerin v3 davranışını üretim düzeyindeki koşullarda doğrulamasına imkân verir.
ERPC Resmi Web Adresi: https://erpc.global/tr/

Validators DAO Topluluğuna Katılın

Solana v3, Alpenglow, gerçek zamanlı akış tasarımı veya SDK iyileştirmeleri hakkındaki soru, geri bildirim ve tartışmalar Validators DAO topluluğunda memnuniyetle karşılanır.
Validators DAO Resmi Discord: https://discord.gg/C7ZQSrCkYR
Solana Alpenglow dönemine geçerken ağ, gerçek zamanlı performansta daha önce görülmemiş düzeylere ulaşacak. Validators DAO ve ELSOUL LABO, geliştiricilerin Solana üzerinde yeni nesil gerçek zamanlı uygulamalar oluşturmasına yardımcı olacak yüksek kaliteli açık kaynak araçlar sunmayı sürdürecek.
Süregelen desteğiniz için teşekkür ederiz.