All Products
Search
Document Center

EventBridge:Menghitung ukuran event yang diterbitkan oleh PutEvents

Last Updated:Jun 28, 2025

Topik ini menjelaskan cara menghitung ukuran event yang diterbitkan oleh operasi PutEvents. Anda dapat menambahkan beberapa event dalam satu permintaan untuk meningkatkan efisiensi.

Skenario

Anda dapat memanggil operasi PutEvents untuk menambahkan event kustom ke EventBridge. Sebelum memanggil operasi PutEvents untuk menambahkan beberapa event, hitung total ukuran semua event untuk memastikan bahwa ukurannya tidak melebihi 256 KB. Kemudian, Anda dapat menambahkan event-event tersebut dalam satu permintaan guna meningkatkan efisiensi.

Berikut adalah cara menghitung ukuran event.

Metode perhitungan

Gunakan parameter berikut untuk menghitung ukuran CloudEvent:

  • time: ukuran data umumnya 36 byte.
  • specversion: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • id: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • type: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • source: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • subject: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • dataschema: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • datacontenttype: diukur berdasarkan jumlah byte yang dikodekan dalam UTF-8.
  • data: diukur berdasarkan panjang byte[].

Kode contoh

Contoh kode Java berikut digunakan untuk menghitung ukuran sebuah CloudEvent:

int getSize(CloudEvent event) {
    int size = 0;
    if (event.getTime() != null) {
        size += 36;
    }
    size += event.getSpecversion().getBytes(StandardCharsets.UTF_8).length;
    size += event.getId().getBytes(StandardCharsets.UTF_8).length;
    size += event.getType().getBytes(StandardCharsets.UTF_8).length;
    size += event.getSource().toString().getBytes(StandardCharsets.UTF_8).length;
    size += event.getSubject().getBytes(StandardCharsets.UTF_8).length;
    size += event.getDataschema().toString().getBytes(StandardCharsets.UTF_8).length;
    size += event.getDatacontenttype().getBytes(StandardCharsets.UTF_8).length;
    size += event.getData().length;   
    return size;
}