패키지, 저장소 및 앱 카테고리 검색

패키지 상세v1.0.0

rsocket

Dart용 RSocket

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
86
좋아요
19
Pub 점수
100

패키지 설치

flutter pub add rsocket

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

Dart용 RSocket은 클라이언트와 서버 간의 효율적인 양방향 통신을 가능하게 하는 가벼운 반응형 네트워킹 프로토콜 구현입니다. 다양한 전송 계층을 통해 스트리밍, 요청-응답, 요청-스트림 및 발사 후 잊기 패턴을 지원합니다. 낮은 지연 시간과 높은 처리량이 필요한 환경에 최적화되어 있으며, 신뢰할 수 있는 데이터 흐름이 필요한 실시간 애플리케이션에 적합합니다. Dart의 async/await 구문과 원활하게 통합되며 모바일, 웹, 데스크톱 등 여러 플랫폼에서 작동합니다. RSocket 프로토콜 사양을 따르므로 다른 RSocket 구현체와 호환됩니다.

사용 사례

  • 실시간 데이터 스트리밍
  • 양방향 통신
  • 저지연 마이크로서비스
  • 이벤트 기반 아키텍처
  • 고처리량 메시징
  • 원격 절차 호출

주요 기능

  • 반응형 프로그래밍 모델
  • 다양한 상호작용 모델을 지원
  • 크로스 플랫폼 호환성
  • 경량이고 효율적
  • 내장형 오류 처리
  • Dart async/await와의 통합

적합한 대상

  • 실시간 앱
  • 마이크로서비스 통신
  • 사물인터넷 장치
  • 스트리밍 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 개

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.