Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memilih jenis alur kerja di Step Functions
Saat Anda membuat mesin status, Anda memilih Jenis Standar atau Ekspres. Jenis default untuk mesin negara adalah Standar. Mesin negara yang Tipe Standar disebut alur kerja Standar dan mesin status yang Tipe Ekspres disebut alur kerja Ekspres.
Untuk alur kerja Standar dan Ekspres, Anda menentukan mesin status Anda menggunakan. Menggunakan Amazon States Language untuk menentukan alur kerja Step Functions Eksekusi mesin status Anda akan berperilaku berbeda tergantung pada Jenis yang Anda pilih.
penting
Jenis alur kerja yang Anda pilih tidak dapat diubah setelah Anda membuat mesin status.
Alur Kerja Standar dan Ekspres dapat dimulai secara otomatis sebagai respons terhadap peristiwa seperti HTTP permintaan dari Amazon API Gateway (dikelola sepenuhnya dalam skala besar), Aturan IoT, dan lebih dari 140 sumber peristiwa lainnya APIs di Amazon. EventBridge
Alur Kerja Standar ideal untuk alur kerja yang berjalan lama (hingga satu tahun), tahan lama, dan dapat diaudit. Anda dapat mengambil riwayat eksekusi lengkap menggunakan Step Functions API hingga 90 hari setelah eksekusi Anda selesai. Alur Kerja Standar mengikuti model yang tepat sekali, di mana tugas dan status Anda tidak pernah dijalankan lebih dari sekali, kecuali jika Anda telah menentukan perilaku. Retry
ASL Hal ini membuat Alur Kerja Standar cocok untuk mengatur tindakan non-idempoten, seperti memulai klaster Amazon atau memproses pembayaran. EMR Eksekusi Alur Kerja Standar ditagih sesuai dengan jumlah transisi negara yang diproses.
Alur Kerja Ekspres ideal untuk beban kerja pemrosesan peristiwa bervolume tinggi seperti konsumsi data IoT, pemrosesan dan transformasi data streaming, dan backend aplikasi seluler. Alur Kerja Ekspres bisa berjalan hingga lima menit. Alur Kerja Ekspres menggunakan at-least-oncemodel, di mana eksekusi berpotensi berjalan lebih dari satu kali. Hal ini membuat Alur Kerja Express ideal untuk mengatur tindakan idempoten seperti mengubah data input dan menyimpan melalui tindakan di Amazon DynamoDB. PUT Eksekusi Alur Kerja Ekspres ditagih oleh jumlah eksekusi, total durasi eksekusi, dan memori yang dikonsumsi saat eksekusi dijalankan.
Tip
Untuk menerapkan contoh alur kerja Ekspres, lihat Status Paralel
Perbandingan tipe alur kerja Standar dan Ekspres
Tipe/Kategori | Alur Kerja Standar | Alur Kerja Ekspres: Sinkron dan Tidak Sinkron |
---|---|---|
Durasi maksimum | Satu tahun | Lima menit |
Tingkat mulai eksekusi yang didukung |
Untuk informasi tentang kuota yang terkait dengan tingkat mulai eksekusi yang didukung, lihatKuota yang terkait dengan API tindakan pelambatan. |
Untuk informasi tentang kuota yang terkait dengan tingkat mulai eksekusi yang didukung, lihatKuota yang terkait dengan API tindakan pelambatan. |
Tingkat transisi status yang didukung |
Untuk informasi tentang kuota yang terkait dengan tingkat transisi status yang didukung, lihatKuota terkait throttling status. |
Tidak ada batas |
Penetapan Harga |
Harga berdasarkan jumlah transisi negara. Transisi status dihitung setiap kali langkah dalam eksekusi Anda selesai. | Harga berdasarkan jumlah eksekusi yang Anda jalankan, durasinya, dan konsumsi memori. |
Riwayat eksekusi |
Eksekusi dapat dicantumkan dan dijelaskan dengan Step FunctionsAPIs. Eksekusi dapat di-debug secara visual melalui konsol. Mereka juga dapat diperiksa di CloudWatch Log dengan mengaktifkan logging pada mesin status Anda. Untuk informasi selengkapnya tentang men-debug eksekusi Alur Kerja Standar di konsol, lihat dan. Perbedaan pengalaman konsol standar dan Express Melihat alur kerja berjalan |
Riwayat eksekusi tak terbatas, yaitu, sebanyak entri riwayat eksekusi dipertahankan yang dapat Anda hasilkan dalam periode 5 menit. Eksekusi dapat diperiksa di CloudWatch Log atau konsol Step Functions dengan mengaktifkan logging pada mesin status Anda. Untuk informasi selengkapnya tentang men-debug eksekusi Alur Kerja Ekspres di konsol, lihat dan. Perbedaan pengalaman konsol standar dan Express Melihat alur kerja berjalan |
Semantik eksekusi | Eksekusi alur kerja yang tepat sekali. | Alur Kerja Ekspres Asinkron: Eksekusi alur kerja. t-least-once Alur Kerja Ekspres Sinkron: Eksekusi t-most-once alur kerja. |
Integrasi layanan | Mendukung semua integrasi dan pola layanan. | Mendukung semua integrasi layanan. catatanAlur Kerja Ekspres tidak mendukung pola integrasi layanan Job-run ( |
Peta Terdistribusi | Didukung | Tidak Support |
Kegiatan | Didukung | Tidak Support |
Optimalkan jenis alur kerja
Dalam lokakarya pemrosesan data skala besar, lihat modul Memilih jenis alur kerja (lokakarya)
Alur Kerja Ekspres Sinkron dan Asinkron di Step Functions
Ada dua jenis Alur Kerja Ekspres yang dapat Anda pilih: Asinkron Alur Kerja Ekspres dan Alur Kerja Ekspres Sinkron.
-
Alur Kerja Ekspres Asinkron mengembalikan konfirmasi bahwa alur kerja dimulai, tetapi jangan menunggu alur kerja selesai. Untuk mendapatkan hasilnya, Anda harus melakukan polling CloudWatch Log layanan. Anda dapat menggunakan Alur Kerja Ekspres Asinkron ketika Anda tidak memerlukan keluaran respons langsung, seperti layanan pesan atau pemrosesan data yang tidak bergantung pada layanan lain. Anda dapat memulai Alur Kerja Ekspres Asinkron sebagai respons terhadap suatu peristiwa, dengan alur kerja bersarang di Step Functions, atau dengan menggunakan panggilan.
StartExecution
API -
Alur Kerja Ekspres Sinkron memulai alur kerja, tunggu hingga selesai, lalu kembalikan hasilnya. Alur Kerja Ekspres Sinkron dapat digunakan untuk mengatur layanan mikro. Dengan Alur Kerja Synchronous Express, Anda dapat mengembangkan aplikasi tanpa perlu mengembangkan kode tambahan untuk menangani kesalahan, mencoba ulang, atau menjalankan tugas paralel. Anda dapat menjalankan Alur Kerja Synchronous Express yang dipanggil dari Amazon Gateway, API AWS Lambda, atau dengan menggunakan
StartSyncExecution
API panggilan.catatan
Jika Anda menjalankan Step Functions Express Workflows secara sinkron dari konsol,
StartSyncExecution
permintaan akan kedaluwarsa setelah 60 detik. Untuk menjalankan alur kerja ekspres secara sinkron selama durasi hingga lima menit, buatStartSyncExecution
permintaan menggunakan AWS SDKatau AWS Command Line Interface (AWS CLI) alih-alih konsol Step Functions.APIPanggilan eksekusi Express sinkron tidak berkontribusi pada batas kapasitas akun yang ada. Step Functions menyediakan kapasitas sesuai permintaan dan secara otomatis menskalakan dengan beban kerja yang berkelanjutan. Lonjakan beban kerja dapat di-throtling hingga kapasitas tersedia.
Jaminan eksekusi dalam alur kerja Step Functions
Alur Kerja Standar | Alur Kerja Ekspres Tidak Sinkron | Alur Kerja Ekspres Sinkron |
---|---|---|
Eksekusi alur kerja yang tepat sekali | t-least-onceEksekusi alur kerja | t-most-onceEksekusi alur kerja |
Status eksekusi secara internal tetap ada di antara transisi negara. | Status eksekusi tidak bertahan di antara transisi status. | Status eksekusi tidak bertahan di antara transisi status. |
Secara otomatis mengembalikan respons idempoten saat memulai eksekusi dengan nama yang sama dengan alur kerja yang sedang berjalan. Alur kerja baru tidak dimulai dan pengecualian dilemparkan setelah alur kerja yang sedang berjalan selesai. | Idempotensi tidak dikelola secara otomatis. Memulai beberapa alur kerja dengan nama yang sama menghasilkan eksekusi bersamaan. Dapat mengakibatkan hilangnya status alur kerja internal jika logika mesin status tidak idempoten. | Idempotensi tidak dikelola secara otomatis. Step Functions menunggu setelah eksekusi dimulai dan mengembalikan hasil state machine setelah selesai. Alur kerja tidak dimulai ulang jika pengecualian terjadi. |
Data riwayat eksekusi dihapus setelah 90 hari. Nama alur kerja dapat digunakan kembali setelah penghapusan data out-of-date eksekusi. Untuk memenuhi persyaratan kepatuhan, organisasi, atau peraturan, Anda dapat mengurangi periode retensi riwayat eksekusi menjadi 30 hari dengan mengirimkan permintaan kuota. Untuk melakukan ini, gunakan AWS Support Center Console dan buat kasus baru. |
Riwayat eksekusi tidak ditangkap oleh Step Functions. Logging harus diaktifkan melalui Amazon CloudWatch Logs. | Riwayat eksekusi tidak ditangkap oleh Step Functions. Logging harus diaktifkan melalui Amazon CloudWatch Logs. |