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

パッケージ詳細v3.1.2

retry

ネットワーク経由でのリクエスト時に役立つ、非同期関数を自動再試行ロジックと指数バックオフでラップするためのユーティリティ。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
261万
いいね数
1150
Pub ポイント
160

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

flutter pub add retry

パッケージ概要

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

リトライパッケージは、指数バックオフを使用して非同期関数を自動的に再試行ロジックでラップする簡単なユーティリティを提供します。ネットワークリクエストが一時的な接続問題により失敗する可能性がある場合に特に役立ちます。関数をリトライロジックでラップすることで、開発者は手動でリトライメカニズムを実装せずに堅牢性を確保できます。このパッケージは軽量であり、Dartアプリケーションにスムーズに統合されます。Android、iOS、Web、macOS、Windows、Linuxを含むすべての主要プラットフォームをサポートしています。

用途

  • ネットワーク要求のレジリエンス
  • APIコールの再試行
  • 一時的なサービス障害
  • バックグラウンドタスクの信頼性
  • データベース操作の再試行
  • ストリーミングデータの回復

主な機能

  • 指数バックオフ戦略
  • エラー時の自動再試行
  • 再試行回数の設定可能
  • async/await をサポートしています
  • 軽量で最小限の依存関係
  • Platform-agnostic

適している対象

  • ネットワーク集約型アプリ
  • クラウドサービス統合
  • オフライン優先のアプリケーション
  • マイクロサービス通信
  • リアルタイムデータ同期
  • 高可用性システム

注意事項

  • 障害発生時に遅延が増加する可能性があります
  • 注意を払わずに同値演算には適していません
  • 再試行制限の慎重な設定が必要です
  • 誤用された場合、リソースの枯渇を引き起こす可能性があります
  • タイムアウト処理と最適に組み合わせる
  • 適切なエラーハンドリングを置き換えるべきではない

元の README

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

Dart Neats

A collection of a small neat packages for dart.

Disclaimer: This is not an officially supported Google product.

This repository is meant as a playground where small neat packages are cultivated. If package grows too large and complex and needs a dedicated issue tracker it should be moved to a dedicated repository.

Each folder in this repository contains a neat pub package. This project aims to use a separate package whenever it makes sense to have an independent major version. This often means splitting functionality into separate packages, which can be reused independently.

Package Description Version Test
acyclic_steps An explicit acyclic step dependency framework with concurrent evaluation and dependency injection. pub package acyclic_steps
canonical_json Encoder and decoder for a canonical JSON format, useful when cryptographically hashing or signing JSON objects. pub package canonical_json
chunked_stream Utilities for working with chunked streams, such as byte streams which is often given as a stream of byte chunks with type Stream<List<int>>. pub package chunked_stream
dartdoc_test Utilities for testing code snippets embedded in documentation comments. pub package dartdoc_test
http_methods List of all HTTP methods registered with IANA as list of strings, and metadata such as whether a method idempotent. pub package http_methods
neat_cache A neat cache abstraction for wrapping in-memory or redis caches. pub package neat_cache
neat_periodic_task Auxiliary classes for reliably running a periodic task in a long-running process such as web-server. pub package neat_periodic_task
pem PEM encoding/decoding of textual keys following RFC 7468, supporting both lax/strict-mode, and certificates chains of concatenated PEM blocks. pub package pem
retry Utility for wrapping an asynchronous function in automatic retry logic with exponential back-off, useful when making requests over network. pub package retry
safe_url_check Check if an untrusted URL is broken, without allowing connections to a private IP address. pub package safe_url_check
sanitize_html Function for sanitizing HTML to prevent XSS by restrict elements and attributes to a safe subset of allowed values. pub package sanitize_html
slugid A URL-safe base64 encoding for UUIDv4 stripped of padding. Useful when embedding short random UUIDs in URLs. pub package slugid
typed_sql Package for doing SQL with some type safety. pub package typed_sql
vendor Utility for vendoring packages into a project and rewriting import/export statements. pub package vendor

Repository Management

Packages in this repository uses pub workspaces a single dart pub get will resolve dependencies for all of them. Configuration of Github Actions, issue templates, issue labels, etc is automated with scripts in tool/.

Contributing

We love patches and contributions, please refer to CONTRIBUTING.md for technicalities on CLA and community guidelines. As this project aims to build neat packages using other neat packages we might also accept proposals for new neat packages, though it's often easier to publish independently.

License

Unless stated otherwise contents in this repository is licensed under Apache License 2.0, see LICENSE.

カテゴリー

ソースリポジトリ

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

ランキング