Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat Sistem Pemrosesan Pesanan dengan Fungsi Tahan Lama Lambda
catatan
PERLU: Tambahkan diagram arsitektur yang menunjukkan API Gateway, alur kerja Fungsi Tahan Lama, dan layanan pendukung (DynamoDB,) EventBridge
Prasyarat
AWS CLI diinstal dan dikonfigurasi
PERLU: Persyaratan Fungsi Tahan Lama Spesifik
Buat File Kode Sumber
Buat file berikut di direktori proyek Anda:
lambda_function.py- kode fungsirequirements.txt- Dependensi manifes
Kode Fungsi
# NEED: Verify correct imports import boto3 import json def lambda_handler(event, context): # NEED: Verify DurableContext syntax durable = context.durable try: # Validate and store order order = await durable.step('validate', async () => { return validate_order(event['order']) }) # Process payment # NEED: Verify wait syntax await durable.wait(/* wait configuration */) # Additional steps # NEED: Complete implementation except Exception as e: # NEED: Error handling patterns raise e def validate_order(order_data): # NEED: Implementation pass
File Persyaratan
# NEED: List of required packages
Menerapkan Aplikasi
Buat Tabel DynamoDB untuk Pesanan
Buka konsol DynamoDB di https://console.aws.amazon.com/dynamodb/
Pilih Buat tabel
Untuk nama Tabel, masukkan
OrdersUntuk kunci Partisi, masukkan
orderIdBiarkan pengaturan lain sebagai default
Pilih Buat tabel
Buat fungsi Lambda
Buka konsol Lambda di https://console.aws.amazon.com/lambda/
Pilih fungsi Buat
Pilih Penulis dari awal
Untuk nama Fungsi, masukkan
ProcessOrderUntuk Runtime, pilih runtime pilihan Anda
PERLU: Tambahkan konfigurasi khusus Fungsi Tahan Lama
Pilih fungsi Buat
Buat Titik Akhir API Gateway
Buka konsol API Gateway di https://console.aws.amazon.com/apigateway/
Pilih Buat API
Pilih HTTP API
Pilih Build
Tambahkan integrasi dengan fungsi Lambda Anda
Konfigurasikan rute untuk pemrosesan pesanan
Terapkan API
Uji Aplikasi
Kirim pesanan tes:
{ "orderId": "12345", "items": [ { "productId": "ABC123", "quantity": 1 } ] }
PERLU: Tambahkan instruksi pemantauan khusus untuk Fungsi Tahan Lama
Langkah Berikutnya
Tambahkan Logika Bisnis
Menerapkan manajemen inventaris:
async def check_inventory(order): # Add inventory check logic pass
Tambahkan perhitungan harga:
async def calculate_total(order): # Add pricing logic pass
Tingkatkan Penanganan Kesalahan
Tambahkan logika kompensasi:
async def reverse_payment(order): # Add payment reversal logic pass
Menangani pembatalan pesanan:
async def cancel_order(order): # Add cancellation logic pass
Integrasikan Sistem Eksternal
async def notify_shipping_provider(order): # Add shipping integration pass async def send_customer_notification(order): # Add notification logic pass
Meningkatkan Monitoring
Buat CloudWatch dasbor
Siapkan metrik untuk waktu pemrosesan pesanan
Konfigurasikan peringatan untuk pesanan yang tertunda