Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Dalam tutorial ini, Anda akan membuat alur kerja satu langkah menggunakan AWS Step Functions untuk memanggil fungsi. AWS Lambda
catatan
Step Functions didasarkan pada mesin dan tugas negara. Dalam Step Functions, state machine disebut alur kerja, yang merupakan serangkaian langkah yang digerakkan oleh peristiwa. Setiap langkah dalam alur kerja disebut status. Misalnya, status Tugas mewakili unit kerja yang dilakukan AWS layanan lain, seperti memanggil yang lain Layanan AWS atau API. Contoh menjalankan alur kerja yang melakukan tugas disebut eksekusi di Step Functions.
Untuk informasi selengkapnya, lihat:
Lambda sangat cocok untuk Task
negara bagian, karena fungsi Lambda tanpa server dan mudah ditulis. Anda dapat menulis kode di AWS Management Console atau editor favorit Anda. AWS menangani detail penyediaan lingkungan komputasi untuk fungsi Anda dan menjalankannya.
Langkah 1: Membuat fungsi Lambda
Fungsi Lambda Anda menerima data peristiwa dan mengembalikan pesan ucapan.
penting
Pastikan fungsi Lambda Anda berada di bawah AWS akun yang sama dan Wilayah AWS sebagai mesin status Anda.
-
Buka konsol Lambda
dan pilih Create Function. -
Pilih halaman Buat fungsi, pilih Penulis dari scratch.
-
Untuk Nama fungsi, masukkan
HelloFunction
. -
Simpan pilihan default untuk semua opsi lain, lalu pilih Buat fungsi.
-
Setelah fungsi Lambda Anda dibuat, salin Nama Sumber Daya Amazon (ARN) fungsi yang ditampilkan di sudut kanan atas halaman. Berikut ini adalah contoh ARN:
arn:aws:lambda:us-east-1:123456789012:function:
HelloFunction
-
Salin kode berikut untuk fungsi Lambda ke bagian Sumber kode halaman.
HelloFunction
export const handler = async(event, context, callback) => { callback(null, "Hello from " + event.who + "!"); };
Kode ini menyusun sapaan menggunakan bidang
who
data input, yang disediakan oleh objekevent
yang diteruskan ke fungsi Anda. Anda menambahkan data input untuk fungsi ini nanti, ketika Anda memulai eksekusi baru. Metodecallback
mengembalikan sapaan gabungan dari fungsi Anda. -
Pilih Deploy.
Langkah 2: Uji fungsi Lambda
Uji fungsi Lambda Anda untuk melihatnya beroperasi.
-
Pilih Uji.
-
Untuk Nama peristiwa, masukkan
HelloEvent
. -
Ganti data Event JSON dengan yang berikut ini.
{ "who": "AWS Step Functions" }
Entri
"who"
sesuai dengan bidangevent.who
di fungsi Lambda Anda, menyelesaikan sapaan. Anda akan memasukkan data input yang sama ketika Anda menjalankan mesin status Anda. -
Pilih Simpan dan kemudian pilih Uji.
-
Untuk meninjau hasil pengujian, di bawah Hasil eksekusi, perluas Detail.
Langkah 3: Buat mesin negara
Gunakan konsol Step Functions untuk membuat mesin status yang memanggil fungsi Lambda yang Anda buat di Langkah 1.
-
Buka Konsol Step Functions
dan pilih Buat mesin status. penting
Pastikan mesin status Anda berada di bawah AWS akun dan Wilayah yang sama dengan fungsi Lambda yang Anda buat sebelumnya.
-
Dalam kotak dialog Pilih templat, pilih Kosong.
-
Pilih Pilih untuk membuka Workflow Studio diMode desain.
-
Di browser States di sebelah kiri, pastikan Anda telah memilih tab Actions. Kemudian, seret dan lepas API AWS Lambda Invoke ke status kosong berlabel Seret status pertama di sini.
-
Di panel Inspector di sebelah kanan, konfigurasikan fungsi Lambda:
-
Di bagian Parameter API, pilih fungsi Lambda yang Anda buat sebelumnya di daftar dropdown nama Fungsi.
-
Simpan pilihan default di daftar dropdown Payload.
-
-
(Opsional) Pilih Definisi untuk melihat definisi state machine Amazon States Language (ASL), yang secara otomatis dihasilkan berdasarkan pilihan Anda di tab Actions dan panel Inspector.
-
Tentukan nama untuk mesin negara Anda. Untuk melakukan ini, pilih ikon edit di sebelah nama mesin status default MyStateMachine. Kemudian, dalam konfigurasi mesin Negara, tentukan nama di kotak Nama mesin Negara.
Misalnya, masukkan nama
LambdaStateMachine
.catatan
Nama mesin negara, eksekusi, dan tugas aktivitas tidak boleh melebihi 80 karakter panjangnya. Nama-nama ini harus unik untuk akun dan AWS Wilayah Anda, dan tidak boleh mengandung salah satu dari yang berikut:
-
Spasi putih
-
Karakter wildcard (
? *
) -
Karakter tanda kurung (
< > { } [ ]
) -
Karakter khusus (
" # % \ ^ | ~ ` $ & , ; : /
) -
Karakter kontrol (
\\u0000
-\\u001f
atau\\u007f
-\\u009f
).
Step Functions menerima nama untuk mesin negara, eksekusi, aktivitas, dan label yang berisi karakter non-ASCII. Karena karakter seperti itu tidak akan berfungsi dengan Amazon CloudWatch, kami sarankan hanya menggunakan karakter ASCII sehingga Anda dapat melacak metrik. CloudWatch
-
-
(Opsional) Dalam konfigurasi mesin State, tentukan pengaturan alur kerja lainnya, seperti jenis mesin status dan peran pelaksanaannya.
Untuk tutorial ini, simpan semua pilihan default di pengaturan mesin State.
-
Pilih Buat.
-
Dalam kotak dialog Konfirmasi pembuatan peran, pilih Konfirmasi untuk melanjutkan.
Anda juga dapat memilih Lihat pengaturan peran untuk kembali ke konfigurasi mesin Status.
catatan
Jika Anda menghapus IAM role yang Step Functions buat, Step Functions tidak dapat membuatnya kembali nanti. Demikian pula, jika Anda mengubah peran (misalnya, dengan menghapus Step Functions dari principal dalam kebijakan IAM), Step Functions tidak dapat memulihkan pengaturan aslinya nanti.
Langkah 4: Jalankan mesin negara
Setelah Anda membuat mesin status Anda, Anda dapat menjalankannya.
-
Pada halaman mesin Negara, pilih LambdaStateMachine.
-
Pilih Mulai Eksekusi.
Kotak dialog Mulai eksekusi ditampilkan.
-
(Opsional) Masukkan nama eksekusi khusus untuk mengganti default yang dihasilkan.
Nama dan pencatatan non-ASCII
Step Functions menerima nama untuk mesin negara, eksekusi, aktivitas, dan label yang berisi karakter non-ASCII. Karena karakter seperti itu tidak akan berfungsi dengan Amazon CloudWatch, kami sarankan hanya menggunakan karakter ASCII sehingga Anda dapat melacak metrik. CloudWatch
-
Di area Input, ganti contoh data eksekusi dengan yang berikut ini.
{ "who" : "AWS Step Functions" }
"who"
adalah nama kunci yang fungsi Lambda Anda gunakan untuk mendapatkan nama orang untuk menyapa. -
Pilih Mulai Eksekusi.
Eksekusi state machine Anda dimulai, dan halaman baru yang menunjukkan eksekusi yang sedang berjalan ditampilkan.
-
Konsol Step Functions mengarahkan Anda ke halaman yang berjudul dengan ID eksekusi Anda. Halaman ini dikenal sebagai halaman Detail Eksekusi. Di halaman ini, Anda dapat meninjau hasil eksekusi saat eksekusi berlangsung atau setelah selesai.
Untuk meninjau hasil eksekusi, pilih status individual pada tampilan Grafik, lalu pilih tab individual di Detail langkah panel untuk melihat detail setiap status termasuk input, output, dan definisi masing-masing. Untuk detail tentang informasi eksekusi yang dapat Anda lihat di halaman Rincian Eksekusi, lihatIkhtisar detail eksekusi.
catatan
Anda juga dapat meneruskan muatan saat memanggil Lambda dari mesin negara. Untuk informasi selengkapnya dan contoh tentang memanggil Lambda dengan meneruskan payload di lapangan, lihatParameters
. Memanggil AWS Lambda fungsi dengan Step Functions