计算 AmazonEventBridge PutEvents事件入口大小 - Amazon EventBridge
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

计算 AmazonEventBridge PutEvents事件入口大小

您可以发送自定义事件到EventBridge通过使用PutEventsaction. 为提高效率,可将多个事件条目批量注入到一个请求中 条目总大小必须小于 256KB。您可以在发送活动之前计算入场大小。

注意

大小限制是对条目. 即使条目大小低于大小限制,事件在EventBridge由于事件的 JSON 表示形式具有必要的字符和键,因此始终大于条目大小。有关更多信息,请参阅 亚马逊EventBridge事件

EventBridge计算PutEventsRequestEntry尺寸如下:

  • 如果已指定,则Time参数为 14 个字节。

  • 这些区域有:SourceDetailType参数是其 UTF-8 编码形式的字节数。

  • 如果已指定,则Detail参数是其 UTF-8 编码形式的字节数。

  • 如果指定,则每个条目Resources参数是其 UTF-8 编码形式的字节数。

以下示例 Java 代码计算给定的大小。PutEventsRequestEntry对象。

int getSize(PutEventsRequestEntry entry) { int size = 0; if (entry.getTime() != null) { size += 14; } size += entry.getSource().getBytes(StandardCharsets.UTF_8).length; size += entry.getDetailType().getBytes(StandardCharsets.UTF_8).length; if (entry.getDetail() != null) { size += entry.getDetail().getBytes(StandardCharsets.UTF_8).length; } if (entry.getResources() != null) { for (String resource : entry.getResources()) { if (resource != null) { size += resource.getBytes(StandardCharsets.UTF_8).length; } } } return size; }
注意

如果条目大小大于 256KB,我们建议将事件放在 Amazon S3 对象中,并在PutEvents条目。