[アップデート] Amazon EventBridgeのイベントバスに乗せられるデータの最大サイズが1MBに拡大されました

[アップデート] Amazon EventBridgeのイベントバスに乗せられるデータの最大サイズが1MBに拡大されました

Amazon EventBridgeのイベントバスに乗せられるデータの最大サイズが1MBに拡大されました。従来の256KB制限だと特定のケースで引っかかったりするので、非常にありがたいアップデートです。
2026.01.30

Amazon EventBridgeイベントバスに乗せられるデータが最大1MBまで対応したぞ

おのやんです。

この度のアップデートにより、Amazon EventBridge(以下、EventBridge)のイベントバスに乗せられるデータの最大サイズが256KBから1MBへ拡大されました。

https://aws.amazon.com/about-aws/whats-new/2026/01/amazon-eventbridge-increases-event-payload-size-256-kb-1-mb

この記事では、AWS CLIでコマンドを実行して1MBに近いデータを実際に送信してみたいと思います。

アップデートの概要

EventBridgeでは、さまざまなAWSサービス・クライアントで発生するイベントを受信して、他のAWSサービスやその他のターゲットにイベントを配信できます。このイベントバスでは、ターゲットに配信する前にデータ変換などをかけたりすることができたりします。

(参考:Amazon EventBridge のイベントバス - Amazon EventBridge

従来では、このイベントバスにて扱える最大データサイズは256KBでした。そのため、256KBを超えるデータを扱う場合は、複数のイベントに分割したり、圧縮処理が必要でした。場合によってはAmazon S3やAmazon DynamoDBなどにデータを保存して、イベントには参照情報のみを含める、みたいな対応も必要でした。(筆者も、このあたりの機能要件を設計したことがあります)

今回のアップデートで、EventBridgeのイベントバスに配信できるデータの最大サイズが256KBから1MBに拡大されました。4倍も大きくなっていますね。ニュージーランド、タイ、マレーシア、台北、メキシコ以外の全てのリージョンで、こちらのアップデートを利用可能です。

実際にやってみた

ということで、実際にAWS CLIを使って1MBくらいのデータをEventBridgeに送信してみましょう。

まず、EventBridgeのテスト用イベントバスを作成します。

aws events create-event-bus --name test-large-payload-bus

AWSマネジメントコンソールから見ると、正常に作成されていますね。

スクリーンショット 2026-01-30 15.15.32

次にPythonを使って、256KBを超えるデータを生成します。今回は1MBの上限に近い、約900KBのJSONデータを生成します。

# Pythonファイルを作成しておく
$ cat generate-large-payload.py

import json

# 約900KBのテストデータを生成
detail_data = {
    "testData": "A" * 900000  # 900KB相当の文字列
}

large_data = {
    "Source": "custom.largePayloadTest",
    "DetailType": "Large Payload Test",
    "Detail": json.dumps(detail_data)
}

with open('large-payload.json', 'w') as f:
    json.dump([large_data], f, indent=2)

print(f"Payload size: {len(json.dumps(large_data)) / 1024:.2f} KB")

# Pythonコードを実行して、900KBのJSONファイルを生成
$ python3 generate-large-payload.py
Payload size: 879.13 KB

今回の検証はMacで実施しているのですが、Macのファインダーから、さきほど生成したJSONファイルのサイズを見てみます。ちゃんと900KBになっていますね。

スクリーンショット 2026-01-30 16.08.43

このJSONファイルを乗せた状態で、EventBridgeバスにイベントを配信します。

aws events put-events --entries file://large-payload.json

こちらのように表示されていたら、正常に実行できています。

{
    "FailedEntryCount": 0,
    "Entries": [
        {
            "EventId": "75ec9eb4-8f86-48c7-ff20-ca17ff3d230e"
        }
    ]
}

数分時間を置いたあとに、AWSマネジメントコンソール上のEventBridgeイベントバス詳細画面に移動し、そこの「モニタリング」タブを開きます。ここに、Amazon CloudWatchメトリクスを確認してみます。PutEventsRequestSize(参考:Amazon EventBridge のモニタリング - Amazon EventBridge)のメトリクスを確認すると、ここのリクエストサイズが、先ほど生成したJSONファイルのサイズとほぼ同じ900KBになっているのが確認できました。ちゃんと256KBを超えたデータに対応していますね。

スクリーンショット 2026-01-30 16.07.02

ちなみに、今回引き上げられた上限値である1MBを超えるデータだと、しっかりエラーになります。先ほどのPythonコードで、2MBのJSONファイルを食わせてみると、Total size of the entries in the request is over the limit.というエラーメッセージが確認できました。

$ aws events put-events --entries file://large-payload.json

An error occurred (ValidationException) when calling the PutEvents operation: Total size of the entries in the request is over the limit.

EventBridgeのイベントバスがより使いやすくなった

EventBridgeイベントバスのデータ量制限、意外と特定のケースで引っかかったりするんですよね。筆者もお客様への技術支援の中で実際に機能要件として設計したことがあります。

AWS上でAIなどのアプリケーションを動かすケースが増えていく中、LLMへのプロンプトといった、送信するデータ量自体が増えていきがちな昨今です。今回のアップデートのおかげでEventBridgeを採用しやすくなり、非常にありがたいアップデートだな〜と思いました。

この記事をシェアする

FacebookHatena blogX

関連記事