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
AWS Lambda で PHP を動かす Bref の布教に来ました。
Search
chatii
October 10, 2023
Programming
0
1.1k
AWS Lambda で PHP を動かす Bref の布教に来ました。
2023-10-08 PHPカンファレンス2023で登壇した際のスライドです。
登壇では時間が足りなくなり全てお話しできませんでした…。
chatii
October 10, 2023
Tweet
Share
More Decks by chatii
See All by chatii
BrefとCDKでライブアップデートしながら開発
chatii
0
220
イベントの告知です (PHP Lovers Meetup Vol.0)
chatii
0
100
名付けできない画面を作ってはならない - 名前を付けるとは何か
chatii
1
2.9k
LAMPをこじらせてサーバーレスに乗り遅れたPHPerがLambdaに入門してみる
chatii
2
1.6k
LaraDock がいろいろ参考になった話
chatii
0
110
Other Decks in Programming
See All in Programming
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
110
構造化・自動化・ガードレール - Vibe Coding実践記 -
tonegawa07
0
170
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
700
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
3
360
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
920
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
770
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
370
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
4
2.4k
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
110
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
1
900
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
510
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
430
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Become a Pro
speakerdeck
PRO
29
5.5k
RailsConf 2023
tenderlove
30
1.2k
The Cult of Friendly URLs
andyhume
79
6.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Speed Design
sergeychernyshev
32
1.1k
Designing Experiences People Love
moore
142
24k
Into the Great Unknown - MozCon
thekraken
40
2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
The Invisible Side of Design
smashingmag
301
51k
Site-Speed That Sticks
csswizardry
10
750
Transcript
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at
PHPカンファレンス2023 2023-10-08 15:55 Track3
自己紹介 ちゃちい (𝕏: @chatii) 合同会社inbaa 代表社員 PHPerRoom 主宰 PHP Lovers
Meetup 主宰 妻・息子・娘 + ウマ娘のトレーナー: 890 570 082 PHP 4からのPHPer AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で
PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
話すこと サーバーレスと AWS Lambdaの カンタンな紹介 Brefの紹介 Brefのデプロイをデモ 時間があれば ログ、エラー、モニタリング Lambdaの制限を避ける構成
話さないこと サーバーレスの厳密な説明 Brefの仕組み PHPカンファレンス沖縄2023 清家さんの発表が参考になります (現時点非公開) AWS以外の クラウドベンダの話 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Bref AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Q. Brefを知っている? AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Q. Brefを使ったことがある? AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Q. Brefを本番環境で使ったこと がある? AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Q. 選定候補にBrefを挙げたこと がある? AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
ご回答ありがとうございます Brefの布教が主題なので、 今どれくらい使われているかは知りたい AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Brefの布教? AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で
PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で
PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で
PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Brefを日本で広めたい AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
本題 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
サーバーレスとAWS Lambda AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
サーバーレスとは サーバーの管理が不要 柔軟なスケーリング 使っていない時にはリソース不要 AWS Lambda で PHP を動かす Bref
の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
サーバーの存在を意識しなくてよい AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
AWS Lambda とは AWS のサービスの一つ イベントを起点にコードを実行する Webのリクエスト 特定の時間になったら S3にファイルが置かれたら…など 「実行時間」と「リクエスト件数」に応じ費用
"レイヤー"によるカスタマイズの他、コンテナイメージも AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Lambdaが公式サポートしている言語 Lambda は、ネイティブでは、Java、Go、 PowerShell、Node.js、C#、Python、Ruby の コードをサポートしています。 AWS Lambda で PHP
を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
また、関数の作成にその他のプログラミング言語を 使用できるようにするための Runtime API を 提供しています。 AWS Lambda で PHP
を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Lambdaの制限 項目 値 同時実行数(リージョンあたり) 1,000 タイムアウト 900 sec リクエスト/レスポンスのサイズ (同期リクエスト)
6 MB 環境変数のサイズ 4 KB デプロイパッケージのサイズ 250 MB コンテナイメージのサイズ 10 GB AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
わかりやすいLambdaの活動の図 https://serverless-visually-explained.com/ Lambdaの発火〜終了がわかりやすい AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Bref AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Bref Lambda のランタイム PHP 8.0 ~ 8.3RC2(2023-10-05時点) ARM/Gravitonのサポート Extentionのサポート Symfony、Laravelのサポート
Serverless Framework, AWS CDK でのデプロイ CDKスキーとしては大歓喜 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
昨年(2022)の登壇 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Brefを使った開発の進め方 ここからライブでデモをやります AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
時間あれば Brefのログや エラー、モニタリング AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
Brefならではというものはない CloudWatch Logsと仲良くする stdout , stderr めんどう…? Bref Dashboardで表示できる AWS
Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
DataDog CloudWatch Logsを収集してくれる New Relic CloudWatch Logsを収集するLambdaが提供されている Tideways Brefのドキュメントで紹介されているが デーモンがEC2インスタンスで必要
Sentry エラー検知のみなら AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
時間あれば Lambdaの制限を避ける構成 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
実行時間の制限を回避する リクエスト・レスポンスの制限を回避する AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS
Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
実行時間の制限を回避する 1. バッチ処理の開始 EventBridge Schedulerで発火 2. AWS Step Functionsの起動 1.
バッチ処理対象を収集するタスク 2. 並列でバッチ処理 3. すべてが終わったらバッチ処理完了 1実行あたりの処理時間を極力減らすように作る 途中エラーがあったら巻き戻せるように作る AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
リクエスト・レスポンスの 制限を回避する リクエスト 大抵ファイルアップロード クライアントサイドで直接S3 にアップロード アップロード結果を サーバーサイドに知らせる レスポンス ファイルはS3に置くこと
結果が6MBを超える そんなことある?? フロントエンドの設計も必要 AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
まとめ AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
メリット サーバーを管理しなくてよい 実行時間に対する課金 Symfony, Laravelへの 導入の手軽さ 既存のアプリの移行はどうかな… デメリット 同時実行数の制限 リージョンあたり1000まで
1関数ではなく、すべて 新規AWSアカウント作ると初期 値10 引き上げリクエストしないと… ローカル環境との差異 PHPが動くなら動くでしょうとい う割り切り コンテナを使おう AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
話せなかったこと コンテナイメージでの構築 ↑を使ったローカル環境の構築 AWS Lambda で PHP を動かす Bref の布教に来ました。
AWS Lambda で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3
ご清聴ありがとうございました AWS Lambda で PHP を動かす Bref の布教に来ました。 AWS Lambda
で PHP を動かす Bref の布教に来ました。 by chatii at PHPカンファレンス2023 Track3 by chatii at PHPカンファレンス2023 Track3