パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v1.0.0

rsocket

Dart 用の RSocket

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
86
いいね数
19
Pub ポイント
100

パッケージをインストール

flutter pub add rsocket

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

Dart用のRSocketは、クライアントとサーバー間の効率的な双方向通信を可能にする軽量でリアクティブなネットワーキングプロトコル実装です。さまざまなトランスポートレイヤーを介してストリーミング、リクエスト-レスポンス、リクエスト-ストリーム、ファイア・アンド・フォーゲットパターンをサポートしています。低遅延、高スループットのシナリオに最適化されており、信頼できるデータフローを必要とするリアルタイムアプリケーションに理想的です。Dartのasync/await構文とシームレスに統合され、モバイル、Web、デスクトップなど複数のプラットフォームで動作します。RSocketプロトコル仕様に準拠しており、他のRSocket実装との互換性を確保しています。

用途

  • リアルタイムデータストリーミング
  • 双方向通信
  • 低遅延マイクロサービス
  • イベント駆動アーキテクチャ
  • 高スループットメッセージング
  • リモートプロシージャ呼び出し

主な機能

  • リアクティブプログラミングモデル
  • 複数のインタラクションモデルをサポート
  • クロスプラットフォーム互換性
  • 軽量で効率的
  • 組み込みエラー処理
  • Dart async/await との統合

適している対象

  • リアルタイムアプリ
  • マイクロサービス通信
  • IoTデバイス
  • ストリーミング API
  • 高性能バックエンド

注意事項

  • RSocket サーバーのサポートが必要です
  • HTTP クライアントと比べてドキュメントが限られている
  • 反応型のコンセプトに対する学習曲線が急峻
  • シンプルな REST ベースのリクエストには適していません
  • 認証のための追加のセットアップが必要になる場合があります

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

RSocket Dart SDK

Examples

Client
import 'package:rsocket/rsocket_connector.dart';
import 'package:rsocket/payload.dart';

void main() async {
  var rsocket = await RSocketConnector.create().connect('tcp://127.0.0.1:42252');
  var result = await rsocket.requestResponse(Payload.fromText('text/plain', 'Ping'));
  print(result.getDataUtf8());
}
Server
import 'package:rsocket/rsocket_server.dart';
import 'package:rsocket/payload.dart';
import 'package:rsocket/rsocket.dart';

void main() async {
  const listenUrl = 'tcp://0.0.0.0:42252';
  var closeable = await RSocketServer.create(requestResponseAcceptor((payload) {
    return Future.value(Payload.fromText('text/plain', 'Pong'));
  })).bind(listenUrl);
  print('RSocket Server started on ${listenUrl}');
}

RSocket Service Proxy & Routing

Please refer https://github.com/rsocket/rsocket-dart/tree/master/lib/route

RSocket

  • Operations
    • [x] REQUEST_FNF
    • [x] REQUEST_RESPONSE
    • [x] REQUEST_STREAM
    • [ ] REQUEST_CHANNEL
    • [x] METADATA_PUSH
  • More Operations
    • [x] Error
    • [ ] Cancel
    • [x] Keepalive
  • QoS
    • [ ] RequestN
    • [ ] Lease
  • Transport
    • [x] TCP
    • [x] Websocket
  • High Level APIs
    • [x] Client
    • [x] Server
  • Misc
    • [x] RxDart

References

  • RSocket: https://rsocket.io
  • Dart: https://dart.dev/

カテゴリー

依存関係

依存関係一覧 2 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。