rustfs-protos 0.0.3

Protocol definitions for RustFS, providing gRPC and FlatBuffers interfaces for communication between components.
Documentation

RustFS

RustFS Protos - Protocol Buffer Definitions


📖 Overview

RustFS Protos provides protocol buffer definitions and gRPC service interfaces for the RustFS distributed object storage system. It defines the communication protocols, message formats, and service contracts used across all RustFS components.

Note: This is a foundational submodule of RustFS that provides essential communication protocols for the distributed object storage system. For the complete RustFS experience, please visit the main RustFS repository.

✨ Features

📡 gRPC Services

  • Storage Service: Core storage operations (get, put, delete)
  • Admin Service: Administrative and management operations
  • Metadata Service: Metadata management and queries
  • Lock Service: Distributed locking and coordination

📦 Message Types

  • Storage Messages: Object and bucket operation messages
  • Administrative Messages: Cluster management messages
  • Metadata Messages: File and object metadata structures
  • Error Messages: Standardized error reporting

🔧 Protocol Features

  • Versioning: Protocol version compatibility management
  • Extensions: Custom field extensions for future expansion
  • Streaming: Support for streaming large data transfers
  • Compression: Built-in message compression support

🛠️ Code Generation

  • Rust Bindings: Automatic Rust code generation
  • Type Safety: Strong typing for all protocol messages
  • Documentation: Generated API documentation
  • Validation: Message validation and constraints

📦 Installation

Add this to your Cargo.toml:

[dependencies]
rustfs-protos = "0.0.3"

🔧 Usage

🌍 Related Projects

This module is part of the RustFS ecosystem:

📚 Documentation

For comprehensive documentation, visit:

🔗 Links

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

📄 License

Licensed under the Apache License, Version 2.0. See LICENSE for details.