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
Next.js(SSR)をLambdaでホストしてみる_jaws_education
Search
takumi
October 23, 2025
Programming
140
0
Share
Next.js(SSR)をLambdaでホストしてみる_jaws_education
takumi
October 23, 2025
More Decks by takumi
See All by takumi
弊社のAWS事情、大公開!
taku271
1
430
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
210
自社UIコンポーネントにMCPサーバーを作った話
taku271
1
100
Other Decks in Programming
See All in Programming
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
310
存在論的プログラミング: 時間と存在を記述する
koriym
5
750
Tamach-sre-3_ANDPAD-shimaison93
mane12yurks38
0
240
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
210
AIと共にエンジニアとPMの “二刀流”を実現する
naruogram
0
120
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.5k
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
230
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
750
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
140
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
Ruby and LLM Ecosystem 2nd
koic
1
1.4k
How to stabilize UI tests using XCTest
akkeylab
0
150
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
490
Scaling GitHub
holman
464
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.6k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
290
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Navigating Team Friction
lara
192
16k
Git: the NoSQL Database
bkeepers
PRO
432
67k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
The untapped power of vector embeddings
frankvandijk
2
1.7k
Transcript
Next.js(SSR)をLambdaで ホストしてみる Education-JAWS #5 山下 拓海 Education-JAWS #5 1
自己紹介 福井大学4年生! ユニフォームネクストでインターン中 Lambda,VPC Latticeが好き Vim一年生 2 Education-JAWS #5 22歳
山下 拓海(やました たくみ)
アジェンダ 詳しい実装 メリット・デメリット 問題点 まとめ 3 Education-JAWS #5 Next.js in
Lambda Next.jsインフラ概要
Next.jsインフラ概要 一般的なNext.jsインフラアーキテクチャ 4 Education-JAWS #5 CloudFrontでCDN配信 S3に静的ファイル EC2やECSが固定料金 インフラ構築が大変 EC2やECSで
Next.jsサーバーをホスト
5 Education-JAWS #5 今回採用するインフラアーキテクチャ CloudFrontでCDN配信 S3に静的ファイル Lambdaで Next.jsサーバーをホスト 実行された分だけ課金 サーバーレスで構築が楽
Next.jsインフラ概要
Next.js In Lambda 6 Education-JAWS #5 Lambdaって 関数実行するやつじゃないの??
Next.js In Lambda 7 Education-JAWS #5 LambdaでNext.jsをホスト Q:「Lambdaって関数実行するやつじゃないの??」
Next.js In Lambda 8 Education-JAWS #5 LambdaでNext.jsをホスト A:「 という
サーバーのホストが可能になるライブラリが あります!」 Lambda Web Adapter A:「イメージとしてデプロイして、Dockerfileに 1行追加するだけ!!」 Q:「でも設定難しいんじゃないの??」
アーキテクチャ 9 Education-JAWS #5 全体のアーキテクチャ
詳しい実装 10 Education-JAWS #5 Next.jsの設定 ビルドした成果物をstandaloneという形式で生成 next.config.tsのoutputを編集
詳しい実装 Education-JAWS #5 Dockerイメージの作成 ECS等でデプロイするときと同じ! 11
詳しい実装 Education-JAWS #5 Lambdaへのデプロイ ECRなどにイメージをアップロード Lambdaへデプロイ!! ここにアップロードしたECR URIを指定 12
メリット・デメリット Education-JAWS #5 Lambdaのメリット ランニングコストが少なくなった! インフラ構築がめっちゃ楽! App Runnerを使用していた時と比べて99%減 (というか100%) Lambdaのコストが0円!(無料枠)
スケーリングとかパッチとか考えなくて良い DBなどのVPCリソースへのアクセスがあると 面倒... 13
メリット・デメリット Education-JAWS #5 Lambdaのデメリット 同時実行回数が1000(デフォルト) コールドスタート 15分以上の処理ができない 初めてアクセスがある場合、表示まで遅い API Routes使うと超えるかも?
全く同時タイミングで1000件のリクエストがあ るとエラーになってしまう 14
ビルド結果 問題点 Education-JAWS #5 S3を静的ファイルとして使うとハマる デプロイする流れによってはS3とLambdaのコード が変わり静的ファイルが404 別でビルドしているため、ビルド成果物が同じとは限らない... ビルド結果 ビルド
Dockerビルド 15
問題点 Education-JAWS #5 S3を静的ファイルとして使うとハマる じゃあどうするのか 同じビルド成果物をデプロイすれば良い ビルド結果 ビルド Dockerビルド 16
問題点 Education-JAWS #5 これをCI/CDで実現 CodeBuild CodeDeploy Next.jsビルド S3へ静的ファイルをPut ECRへイメージをPush Lambdaのデプロイ
17
まとめ Education-JAWS #5 最終的なアーキテクチャ 18
まとめ Education-JAWS #5 メリットデメリットある Next.jsをLambdaで構築できる! CI/CDも組み込めると最高 小規模、スタートアップは最高だと思う 大規模だと無理かも 19
まとめ Education-JAWS #5 良いLambdaライフを! 20