All Products
Search
Document Center

Function Compute:Pemicu OSS

Last Updated:Apr 24, 2026

Saat mengintegrasikan OSS dengan Function Compute, Anda dapat menggunakan event OSS untuk memicu fungsi guna melakukan pemrosesan data kustom. Topik ini menjelaskan batasan, jenis event, dan aturan pemicu untuk pemicu OSS di Function Compute.

Informasi latar belakang

OSS dan Function Compute terintegrasi secara mulus melalui pemicu OSS. Anda dapat menulis fungsi untuk menangani event OSS. Saat event tertentu terjadi di OSS, fungsi yang sesuai akan dipicu secara otomatis. Sebagai contoh, Anda dapat mengonfigurasi fungsi untuk menangani event PutObject. Ketika Anda memanggil operasi API PutObject OSS untuk mengunggah gambar ke bucket OSS, fungsi tersebut akan dipicu secara otomatis guna memproses gambar tersebut.

Setelah mengintegrasikan OSS dengan Function Compute, Anda dapat memanggil berbagai fungsi untuk memproses data gambar atau audio serta menulis hasilnya kembali ke berbagai layanan penyimpanan. Arsitektur ini memungkinkan Anda fokus pada logika fungsi, sementara sistem menangani volume data besar secara real time dengan keandalan tinggi dan paralelisme skala besar.

Batasan

Definisi event

Saat OSS menangkap event yang relevan, informasi event tersebut dikodekan ke dalam string JSON dan diteruskan ke fungsi penanganan event. Untuk informasi lebih lanjut mengenai format notifikasi event OSS, lihat dokumentasi yang ditautkan.

Tabel berikut mencantumkan definisi event OSS yang didukung. Setiap jenis event berkorespondensi dengan operasi API ObjectCreated, ObjectRemoved, atau ObjectModified. Pemanggilan sukses terhadap salah satu operasi API ini akan memicu fungsi satu kali.

Jenis peristiwa

Event Name

Deskripsi

ObjectCreated

oss:ObjectCreated:PutObject

Dipicu dengan memanggil API PutObject untuk mengunggah objek. Untuk informasi selengkapnya, lihat PutObject.

oss:ObjectCreated:PutSymlink

Dipicu dengan memanggil API PutSymlink untuk membuat tautan simbolik ke objek target di OSS. Anda dapat menggunakan tautan simbolik ini untuk mengakses objek target. Untuk informasi selengkapnya, lihat PutSymlink.

oss:ObjectCreated:PostObject

Dipicu dengan memanggil API PostObject untuk mengunggah objek ke bucket menggunakan formulir HTML. Untuk informasi selengkapnya, lihat PostObject.

oss:ObjectCreated:CopyObject

Dipicu dengan memanggil API CopyObject untuk menyalin objek di OSS. Untuk informasi selengkapnya, lihat CopyObject.

oss:ObjectCreated:InitiateMultipartUpload

Untuk mentransfer data menggunakan fitur MultipartUpload, Anda harus terlebih dahulu memanggil API InitiateMultipartUpload untuk menginisialisasi unggah multi-bagian. Untuk informasi selengkapnya, lihat InitiateMultipartUpload.

oss:ObjectCreated:UploadPart

Setelah event unggah multi-bagian diinisiasi, Anda dapat mengunggah data secara bertahap berdasarkan nama objek dan ID unggah yang ditentukan. Untuk informasi selengkapnya, lihat UploadPart.

oss:ObjectCreated:UploadPartCopy

Operasi API UploadPartCopy mengunggah bagian dengan menyalin data dari objek yang sudah ada. Untuk informasi selengkapnya, lihat UploadPartCopy.

oss:ObjectCreated:CompleteMultipartUpload

Setelah semua bagian data diunggah, Anda harus memanggil API CompleteMultipartUpload untuk menyelesaikan unggah multi-bagian. Untuk informasi selengkapnya, lihat CompleteMultipartUpload.

oss:ObjectCreated:AppendObject

Operasi API AppendObject dipanggil untuk mengunggah objek dengan menambahkan data. Untuk informasi selengkapnya, lihat AppendObject.

oss:ObjectCreated:*

Dipicu oleh pemanggilan sukses terhadap salah satu operasi API ObjectCreated di atas.

ObjectRemoved

oss:ObjectRemoved:DeleteObject

Dipicu dengan memanggil API DeleteObject untuk menghapus objek. Untuk informasi selengkapnya, lihat DeleteObject.

oss:ObjectRemoved:DeleteObjects

Dipicu dengan memanggil API DeleteMultipleObjects untuk menghapus beberapa objek dalam satu permintaan. Untuk informasi selengkapnya, lihat DeleteMultipleObjects.

oss:ObjectRemoved:AbortMultipartUpload

Dipicu dengan memanggil API AbortMultipartUpload untuk membatalkan unggah multi-bagian. Untuk informasi selengkapnya, lihat AbortMultipartUpload.

ObjectModified

oss:ObjectModified:UpdateObjectMeta

Dipicu dengan memanggil API UpdateObjectMeta untuk memodifikasi metadata objek.

Catatan

Saat ini, event ini didukung di wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Qingdao), Tiongkok (Beijing), Tiongkok (Zhangjiakou), Tiongkok (Hohhot), Tiongkok (Shenzhen), dan Tiongkok (Chengdu).

ObjectReplication

oss:ObjectReplication:ObjectCreated

