公式インテグレーション&SDK
Rust 向け非同期ゼロ割り当て画像最適化パイプライン
Actix-Web、Axum、Tokio で構築された高スループットなバックエンドサービスに SmallPict を統合。メモリ効率を極限まで高めてメディアを処理します。
インストール:
RUST パッケージcargo add smallpict-rs実装コード例
rustuse smallpict_rs::{SmallPictClient, OptimizeOptions, ImageFormat};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = SmallPictClient::new("sp_live_secret_key_xxxxx")?;
let image_bytes = tokio::fs::read("input.jpg").await?;
let optimized = client.optimize(&image_bytes, OptimizeOptions {
format: ImageFormat::Avif,
quality: 80,
max_width: Some(1920),
strip_metadata: true,
}).await?;
tokio::fs::write("output.avif", optimized.bytes).await?;
println!("Savings: {}% ({}ms)", optimized.savings_percentage, optimized.duration_ms);
Ok(())
}連携ステップ
11. 依存関係の追加
Cargo.toml に smallpict-rs を追加します。
22. クライアントの初期化
API キーを使用して SmallPictClient を初期化します。
33. バイトストリームの最適化
生の画像バイトをストリーミングし、圧縮された AVIF/WebP バッファを非同期に受け取ります。
主なメリット
- Tokio と Reqwest による非同期ノンブロッキング I/O
- メモリリークゼロかつスレッドセーフなクライアント設計
- ローカルディスクへの書き込みを行わない直接ストリーム処理
- 40ms 未満の超高速実行時間
公式開発者ドキュメント
完全な実装ガイドと API 仕様をお探しですか?
公式 Rust Crate 開発者ガイドで、パラメータ仕様、認証、エラーコード、ローカル検証手順をご確認いただけます。
Rust Crate の画像パイプラインを最大化
アプリケーションで 50ms 未満の高速 AVIF / WebP 配信を実現。初期費用なし、即時利用可能なサンドボックスキーを提供。
