Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
introduction-lambda-rust
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Junki Ishigaki
February 27, 2026
Technology
0
54
introduction-lambda-rust
Junki Ishigaki
February 27, 2026
Tweet
Share
More Decks by Junki Ishigaki
See All by Junki Ishigaki
query-for-s3-2025
junkishigaki
0
65
impressions-trying-lambda-web-adapter
junkishigaki
2
340
talk_about_wasmwasi
junkishigaki
0
280
Athenaのコスト節約を考える
junkishigaki
0
32
CloudWatch Logs Insightsをめぐるあれこれ
junkishigaki
0
140
Other Decks in Technology
See All in Technology
Introduction to Bill One Development Engineer
sansan33
PRO
0
380
技術キャッチアップ効率化を実現する記事推薦システムの構築
yudai00
2
160
primeNumber DATA MANAGEMENT CAMP #2:
masatoshi0205
1
650
社内ワークショップで終わらせない 業務改善AIエージェント開発
lycorptech_jp
PRO
1
430
Lookerの最新バージョンv26.2がやばい話
waiwai2111
1
150
なぜAIは組織を速くしないのか 令和の腑分け
sugino
80
52k
「使いにくい」も「運用疲れ」も卒業する UIデザイナーとエンジニアが創る持続可能な内製開発
nrinetcom
PRO
1
760
論文検索を日本語でできるアプリを作ってみた
sailen2
0
150
競争優位を生み出す戦略的内製開発の実践技法
masuda220
PRO
2
520
「データとの対話」の現在地と未来
kobakou
0
1.1k
AI活用を"目的"にしたら、データの本質が見えてきた - Snowflake Intelligence実験記 / chasing-ai-finding-data
pei0804
0
860
AIエージェントで変わる開発プロセス ― レビューボトルネックからの脱却
lycorptech_jp
PRO
2
820
Featured
See All Featured
Practical Orchestrator
shlominoach
191
11k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
82
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Designing for Performance
lara
611
70k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Making Projects Easy
brettharned
120
6.6k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
120
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
200
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
Typedesign – Prime Four
hannesfritz
42
3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
570
Transcript
JAWS-UG Kyoto Junki Ishigaki February 27, 2026 #jawsug_kyoto #jawsug
石垣潤樹 / Junki Ishigaki - 所属 → 株式会社シーズ - やっていること
→ インフラエンジニア - やっていること → AWSとかさわってます - 好きなAWSサービス → S3 - Community - JAWS-UG Kyoto - Platform Engineering Kaigi(PEK) 2 社内で使ってるアイコン x.com/tokyo_jjjx 自己紹介 クラウドネイティブ会議 やります@名古屋 2026/5/14-15 https://kaigi.cloudnativedays.jp/ 「人呼んでjun」
今日の話の経緯 - Lambdaくらいサクッと書けるようになっておきたい - そういえばRustのLambdaがGAになった - Rustでやってみるか - ツール周り確認してみるか という話
3
RustのLambdaがGAになりました 4 https://aws.amazon.com/jp/about-aws/whats-new/2025/11/aws-lambda-rust/
つまり 5 https://x.com/tokyo_jjjx/status/1991479429080707362
re:Invent2025にて - [DEV405] Compile blazing-fast MCP servers in Rust -
MCP サーバーってPythonだったりTypeScriptだったりするけどRustで爆速の やつ作ろうぜ的なセッション(CodeTalk) - https://www.youtube.com/watch?v=mr7ZuLRxXzA - [DEV307] Unleash Rust's potential on AWS - Rustいいよ的なBreakoutSession - AWS内部のデータプレーンはデフォルトRust - https://www.youtube.com/watch?v=buBBQ5mXAi8 6 IAM Auto Pilot(IAMポリシー生成用のMCP Server)もそういえばRustで書かれてますね
今回やってみたこと 7 - cargo lambaの触り心地の確認 - cdk でdeployしてみる の、感想とかを話します
まずはここから!!cargo-lambda!! 8 - Rust製Lambda関数の開発・デプロイを効率化するCLIツール。 - https://www.cargo-lambda.info/ - https://github.com/cargo-lambda/cargo-lambda
cargo lambda 9 - Rust製Lambda関数の開発・デプロイを効率化するCLIツール。 ## プロジェクト作成 ## HTTP Lambda関数のテンプレートを生成
cargo lambda new hello-rust --http ## ビルド ## provided.al2023ランタイム用のネイティブバイナリ(bootstrap)を生成。約1分。 cargo lambda build --release
cargo lambda 10 ## ローカルテスト ## ローカルでLambda環境をエミュレート。コード変更時は自動リビルド。 # ターミナル1: エミュレータ起動
cargo lambda watch # ターミナル2: 関数呼び出し # カスタムペイロード cargo lambda invoke --data-ascii '{"queryStringParameters": {"name": "Rust"}}' 開発者体験◦
cargo lambda 11 ## AWSへデプロイ ## 説明: IAMロール自動作成、zipアップロード、Lambda関数作成を一発実行。開発用 途に便利。 cargo
lambda deploy ## リモートテスト ## 説明: デプロイ済みのLambda関数をAWS上で直接実行。 cargo lambda invoke --remote hello-rust --data-example apigw-request
cargo lambda -> cargo-lambda-cdk 12 - なるほど - 開発はできそう、deployはあんまり使えなそう -
勝手にIAMロールできたり - 消すときどうする?? - CI/CDに組み込みにくい - とか - deployはCDKで - cargo-lambda-cdk - carg-lambdaをラッピングしたCDKコンストラクト(L2) import { RustFunction } from 'cargo-lambda-cdk'; const myFunction = new RustFunction(this, 'MyFunction', { manifestPath: './lambda/my-function', runtime: 'provided.al2023', }); cdk deploy時に勝手にbuildして deployしてくれる
例えば 13 - 社内でちょっとしたAPI Server実装したいとか - 1時間もあればできそう(できた) Lambda Web Adapter+
Axumでモノリシックな API Serverとか API Gateway ↓ すべてのリクエスト Lambda (Axum) ├── /health ├── /users └── /products
- Lambda Web Adapterなんぞや? - Lambda Web Adapter気になるって人向け 参考 14
https://speakerdeck.com/junkishigaki/impressions-trying-lambda-web-adapter
パフォーマンスみてみる 15 ### フィボナッチ数列(再帰実装) fib(0) = 0 fib(1) = 1
fib(n) = fib(n-1) + fib(n-2) 数列の例: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55... - RustとNode.jsでLambda関数を実装 - 同じ処理でパフォーマンスを比較 - 処理速度・コールドスタート・ウォームスタートを測定
こんな感じの 16 Rust: rust fn fibonacci(n: u32) -> u64 {
match n { 0 => 0, 1 => 1, _ => fibonacci(n - 1) + fibonacci(n - 2), } } Node.js: typescript function fibonacci(n: number): number { if (n === 0) return 0; if (n === 1) return 1; return fibonacci(n - 1) + fibonacci(n - 2); }
結果 17 > ## 処理時間の測定結果(5回) | 回数 | Rust (ms)
| Node.js (ms) | 速度比 | |------|-----------|--------------|--------| | 1回目 | 542 | 1823 | 3.4倍 | | 2回目 | 579 | 1807 | 3.1倍 | | 3回目 | 574 | 1806 | 3.1倍 | | 4回目 | 526 | 1798 | 3.4倍 | | 5回目 | 578 | 1814 | 3.1倍 | | 平均 | 560 | 1810 | 3.2倍 | ## コールドスタート測定結果 | 言語 | 全体応答時間 | 処理時間 | 初期化オーバーヘッド | |------|-------------|----------|---------------------| | Rust | 1.05秒 | 0.57秒 | +0.48秒 | | Node.js | 2.73秒 | 2.10秒 | +0.63秒 | | 差 | 1.68秒 | 1.53秒 | 0.15秒 | ※ フィボナッチ数列 n=35(再帰実装、約2900万回の関数呼び出し)
まとめ 18 - cargo-lambdaの開発者体験よき - 触っていて体験がいいというのは大事 - ツール類の充実はその技術が盛り上がっていく上で大事 - CDK統合もサクッとできるのよき
- サクッとBuildしてDeployできたりするのはCDKのよさ(コンストラクトあり がたや〜) - Lambda Web Adapter + AxumとかでモノリシックAPI Serverとかはすぐ作れそう (作れた) - サクッとできるのは入門編としてうれしい - Rustやっぱりいいすね...RustのLambdaもいいすね!!
ありがとうございました re:play2023→