Topik ini menjelaskan status tugas asinkron dan cara mengelola tugas asinkron di konsol Function Compute. Anda akan mempelajari cara membuat, memulai, menghentikan, dan melihat tugas asinkron.
Mengelola tugas di konsol Function Compute
Buat tugas asinkron saat Anda membuat fungsi
Masuk ke konsol Function Compute. Di panel navigasi sebelah kiri, klik Tasks.
Di bilah navigasi atas, pilih wilayah. Pada halaman Task Execution Functions, klik Create Function.
Pada halaman Create Function, konfigurasikan parameter terkait, atur pemicu, lalu klik Create.
CatatanUntuk informasi tentang cara membuat fungsi, lihat bagian "Buat Fungsi" dari topik Mengelola Fungsi.
Anda dapat membuat pemicu saat membuat fungsi pada halaman Create Function. Anda juga dapat membuat pemicu pada tab Triggers untuk fungsi yang sudah ada.
Jika Anda menggunakan metode ini untuk membuat fungsi, fitur Task Mode dari Asynchronous Policy akan diaktifkan secara otomatis. Semua permintaan pemanggilan asinkron ke fungsi diproses dalam mode tugas.
Setelah fungsi dibuat, fungsi tersebut ditampilkan di daftar Function Name pada halaman Task Execution Functions.
Aktifkan mode tugas asinkron untuk fungsi yang sudah ada
Anda dapat mengaktifkan mode tugas asinkron untuk fungsi yang sudah ada. Untuk informasi lebih lanjut, lihat bagian "Buat Fungsi" dari topik Mengelola Fungsi.
Masuk ke konsol Function Compute. Di panel navigasi sebelah kiri, klik Services & Functions.
Di bilah navigasi atas, pilih wilayah. Pada halaman Services, klik layanan yang diinginkan.
Klik fungsi tersebut. Pada halaman detail fungsi, klik tab Asynchronous Configurations. Di bagian Kebijakan Asinkron, klik Ubah.
Di panel Modify the Policy for Asynchronous Mode, atur Task Mode menjadi Enable dan klik OK.
Memulai atau menghentikan tugas
Masuk ke konsol Function Compute. Di panel navigasi sebelah kiri, klik Tasks.
Di bilah navigasi atas, pilih wilayah.
Pada halaman Fungsi Eksekusi Tugas, klik fungsi yang diinginkan.
Pada tab Asynchronous Tasks, klik Submit Task. Dalam kotak dialog yang muncul, pilih metode pembuatan ID tugas dan waktu eksekusi tugas, lalu klik OK.
Anda juga dapat mengklik ikon
di sisi kanan parameter Submit Task dan memilih Configure Task Parameters dari daftar drop-down. Fungsi acara menggunakan acara dan fungsi HTTP menggunakan parameter HTTP untuk meneruskan parameter input ke fungsi untuk mensimulasikan pengiriman tugas.Setelah Anda mengirimkan tugas, segarkan halaman. Anda dapat melihat tugas yang sedang berjalan atau telah selesai. Anda dapat masuk ke instance, menghentikan tugas, mengeksekusi ulang tugas, dan melihat log.
CatatanDalam tugas asinkron, fungsi HTTP tidak dapat dieksekusi ulang.
Panggil API Function Compute atau gunakan SDK Function Compute untuk mengelola tugas
Buat tugas asinkron
Anda dapat memanggil operasi PutFunctionAsyncInvokeConfig dan atur mode pemanggilan asinkron ke mode tugas. Tambahkan konfigurasi berikut ke AsyncConfig. Setelah konfigurasi ini ditambahkan, semua pemanggilan asinkron fungsi berubah ke mode tugas.
{
"statefulInvocation": true
}Setelah Anda mengatur mode pemanggilan asinkron ke mode tugas, Anda masih dapat memanggil fungsi dalam mode sinkron. Namun, mode tugas asinkron hanya berlaku untuk pemanggilan asinkron.
Aktifkan mode tugas
Anda dapat memanggil operasi InvokeFunction untuk memicu pemanggilan asinkron guna memulai mode tugas. Anda dapat menambahkan header HTTP Stateful-Async-Invocation-Id saat memanggil operasi untuk menentukan ID tugas. Untuk informasi lebih lanjut, lihat Deduplikasi Tugas.
Lihat tugas
Setelah Anda mengirimkan tugas, Anda dapat memanggil operasi GetStatefulAsyncInvocation untuk menanyakan status eksekusi atau catatan eksekusi tugas.
Anda dapat memanggil operasi ListStatefulAsyncInvocations untuk menanyakan daftar tugas yang memenuhi kondisi tertentu berdasarkan kata kunci atau kondisi.
Hentikan tugas
Setelah Anda mengirimkan tugas, Anda dapat menghentikan tugas berdasarkan kebutuhan bisnis Anda. Anda dapat memanggil operasi StopStatefulAsyncInvocation untuk menghentikan tugas. Saat menghentikan tugas, Anda harus memasukkan ID-nya. ID tugas ditentukan saat Anda mengirimkan tugas. ID tugas juga bisa menjadi ID yang Anda peroleh saat memanggil operasi ListStatefulAsyncInvocations untuk menanyakan tugas yang sedang berjalan.
Status tugas asinkron
Untuk setiap pemanggilan tugas, Function Compute mencatat informasi tentang perubahan status tugas dan memungkinkan Anda untuk menanyakan status tugas secara real-time. Anda dapat melihat status tugas dengan menggunakan SDK Function Compute atau konsol Function Compute. Tugas dapat berada dalam salah satu status berikut:
State | Deskripsi |
Diantrikan | Pemanggilan asinkron diantrikan dan menunggu untuk dieksekusi. |
Diproses | Pemanggilan asinkron dikeluarkan dari antrian dan menunggu untuk dipicu. |
Berjalan | Pemanggilan sedang dieksekusi, dan instance Anda telah mulai menjalankan kode tugas. |
Berhasil | Pemanggilan berhasil. |
Gagal | Pemanggilan gagal. |
Dihentikan | Anda menghentikan pemanggilan, dan tugas berhasil diakhiri. |
Menghentikan | Anda menghentikan tugas, dan tugas sedang diakhiri. |
Kadaluarsa | Anda mengonfigurasi periode validitas untuk pemanggilan asinkron. Pemanggilan kadaluarsa dan dibuang. |
Tidak Valid | Pemanggilan menjadi tidak valid dan tidak dipicu karena alasan tertentu. Misalnya, fungsi dihapus. |
Mencoba Ulang | Pemanggilan asinkron sedang dicoba ulang karena kesalahan eksekusi. Saat sistem siap untuk mencoba ulang tugas, status tugas berubah menjadi Berjalan. |
Anda dapat memanggil operasi GetStatefulAsyncInvocation untuk mendapatkan detail tugas. Anda juga dapat memanggil operasi ListStatefulAsyncInvocations untuk menyaring tugas yang berada dalam status tertentu.