Workflows adalah platform orkestrasi terkelola sepenuhnya yang menjalankan layanan dalam urutan yang Anda tentukan: alur kerja. Alur kerja ini dapat menggabungkan berbagai layanan termasuk layanan kustom yang dihosting di Cloud Run atau fungsi Cloud Run, Google Cloud layanan seperti Cloud Vision AI dan BigQuery, serta API berbasis HTTP apa pun.
Dengan menyertakan Workflows ke dalam solusi, Anda dapat membuat dependensi layanan menjadi eksplisit dan dapat diamati secara menyeluruh. Alur kerja yang menentukan aplikasi, proses operasional, atau bisnis memberikan sumber tepercaya atau narasi kanonis untuk proses tersebut.
Workflows bersifat tanpa server, dapat diskalakan sesuai kebutuhan, dan tidak dikenai biaya saat tidak digunakan. Karena alur kerja tidak berisi dependensi kode atau library, alur kerja tidak memerlukan patch keamanan. Setelah men-deploy alur kerja, Anda dapat mengharapkan alur kerja tersebut dieksekusi dengan andal tanpa perlu pemeliharaan. Alur kerja dapat menyimpan status, mencoba lagi, melakukan polling, atau menunggu hingga satu tahun.
Workflows mematuhi sertifikasi dan standar berikut.
Diagram berikut menunjukkan contoh penggunaan Workflows untuk mengoordinasikan layanan:
Kasus penggunaan utama
Workflows mendukung banyak kasus penggunaan. Berikut beberapa contohnya:
| Orkestrasi layanan | Buat solusi dengan menggabungkan layanan—Lakukan serangkaian
operasi di beberapa sistem, sambil menunggu semua operasi selesai.
Dapat didorong oleh peristiwa. Contoh:
|
| Tugas batch | Beroperasi pada beberapa item—Lakukan operasi pada sekumpulan item atau
data batch. Sering dijadwalkan. Contoh:
|
| Proses bisnis | Mengotomatiskan alur kerja lini bisnis—Enkode langkah-langkah dalam proses bisnis, termasuk kondisi, tindakan, dan peristiwa yang melibatkan interaksi manusia. Contoh:
|
| Otomatisasi proses IT | Eksekusi operasi layanan terkelola—Buat skrip urutan operasi layanan dengan mudah. Google Cloud Contoh:
|
Konsep inti
Alur kerja terdiri dari serangkaian langkah yang dijelaskan menggunakan sintaksis Workflows, dan dapat ditulis dalam YAML atau JSON. Ini adalah definisi alur kerja. Untuk penjelasan mendetail tentang sintaksis Alur Kerja, lihat Referensi sintaksis.
Setelah alur kerja dibuat, alur kerja tersebut akan di-deploy, sehingga siap untuk dieksekusi. Pelajari cara membuat dan memperbarui alur kerja di konsol Google Cloud atau menggunakan Google Cloud CLI. Anda juga dapat membuat alur kerja dengan menggunakan IDE atau editor kode sumber pilihan dan menyiapkan pelengkapan otomatis dan validasi sintaksis.
Eksekusi adalah satu eksekusi logika yang terkandung dalam definisi
alur kerja. Alur kerja yang belum dieksekusi tidak menimbulkan biaya. Semua eksekusi alur kerja bersifat independen, dan penskalaan produk yang cepat memungkinkan banyak eksekusi serentak. Anda dapat menjalankan alur kerja menggunakan
library klien, di konsol Google Cloud , menggunakan Google Cloud CLI,
atau dengan mengirim permintaan HTTP POST ke URL pemanggilan alur kerja menggunakan
Workflows REST API. Untuk mengetahui detailnya, lihat
Menjalankan alur kerja.
Regionalitas
Workflows adalah layanan regional dan workflow adalah resource regional yang tunduk pada batasan lokasi resource. Anda dapat menggunakan kebijakan lokasi resource untuk mengontrol residensi data.
Perhatikan bahwa saat alur kerja di-deploy ke region tertentu, alur kerja tersebut hanya dieksekusi di region tersebut; namun, jika alur kerja membuat permintaan HTTP atau menggunakan konektor, panggilan HTTP mungkin tidak berasal dari region yang sama.
Kemampuan utama
Berikut adalah beberapa kemampuan utama Alur Kerja.
Kontrol eksekusi
- Langkah
- Untuk membuat alur kerja, Anda menentukan langkah-langkah dan urutan eksekusi yang diperlukan menggunakan sintaksis Workflows. Setiap alur kerja harus memiliki minimal satu langkah. Secara default, Alur Kerja memperlakukan langkah-langkah seolah-olah berada dalam daftar berurutan dan mengeksekusinya satu per satu hingga semua langkah selesai dijalankan. Untuk mengetahui detailnya, lihat Langkah-Langkah.
- Kondisi
- Anda dapat menggunakan blok
switchsebagai mekanisme pemilihan yang memungkinkan nilai ekspresi mengontrol alur eksekusi alur kerja. Untuk mengetahui detailnya, lihat Kondisi. - Iterasi
- Anda dapat menggunakan loop
foruntuk melakukan iterasi pada urutan angka atau melalui kumpulan data, seperti daftar atau peta. Untuk mengetahui detailnya, lihat Iterasi. - Langkah paralel
- Anda dapat menggunakan langkah
paralleluntuk menentukan bagian alur kerja (cabang atau loop) yang dapat dieksekusi secara bersamaan. Untuk mengetahui detailnya, lihat Langkah paralel. - Sub-alur kerja
- Sub-alur kerja berfungsi mirip dengan rutinitas atau fungsi dalam bahasa pemrograman, sehingga Anda dapat mengapsulasi langkah atau serangkaian langkah yang akan diulang beberapa kali oleh alur kerja. Untuk mengetahui detailnya, lihat Sub-workflow.
Memicu eksekusi
- Manual
- Anda dapat mengelola alur kerja dari konsol Google Cloud atau dari command line menggunakan Google Cloud CLI. Dukungan visualisasi saat mengedit sintaksis Workflows juga tersedia melalui konsol Google Cloud .
- Terprogram
- Library Klien Cloud untuk Workflows API, atau REST API, dapat digunakan untuk mengelola alur kerja. Untuk mengetahui detailnya, lihat API dan referensi Workflows.
- Dijadwalkan
- Anda dapat menggunakan Cloud Scheduler untuk menjalankan alur kerja pada jadwal tertentu, seperti setiap hari Senin pukul 09.00 atau setiap 15 menit. Untuk mengetahui detailnya, lihat Menjadwalkan alur kerja menggunakan Cloud Scheduler.
- Argumen runtime
- Data yang diteruskan saat runtime dapat diakses dengan menambahkan kolom
paramske alur kerja utama Anda (ditempatkan dalam blok