仕組み
AWS SDK for Ruby は、Ruby のデベロッパーにとってなじみ深く一貫性のある一連のライブラリを提供し、AWS サービスを簡単に利用できるようにします。AWS SDK はどれも認証情報の管理、再試行、データマーシャリング、シリアル化といった API ライフサイクルに関する考慮事項をサポートしています。
この SDK は、Amazon S3、Amazon EC2、DynamoDB など、AWS のサービス向けの Ruby クラスを提供するため、コーディングの複雑さが軽減されます。SDK は、RubyGems を通じてセマンティックにバージョン管理された個別のサービスジェムとして利用できます。
主な特徴
使い慣れた Ruby エクスペリエンス
AWS SDK for Ruby は、Ruby のデベロッパーにとってなじみ深く一貫性のある一連のライブラリを提供し、AWS サービスを簡単に利用できるようにします。AWS SDK はどれも認証情報の管理、再試行、データマーシャリング、シリアル化といった API ライフサイクルに関する考慮事項をサポートしています。
モジュール性
AWS SDK for Ruby はモジュール型アーキテクチャで、サービスごとに個別のジェムが用意されています。これにより、実際に使用するコードのみをコンパイルすることで、コンパイル時間とバイナリサイズを最小限に抑えることができます。
豊富な機能
AWS SDK for Ruby は、応答ページネーション、事前定義されたステータス変更についてリソースをポーリングするウェイター、EC2 メタデータクライアント、双方向イベントストリーミングを行うサービスなど、豊富なクライアント機能をサポートしています。
リソース
サポート対象のジェム
AWS SDK for Ruby のジェムはすべて RubyGems で入手できます。使用する AWS サービス用のジェムのみをインストールすることをお勧めします。ジェムの完全なリストは GitHub で公開されています。
また、ご使用のアプリケーションでサポートされている以下のジェムもご検討ください。
- aws-sdk-rails: SQS Active Job や SES Action Mailers などの Ruby on Rails 統合を提供します。
- aws-record: Amazon DynamoDB のデータマッピング抽象化を提供します。
- aws-sessionstore-dynamodb: DynamoDB を使用するラックアプリケーションのセッションストレージを提供します。
- aws-crt: AWS Common Runtime (CRT) バインディングを提供します。
- hearth: Smith を使って汎用コードで生成された Ruby SDK のコア機能を提供します
Smithy Ruby
Rails ウェブサイトと通信するための汎用コード生成 SDK に興味がありますか?
Smithy Ruby を紹介する RubyKaigi 2024 のプレゼンテーションをご覧ください。Smithy Ruby は、Smithy モデルを使用して Ruby SDK を生成する Smithy の実装です。Smithy は、サービスと SDK を定義するためのプロトコルに依存しない言語です。