Solana Direct Shreds (ShredStream) が TypeScript でも利用可能に
多くの開発者からの要望を受け、TypeScriptでのShredStream利用を可能に

ELSOUL LABO B.V.(本社:オランダ・アムステルダム、代表取締役CEO:川崎文武)とValidators DAOは、Solana Direct ShredsのTypeScript対応を実現し、Solana最速のデータストリームをTypeScriptでも利用できるようになったことをお知らせします。
Solana Direct Shreds Streamは、Geyser gRPC Streamよりも高速であるとご利用の皆様から好評いただいております。これまで、ShredStreamのクライアントは主にRust製のものだけが利用されてきましたが、この度、Validators DAOはTypeScript環境でもShredStreamを利用できるようにした新しいソリューションを発表しました。
TypeScriptでのShredStream利用
Solanaのデータストリーミングにおいて、ShredStreamはその高速性から非常に多くの支持を集めています。これまでは、RustのみがShredStreamのクライアント実装として利用されていたため、TypeScriptユーザーは利用において不便さを感じていました。
今回、Validators DAOは多くの開発者からの要望を受け、npmパッケージ「Solana Stream SDK v0.3.0以降」において、TypeScriptでのShredStream利用を可能にしました。これにより、開発者はより簡単にSolanaのリアルタイムデータストリームを利用できるようになります。
Solana Stream SDK (npm) - https://www.npmjs.com/package/@validators-dao/solana-stream-sdk
NAPI + Rust による高速デコード
TypeScriptではSolanaのShredsをデコードすることができなかったという課題がありましたが、NAPI(Node-API)という技術を使用し、このデコード部分にのみRustを適用することにより、解決しました。これにより、Rustの高いパフォーマンスを活かしながら、TypeScriptでの利用を実現しました。
Solana Entry Decoder - npm: https://www.npmjs.com/package/@validators-dao/solana-entry-decoder
NAPIとWASMの違い
NAPIは、Node.jsとネイティブコード(Rustなど)との連携をシンプルかつ効率的に実現するために設計されたAPIです。Node.jsのネイティブモジュールをRustなどの他のプログラミング言語と統合し、高いパフォーマンスを維持しつつ、簡単に利用できるのが特徴です。一方で、WASM(WebAssembly)は主にブラウザで動作するコードを実行するための技術で、異なる目的で使用されます。NAPIを選択する理由は以下の通りです:
-
パフォーマンス: NAPIはNode.jsとRust間で直接バインディングを提供し、WebAssemblyに比べてより低いオーバーヘッドで高いパフォーマンスを発揮します。
-
簡単な統合: NAPIはNode.jsとRustを効率的に統合し、追加のツールや設定なしでメモリ管理や関数呼び出しを行うことができます。
-
メモリ効率: NAPIはメモリ管理をより効率的に行い、WASMに比べてメモリリークや不必要なガベージコレクションのリスクを抑えます。
-
デバッグと保守性の向上: NAPIで作成されたネイティブモジュールはデバッグが容易で、WASMのように特殊環境の難解なデバッグを避けることができます。
-
幅広い互換性: NAPIは多くのNode.jsバージョンにネイティブで対応しており、環境特有の調整や追加のコンパイル手順が不要です。
Node-API - Node.js: https://nodejs.org/api/n-api.html#node-api
無料トライアルで高速ストリームを体験

Validators DAOの公式Discordでは、Solana Direct Shreds Streamの7日間無料トライアルが実施されています。この機会に、最速のSolanaデータストリームを体験し、Solanaプロジェクトやトレーディングにお役立てください。
-
ERPC公式サイト - https://erpc.global/ja
-
Validators DAO 公式 Discord - https://discord.gg/C7ZQSrCkYR
Solana Stream SDK v0.3.0の主な特徴

-
即時利用可能: 特別な設定や追加コードは不要で、すぐに利用開始できます。
-
マルチプラットフォーム対応: TypeScript(NPM)およびRust(Crates.io)をサポート。
-
高度なフィルタリング機能: トランザクションやアカウントベースのフィルタリングが可能。
-
高性能ストリーム対応: Geyser gRPC、ShredStream、ERPC Direct Shredsなど多様な高速ストリームに対応。
詳細については以下をご覧ください:
-
Solana Stream SDK(GitHub)- https://github.com/ValidatorsDAO/solana-stream
-
npm (TypeScript) - https://www.npmjs.com/package/@validators-dao/solana-stream-sdk
-
Crates.io (Rust) - https://crates.io/crates/solana-stream-sdk
今後の展開
Validators DAOは、皆様からのフィードバックをもとに、今後もSolanaエコシステムをさらに強化するためのツールやライブラリをオープンソースで開発し続けてまいります。Solanaのデータストリーミング技術の進化にご期待ください。
Validators DAO公式Discord - https://discord.gg/C7ZQSrCkYR
すべての画像