Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fungsi tahan lama atau Step Functions
Kedua fungsi Lambda tahan lama dan AWS Step Functions memungkinkan orkestrasi alur kerja yang andal dengan manajemen status otomatis dan pemulihan kegagalan. Mereka melayani preferensi pengembang yang berbeda dan pola arsitektur. Fungsi tahan lama dioptimalkan untuk pengembangan aplikasi dalam Lambda, sementara Step Functions dibangun untuk orkestrasi alur kerja di seluruh layanan. AWS
Kapan menggunakan fungsi yang tahan lama
Gunakan fungsi tahan lama saat:
Tim Anda lebih menyukai bahasa pemrograman standar dan alat pengembangan yang sudah dikenal
Logika aplikasi Anda terutama dalam fungsi Lambda
Anda ingin kontrol halus atas status eksekusi dalam kode
Anda sedang membangun aplikasi Lambda-sentris dengan kopling ketat antara alur kerja dan logika bisnis
Anda ingin mengulangi dengan cepat tanpa beralih antara kode dan desainer visual/JSON
Kapan menggunakan Step Functions
Gunakan Step Functions saat:
Anda memerlukan representasi alur kerja visual untuk visibilitas lintas tim
Anda mengatur beberapa AWS layanan dan menginginkan integrasi asli tanpa kode SDK khusus
Anda memerlukan infrastruktur tanpa pemeliharaan (tidak ada penambalan, pembaruan runtime)
Pemangku kepentingan non-teknis perlu memahami dan memvalidasi logika alur kerja
Kerangka keputusan
Gunakan pertanyaan berikut untuk menentukan layanan mana yang sesuai dengan kasus penggunaan Anda:
-
Apa fokus utama Anda? Pengembangan aplikasi di Lambda → fungsi tahan lama. Orkestrasi alur kerja di seluruh → Step AWS Functions.
-
Apa model pemrograman pilihan Anda? Bahasa pemrograman standar → fungsi tahan lama. DSL berbasis grafik atau desainer visual → Step Functions.
-
Berapa banyak AWS layanan yang terlibat? Terutama Lambda → fungsi tahan lama. Beberapa AWS layanan → Step Functions.
-
Alat pengembangan apa yang Anda gunakan? Pengalaman pengembang Lambda, IDE dengan agen LLM, kerangka kerja pengujian unit khusus bahasa pemrograman,, AWS SAM, AWS CDK Toolkit → fungsi tahan lama. AWS Pembuat alur kerja visual, AWS CDK untuk memodelkan alur kerja → Step Functions.
-
Siapa yang mengelola infrastruktur? Ingin fleksibilitas dalam Lambda → fungsi tahan lama. Ingin dikelola sepenuhnya, tanpa pemeliharaan → Step Functions.
Perbandingan fitur
Tabel berikut membandingkan fitur utama antara Step Functions dan Lambda fungsi tahan lama:
| Fitur | AWS Step Functions | Lambda fungsi tahan lama |
|---|---|---|
| Fokus utama | Orkestrasi alur kerja lintas AWS | Pengembangan aplikasi di Lambda |
| Jenis Layanan | Layanan alur kerja mandiri dan berdedikasi | Berjalan di dalam Lambda |
| Model pemrograman | Berbasis grafik, DSL Bahasa Negara Amazon atau AWS CDK | Bahasa pemrograman standar (JavaScript/TypeScript, Python) |
| Alat pengembangan | Pembangun visual di ekstensi IDE AWS Konsol/Toolkit, AWS CDK | Lambda DX dalam agen IDE dan LLM, kerangka pengujian unit, ekstensi IDE Toolkit AWS SAM AWS |
| Integrasi | 220+ AWS layanan, 16k APIs | Ekstensi model pemrograman berbasis peristiwa Lambda (sumber acara) |
| Manajemen | Dikelola sepenuhnya, agnostik runtime, nol pemeliharaan (tidak ada penambalan, pembaruan runtime) | Dikelola dalam lingkungan Lambda |
| Terbaik untuk | Proses bisnis dan otomatisasi TI, pemrosesan data, alur kerja AI | Transaksi terdistribusi, logika aplikasi stateful, orkestrasi fungsi, pemrosesan data, alur kerja AI |
Arsitektur hibrida
Banyak aplikasi mendapat manfaat dari menggunakan kedua layanan tersebut. Pola umum menggunakan fungsi tahan lama untuk logika tingkat aplikasi dalam Lambda, sementara Step Functions mengoordinasikan alur kerja tingkat tinggi di beberapa layanan di luar fungsi Lambda. AWS
Pertimbangan migrasi
Memulai kompleks yang sederhana dan berkembang: Mulailah dengan fungsi tahan lama untuk alur kerja yang berpusat pada Lambda. Tambahkan Step Functions saat Anda membutuhkan orkestrasi multi-layanan atau desain alur kerja visual.
Pengguna Step Functions yang ada: Keep Step Functions untuk alur kerja lintas layanan yang telah ditetapkan. Pertimbangkan fungsi tahan lama untuk logika aplikasi Lambda baru yang membutuhkan keandalan.