DynamoDBとEventBridge

🔥 Vibe プロンプト

「シングルテーブル設計のDynamoDBテーブルを設計。EventBridgeでクロスサービスイベントを管理。」

シングルテーブル設計

# PK: ENTITY#ID, SK: ENTITY#METADATA

table.put_item(Item={
    'PK': 'USER#user123',
    'SK': 'PROFILE',
    'name': 'Alice',
    'email': 'alice@example.com'
})

table.put_item(Item={
    'PK': 'USER#user123',
    'SK': 'ORDER#ord456',
    'order_id': 'ord456',
    'total': 99.99
})

# ユーザーの全注文をクエリ
response = table.query(
    KeyConditionExpression='PK = :pk AND begins_with(SK, :sk)',
    ExpressionAttributeValues={':pk': 'USER#user123', ':sk': 'ORDER#'}
)

EventBridge

resource "aws_eventbridge_rule" "order_created" {
  name = "order-created"
  event_pattern = jsonencode({
    source = ["myapp.orders"]
    detail-type = ["OrderCreated"]
  })
}
eventbridge.put_events(Entries=[{
    'Source': 'myapp.orders',
    'DetailType': 'OrderCreated',
    'Detail': json.dumps({'order_id': 'ord456'}),
    'EventBusName': 'default'
}])

イベント駆動の利点

  • 疎結合なサービス
  • 非同期処理(耐障害性)
  • 拡張が容易
  • 組み込みのリトライとDLQ

章のまとめ

  • コアコンセプトと原理を理解
  • 実装方法とテクニックを習得
  • 一般的な問題と解決策に精通
  • 実際のプロジェクトに適用可能

さらに読む

  • 公式ドキュメントとAPIリファレンス
  • GitHubのオープンソース例
  • 技術書とオンラインコース
  • コミュニティディスカッションと技術ブログ

実装例

基本例

# 完全な実装例を提供します

手順

  1. セットアップ: 開発環境の設定
  2. データ: 必要なデータの準備
  3. 実装: コア機能の構築
  4. テスト: 動作確認
  5. 最適化: パフォーマンスの向上

よくあるエラー

| エラー種別 | 原因 | 解決方法 | |-----------|------|---------| | コンパイル | 構文 | コードの構文を確認 | | 実行時 | 環境 | 依存パッケージの確認 | | 論理 | アルゴリズム | ステップごとのデバッグ | | パフォーマンス | 効率 | プロファイラーの使用 |

コード例

import sys

def main():
    print("Hello, World!")

if __name__ == "__main__":
    main()

参考資料

  • 公式ドキュメント
  • APIリファレンス
  • オープンソース例
  • コミュニティディスカッション

完全なチュートリアルをロック解除

このチャプターは有料コンテンツです。プロジェクトに参加して、10以上の神レベルのPromptや実際のソースコード例を含む、5000字以上の深い分析をロック解除してください!