このプロジェクトについて

FastDFSは、ファイルの保存、同期、アクセス(アップロードとダウンロード)を処理するために設計された、オープンソースの高性能分散ファイルシステム(DFS)です。大容量と負荷分散の課題に対処し、写真共有や動画共有サイトなどのファイルベースのサービスに適しています。 主な機能は以下の通りです: - グループ化されたストレージサーバーを持つ、シンプルで柔軟なピアツーピア構造により、単一障害点を排除 - FastDFSによって生成されたファイルIDがファイルアクセスの資格情報として機能し、従来のネームサーバーやメタサーバーが不要 - 大・中・小ファイルのサポート。多数の小ファイルを処理するための小ファイルのマージ保存を含む - ストレージサーバーは複数ディスクをサポートし、単一ディスク障害時のデータ復旧が可能 - nginxとのシームレスな統合のためのnginx拡張モジュール - IPv6、NATネットワーク、およびクロスデータセンターまたはハイブリッドクラウド展開のサポート - 読み書き分離とクロスデータセンターの災害バックアップ - アペンダーファイルに対するtruncate、append、modify操作のAPI - マルチスレッドのファイルアップロードとダウンロード、および途切れからの再開(レジューム)サポート アーキテクチャ: FastDFSは、trackerとstorageの2つの役割で動作します。trackerはファイルアクセスのスケジューリングと負荷分散を処理し、storageサーバーはファイルを保存し、ファイルメタデータ(width=1024などのキーと値のペア)を管理します。trackerとstorageの両クラスターは、オンラインサービスに影響を与えることなくサーバーの追加や削除が可能です。storageサーバーは大容量のためにファイルグループに編成され、グループ内のサーバーは互いにバックアップし、負荷分散を行います。ストレージ容量が不足した場合、追加のグループを追加して容量を拡張できます。 ファイル識別は、グループ名とファイル名の2つの部分で構成されます。 クライアントSDKは以下で利用可能です: - C言語(ソースコードに含まれる) - PHP拡張(ソースコードに含まれる) - Java SDK(別リポジトリ) - Go SDK(別リポジトリ) FastDFSは軽量なオブジェクトストレージソリューションです。データベース、K8s、仮想マシンに強いデータ一貫性を必要とする一般的な分散ファイルシステムには、FastCFSが代替として推奨されます。