Operasi tulis yang terjadi selama replikasi data.

oss:ObjectReplication:ObjectModified

Operasi timpa yang terjadi selama replikasi data.

oss:ObjectReplication:ObjectRemoved

Operasi hapus yang terjadi selama replikasi data.

Aturan pemicu

Hindari loop pemicu

Peringatan

Saat menggunakan pemicu OSS, berhati-hatilah agar tidak terjadi loop pemicu. Skenario umum adalah ketika pengunggahan objek ke bucket OSS memicu fungsi. Fungsi tersebut kemudian memproses objek dan menulis satu atau beberapa objek baru kembali ke bucket yang sama, yang pada gilirannya memicu fungsi lagi, sehingga menciptakan loop eksekusi.

Untuk mencegah biaya tidak perlu akibat loop pemicu, kami menyarankan Anda mengonfigurasi object prefix atau object suffix. Misalnya, Anda dapat mengatur object prefix untuk objek sumber menjadi src dan object prefix untuk objek yang telah diproses menjadi dst. Hal ini memastikan bahwa objek yang telah diproses tidak memicu fungsi lagi. Jika Anda tidak mengatur object prefix atau suffix, pemicu akan mencocokkan objek dengan prefix atau suffix apa pun. Untuk informasi selengkapnya, lihat Langkah 1: Buat pemicu OSS.

Aturan pemicu OSS native

Untuk mencegah satu event memicu beberapa pemicu dalam bucket yang sama, Function Compute memberlakukan aturan konfigurasi berikut untuk sebuah bucket:

  • Kombinasi antara event pemicu, object prefix, dan object suffix harus unik.

  • Anda hanya dapat membuat pemicu baru jika kombinasi event pemicu + object prefix + object suffix-nya tidak bentrok dengan pemicu yang sudah ada.

Contoh berikut menjelaskan aturan konfigurasi untuk pemicu OSS native.

Pemicu yang ada

Pemicu baru

Status pembuatan

Deskripsi

Trigger Event

Object Prefix

Object Suffix

Trigger Event

Object Prefix

Object Suffix

oss:ObjectCreated:PutObject

source

zip

oss:ObjectCreated:*

source

zip

Gagal

Gagal. Event wildcard pemicu baru (oss:ObjectCreated:*) mencakup event yang sudah ada (oss:ObjectCreated:PutObject), dan keduanya memiliki filter path yang sama.

source1

zip1

Berhasil

Pemicu baru dan pemicu yang ada memiliki jenis event yang bentrok, tetapi nilai Object Prefix dan Object Suffix-nya tidak cocok.

oss:ObjectCreated:PutObject

source

zip

Gagal

Pemicu baru dan pemicu yang ada memiliki jenis event, Object Prefix, dan Object Suffix yang sama.

source

1zip

Gagal

source1

zip

Gagal

source

None

Gagal

Jika jenis event dan Object Prefix pemicu baru cocok dengan pemicu yang ada, dan Anda tidak menentukan Object Suffix, pemicu baru akan mencocokkan objek dengan suffix apa pun, seperti objek .zip. Dalam kasus ini, Object Suffix juga dianggap cocok.

None

zip

Gagal

Jenis event dan Object Suffix pemicu baru cocok dengan pemicu yang ada. Jika Object Prefix tidak diatur, pemicu mencakup objek dengan awalan 'source', yang berarti Object Prefix juga cocok.

source1

zip1

Berhasil

Jenis event dan Object Prefix pemicu baru cocok dengan pemicu yang ada, tetapi Object Suffix-nya tidak cocok.

1source

1zip

Berhasil

Jenis event dan Object Suffix pemicu baru cocok dengan pemicu yang ada, tetapi Object Prefix-nya tidak cocok.

oss:ObjectCreated:PostObject

source

zip

Berhasil

Berhasil. Jenis event tidak bentrok, sehingga pemicu dapat dibuat terlepas dari filter path-nya.

Catatan

Object prefix dicocokkan dari awal nama objek, dan object suffix dicocokkan dari akhir nama objek.

Pemicu baru tidak dapat dibuat jika pengaturannya bentrok dengan pemicu yang sudah ada. Bentrok hanya terjadi jika jenis event dan filter path-nya (prefix dan suffix) pada pemicu baru tumpang tindih dengan pengaturan pemicu yang sudah ada.

Bentrok jenis event

Jenis event yang ada

Jenis event baru

Deskripsi bentrok

oss:ObjectCreated:PutObject

oss:ObjectCreated:*

oss:ObjectCreated:* mencakup oss:ObjectCreated:PutObject, sehingga event-event tersebut bentrok.

oss:ObjectCreated:*

oss:ObjectCreated:PostObject

Bentrok pencocokan path

Path yang ada

Jalur baru

Deskripsi bentrok

source/.zip

1source/.zip

Prefix tidak cocok, tetapi suffix cocok. Path-path tersebut tidak bentrok.

source/.zip

source/.zip1

Prefix cocok, tetapi suffix tidak cocok. Path-path tersebut tidak bentrok.

source/.zip

source/.zip

Prefix cocok, dan suffix cocok. Path-path tersebut bentrok.

Penting

Jika Anda ingin satu jenis event OSS memicu fungsi berbeda untuk tugas pemrosesan berbeda, Anda dapat membuat pemicu OSS berbasis EventBridge.

FAQ

Dokumen terkait