Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laravel Vapor Serverless Laravel

0ef9c2d090af1a444b51e63fa463a903?s=47 akki
September 25, 2019

Laravel Vapor Serverless Laravel

0ef9c2d090af1a444b51e63fa463a903?s=128

akki

September 25, 2019
Tweet

Transcript

  1. Laravel Vapor Serverless Laravel 2019/09/25 PHP勉強会 秋葉 誠一 @akki_megane

  2. 自己紹介 名前:秋葉 誠一 生年月日:1993/12/17 会社:株式会社ニジボックス 趣味:スノボ、サバゲー、野球(NPB,MLB) @akki_megane

  3. • サーバーレスとは • Laravel Vapor とは • Laravel Vapor 使ってみて

    • まとめ Agenda
  4. サーバーレスとは ※本題ではないのでざっくり説明します

  5. サーバーレスとは サーバーレス

  6. サーバーレスとは サーバーレス サーバーレス・コンピューティング

  7. サーバーレスとは クラウド・プロバイダーがアプリケーションに必要なマシン・リ ソースの割り当てを動的に管理し、 事前に購入されたことに基づく請求ではなく、 各アプリケーション要求を満たすために使用される個々のリ ソース量に基づいた請求を行うような クラウド・コンピューティングの実行モデルである ユーティリティ・コンピューティングの一形態である

  8. サーバーレスとは 物理サーバーがアプリケーション・コードを提供するユー ザーの視点から完全に抽象化されているため、「サーバー レス・コンピューティング」という名前が使用される。 出典:wikipedia

  9. サーバーレスとは FaaS Function as a Service

  10. サーバーレスとは

  11. サーバー管理レス 柔軟なスケーリング 従量課金

  12. サーバーレスとは ざっくり説明あとは自分で調べてね

  13. Laravel Vapor とは

  14. Laravel Vapor とは

  15. Laravel Vapor とは 2019/07/24-25 Lraracon US にてLaravel6 と一緒にお披露目されました

  16. Laravel Vapor とは

  17. Laravel Vapor とは

  18. Laravel Vapor とは 作者:Taylor Otwell Founder of Laravel 9〜10ヶ月 週40時間

    かけて作った
  19. Laravel Vapor とは Laravel用 の サーバーレス展開・管理プラットフォーム Vaporは Laravel アプリケーションを、AWS Lambdaに展開

    し、S3、RDS、ALB 等の Webアプリケーションに必要な各種AWSのサービスと連携す ることができます。
  20. Laravel Vapor とは Laravel で作った、アプリケーションを AWS Lambdaに乗っけて、動かす ための機能を提供してくれるサービス(SaaS)

  21. いくつかの機能 with 公式ドキュメント(Google 翻訳)

  22. None
  23. Laravel Vapor とは 有料

  24. Laravel Vapor とは 有料 AWSの料金

  25. Laravel Vapor 使ってみて

  26. None
  27. 環境 • PHP:7.3以降 • Laravel:6.0以降

  28. 事前準備 • Laravel Vapor への登録 • AWSのIAMユーザーの連携

  29. デプロイしてみよう Laravelのプロジェクト作る - このときVaporだということを意識することはない - (今の所)

  30. デプロイしてみよう ツールのインストール - vapor-cli - CLIから操作できるようにするためのツール - vapor-core - Lambdaで動かせるようにするためのツール

    入れとくだけ
  31. デプロイしてみよう vapro.yml(設定ファイル)の編集 - Vaporに関する設定はこの ファイルだけあればいい

  32. デプロイしてみよう デプロイコマンド実行 - $ vapor deploy production

  33. デプロイしてみよう

  34. デプロイ解説 ※公式で詳しい解説がないので、 AWSにできてるものと、ソースから追いました。 間違えてる箇所もあると思いますので、 ざっくり解説なので、 大目にみていただけると幸いです。

  35. デプロイ解説 CLI AWS CLI

  36. upload Laravel のソース

  37. None
  38. None
  39. 個人的ツボ

  40. 個人的ツボ Lambda 及び、API Gateway は1つしか作られないので、 Lambda内部のLaravel をつかってルーティングしている

  41. かなり簡単にデプロイまでいける!

  42. かなり簡単にデプロイまでいける! しかもサーバーレス!

  43. DBにもつなぎたいよね!

  44. VPC 作成 (CLIからでも作れる)

  45. RDS 作成 (CLIからでも作れる)

  46. DB補足 固定サイズの RDS MySQL 8.0 自動スケーリング Aurora MySQL 5.6

  47. vapro.yml 編集

  48. vapro.yml 編集 DB情報 DBマイグレーション

  49. 後はデプロイするだけ

  50. とっても簡単!

  51. まとめ

  52. 感想 • すげー!と思った • Lambdaでごにょごにょしてた身としてはとにかく驚き • なんだか革新的な感じがした • フルスタックなフレームワークでこれをやるのか

  53. 感想 ただ一番思ったのが

  54. 感想 帯に短し 襷に長し なんだか中途半端に感じだなー

  55. インスタンス立てれば? LambdaのAPIにわざわざLaravel 使わなくても、、 オートスケールしたならコンテナでいいんじゃ、、 感想

  56. 疑問 Taylor Otwell はなにを思って Laravel Vaporを作ったのか?

  57. 海外のPodcast で答えていました https://www.serverlesschats.com/7

  58. Q. なぜLaravel Vapor を作ったのですか?

  59. A. サーバーについて二度と考えたくないからです。 そのために Laravel Forge を作りました。 ただそれでも、サーバーについて考える必要がありまし た。

  60. A. サーバーについて考えなくていいように、 完全にサーバレスにするために、 Laravel Vapor を作りました

  61. Q. Laravel が将来的に サーバレスに向かっているということですか?

  62. A. 間違いなく将来、大きなの割合を占めるものだと思いま す。そして、サーバーレスの哲学とLaravelの哲学は非常 に似ていると思います。 目標は、価値を提供し、ビジネスに意味のある ロジックを書くことに集中できるということです。 それらはうまく調和すると思います 。

  63. A. 将来、複雑さが増し、構成ファイルが増え、 もっと変な コンテナ オーケストレーションですか? 人々が自然に引き寄せられるような未来が これだとは思いません。

  64. A. 人々はもっとシンプルなものが欲しいと思う。そして、 結局のところ、サーバーレスの方が簡単だと思いま す。 プラットフォームが良くなるにつれて、ツールが良くなる につれて、よりシンプルになるだけです。

  65. 今後Laravel はどうなっていくのか? サーバレスは本当に未来なのか? なんだか面白いな!

  66. ご清聴ありがとうございました