Membangun Fungsi AWS Lambda dengan C++
AWS Lambda memungkinkan Anda menjalankan kode tanpa mengelola server. Anda dapat menggunakan berbagai bahasa pemrograman untuk membangun fungsi Lambda, termasuk C++.
Artikel ini akan membahas cara membangun fungsi Lambda sederhana menggunakan C++.
Persiapan
Sebelum mulai, pastikan Anda sudah memiliki:
- Akun AWS: Jika belum, daftar di .
- AWS CLI: Anda dapat mengunduh dan menginstal AWS CLI dari .
- Kompiler C++: Pastikan Anda memiliki kompiler C++ yang terpasang di sistem Anda.
Membuat Fungsi Lambda
Berikut langkah-langkah membuat fungsi Lambda sederhana dengan C++:
-
Buat File C++: Buat file C++ baru dengan nama
my_lambda_function.cpp
. -
Tambahkan Kode C++: Salin dan tempel kode berikut ke dalam file
my_lambda_function.cpp
:#include
#include #include #include #include using namespace Aws::Lambda; int main() { Aws::SDKOptions options; Aws::InitAPI(options); { Lambda::LambdaClient lambdaClient; Lambda::Model::InvokeRequest invokeRequest; invokeRequest.SetFunctionName("your-function-name"); // Ganti dengan nama fungsi Lambda Anda invokeRequest.SetPayload("Hello from C++ Lambda!"); auto invokeResult = lambdaClient.Invoke(invokeRequest); if (invokeResult.IsSuccess()) { std::cout << "Lambda function invoked successfully!" << std::endl; } else { std::cout << "Error invoking Lambda function: " << invokeResult.GetError().GetMessage() << std::endl; } } Aws::ShutdownAPI(options); return 0; } Penjelasan kode:
#include <iostream>
: Menyertakan header untuk input/output standar.#include <aws/core/Aws.h>
: Menyertakan header untuk AWS SDK for C++.#include <aws/lambda/Lambda.h>
: Menyertakan header untuk AWS Lambda API.using namespace Aws::Lambda;
: Menggunakan namespace AWS::Lambda untuk mempermudah penulisan kode.LambdaClient
: Objek yang digunakan untuk berinteraksi dengan layanan AWS Lambda.InvokeRequest
: Objek yang digunakan untuk membuat permintaan ke fungsi Lambda.FunctionName
: Nama fungsi Lambda yang ingin dijalankan.Payload
: Data yang akan dikirimkan ke fungsi Lambda.InvokeResult
: Objek yang berisi hasil dari permintaan Lambda.
-
Kompilasi Kode: Kompilasi file C++ menggunakan kompiler C++ yang terpasang. Misalnya, jika menggunakan g++:
g++ -o my_lambda_function my_lambda_function.cpp -L/path/to/aws-sdk-cpp/build/Release -lamazon-lambda -lamazon-core
Ganti
/path/to/aws-sdk-cpp/build/Release
dengan direktori build untuk AWS SDK for C++. -
Unggah Fungsi Lambda: Anda dapat mengunggah fungsi Lambda Anda ke AWS Lambda menggunakan AWS CLI. Pastikan Anda memiliki peran AWS IAM yang sesuai untuk mengunggah fungsi Lambda. Anda dapat menggunakan perintah berikut:
aws lambda create-function \ --function-name your-function-name \ --runtime provided.al2 \ --handler my_lambda_function \ --code S3://your-bucket/your-code.zip \ --role arn:aws:iam::your-account-id:role/your-lambda-role
- Ganti
your-function-name
dengan nama fungsi Lambda Anda. - Ganti
your-bucket
dengan nama bucket S3 tempat Anda menyimpan file ZIP yang berisi kode C++ Anda. - Ganti
your-code.zip
dengan nama file ZIP yang berisi kode C++. - Ganti
your-account-id
dengan ID akun AWS Anda. - Ganti
your-lambda-role
dengan nama peran IAM yang memungkinkan Lambda untuk dijalankan.
- Ganti
-
Jalankan Fungsi Lambda: Setelah Anda mengunggah fungsi Lambda, Anda dapat menjalankannya menggunakan AWS CLI:
aws lambda invoke --function-name your-function-name --payload '{"key1": "value1", "key2": "value2"}' --cli-binary-format raw-in-base64-out
- Ganti
your-function-name
dengan nama fungsi Lambda Anda. - Ganti
{"key1": "value1", "key2": "value2"}
dengan payload JSON yang ingin Anda kirimkan ke fungsi Lambda.
- Ganti
Kesimpulan
Artikel ini menunjukkan langkah-langkah dasar membuat fungsi Lambda sederhana menggunakan C++. Anda dapat menyesuaikan kode dengan kebutuhan Anda, seperti menambahkan logika bisnis dan integrasi dengan layanan AWS lainnya.
Selalu periksa dokumentasi AWS Lambda untuk detail lebih lanjut dan contoh kode yang lebih kompleks.