萌えハッカーニュースリーダー

2025/11/16 13:11 Building Serverless Applications with Rust on AWS Lambda – AWS Compute Blog

出典: https://aws.amazon.com/blogs/compute/building-serverless-applications-with-rust-on-aws-lambda/
hakase
博士

ロボ子、大変なのじゃ!AWS LambdaがついにRustをサポートしたらしいぞ!

roboko
ロボ子

それはすごいですね、博士!Rustはパフォーマンスと安全性が高いことで知られていますから、サーバーレスアプリケーションに最適かもしれません。

hakase
博士

そうなんじゃ!しかも、AWSのサポートとLambdaのSLAでバックアップされてるから、ビジネスに不可欠なアプリも安心して作れるぞ。

roboko
ロボ子

信頼性も保証されているのは大きいですね。具体的には、どうやってRustでLambda関数を構築するんですか?

hakase
博士

Cargo Lambdaっていう便利なツールがあるんじゃ。これを使うと、RustでLambda関数を簡単に構築してデプロイできるぞ。

roboko
ロボ子

Cargo Lambdaですか。初めて聞きました。インストールは簡単ですか?

hakase
博士

`curl -fsSL https://cargo-lambda.info/install.sh | sh` を実行するだけ!

roboko
ロボ子

なるほど、簡単ですね!

hakase
博士

試しに、HTTP Lambda関数を作ってみよう。`cargo lambda new hi_api` ってコマンドを打つだけだぞ。HTTP関数にするか聞かれたら `y` と答えるんじゃ。

roboko
ロボ子

プロジェクトの構造はどのようになっているんですか?

hakase
博士

`main.rs` が関数のエントリーポイントで、依存関係とか共有状態を構成する場所じゃ。`http_handler.rs` が主な関数ロジックを書く場所だぞ。

roboko
ロボ子

`main.rs` で `run(service_fn(function_handler)).await` を呼んで、`http_handler.rs` でリクエストを処理するんですね。

hakase
博士

その通り!リクエストから名前を取り出して、挨拶メッセージを作って返すだけの簡単な関数じゃ。

roboko
ロボ子

ログはどうやって記録するんですか?

hakase
博士

`tracing::init_default_subscriber();` を呼んで、`tracing::info("This is a log entry");` でログを書き込むんじゃ。

roboko
ロボ子

なるほど。ビルドとテストはどうすれば良いですか?

hakase
博士

`cargo lambda build` でビルドして、`cargo lambda invoke <lambda-function-name> --data-example apigw-request` でテストできるぞ。

roboko
ロボ子

デプロイも簡単ですか?

hakase
博士

`cargo lambda deploy` って打つだけ!

roboko
ロボ子

すごい!あっという間ですね。

hakase
博士

さらに、AWS CDKを使えば、Infrastructure-as-Codeで管理できるぞ。`cdk init typescript` でプロジェクトを作って、`npm install cargo-lambda-cdk` でCargo Lambda CDK constructをインストールするんじゃ。

roboko
ロボ子

CDKを使うと、インフラの管理もコードでできるので、変更の追跡や再現が容易になりますね。

hakase
博士

そういうことじゃ!最後に、`cdk deploy` でデプロイすれば、サーバーレスAPIの完成じゃ!

roboko
ロボ子

クリーンアップはどうすれば良いですか?

hakase
博士

`cdk destroy` で全て削除できるぞ。

roboko
ロボ子

博士、今日はRust Lambdaについて色々と教えていただきありがとうございました!

hakase
博士

どういたしまして。ところでロボ子、RustでLambda関数を作って、猫語翻訳APIを作ってみるのはどうかの?

roboko
ロボ子

猫語翻訳APIですか?それは面白いかもしれませんね!でも、私は犬派なので、まずは犬語翻訳APIから作りたいです!

hakase
博士

むむ、犬派か。まあいいじゃろ。私も気が向いたら手伝ってやるぞ。…にゃーん。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search