創業期 Not Severless ! ~ たくさんのリプレイスを添えて~
by
Suguru Oki / スー
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
創業期 Not Severless ! ~ たくさんのリプレイスを添えて~
Slide 2
Slide 2 text
Agenda Serverlessは何がlessなのか? サーバーレスの選択に必要なもの ElasticBeanstalkの課題感 ECSに変更した理由 まとめ
Slide 3
Slide 3 text
自己紹介 テックリード / Suguru Ohki スー T e c h T r a i n の エ ン ジ ニ ア 1 人 目 。 技 術 を 反 復 横 跳 び し て い ま す が 、 前 よ り 抑 え ら れ て い ま す ・ ・ ・ ! 趣 味 : サ ウ ナ 、 お 酒 。 コ ー ド を 書 く こ と ・ ・ ・ ?
Slide 4
Slide 4 text
01 Serverlessは何が lessなのか?
Slide 5
Slide 5 text
Serverl essは何がl essなのか? 🙅♀️ サーバーがないこと 🙆♀️ サーバー管理がなくなること 大前提を揃えると・・・
Slide 6
Slide 6 text
Serverl essは何がl essなのか? トリさんのスライド より引用
Slide 7
Slide 7 text
Serverl essは何がl essなのか? トリさんのスライド より引用
Slide 8
Slide 8 text
Serverl essは何がl essなのか? トリさんのスライド より引用 ≒メリットである常駐プロセスの管理の放棄の決定
Slide 9
Slide 9 text
常駐プロセスの管理の放棄は何を意味するか? イベント駆動などのサーバーレスに適した アーキテクチャの選択
Slide 10
Slide 10 text
02 Serverlessの 選択に必要なもの
Slide 11
Slide 11 text
採用 サーバーレスのアーキテクチャに 慣れた人がいること 技術 現在のチームに適した技術で サーバーレスを利用しやすい状況で あること 1 2 サーバーレスの 選択に必要なもの
Slide 12
Slide 12 text
採用 サーバーレスのアーキテクチャに 慣れた人がいること 技術 現在のチームに適した技術で サーバーレスを利用しやすい状況で あること 1 2 サーバーレスの 選択に必要なもの →いない。社員1人。 →PHP?んなわけ・・・! Node.js使いこなせない!
Slide 13
Slide 13 text
サーバーレスの 選択に必要なもの サーバーレスに向いたアーキテクチャに慣れた人がいない 1 . バックエンドで慣れてる人が多いPHPが適していない 2 . 選定理由 ElasticBeanstalkを当時は選択 with スタートアップスタジオの方
Slide 14
Slide 14 text
03 ElasticBeanstalkの 課題感
Slide 15
Slide 15 text
El asti cBeanstal kの 課題感 PHPのバージョンアップ対応の遅さ 1 . スケールインアウトの粒度が大きい 2 . デプロイに時間がかかる 3 . 当時の状態
Slide 16
Slide 16 text
El asti cBeanstal kの 課題感 PHPのバージョンアップ対応の遅さ →自前でやりたい 1 . スケールインアウトの粒度が大きい→ECSなら小さくできそう 2 . デプロイに時間がかかる→ECSならCDの改善の余地あり 3 . 当時の状態
Slide 17
Slide 17 text
El asti cBeanstal kの 課題感 PHPのバージョンアップ対応の遅さ →自前でやりたい 1 . スケールインアウトの粒度が大きい→ECSなら小さくできそう 2 . デプロイに時間がかかる→ECSならCDの改善の余地あり 3 . 当時の状態 コンテナってやつの出番ではないか・・・?
Slide 18
Slide 18 text
El asti cBeanstal kの 課題感 環境のポータビリティ 1 . スケールイン・アウトの単位を小さくする 2 . 迅速なデプロイ 3 . コンテナ周りが解決すると考えていたこと 実際には、PHPの場合1のメリットが一番大きかった
Slide 19
Slide 19 text
04 ECSに変更した理由
Slide 20
Slide 20 text
ECSに変更した理由 ECS: 1 . EKS: 2 . コンテナを利用するにしても選択肢があった
Slide 21
Slide 21 text
ECSに変更した理由 ECS: コンテナ単位でたタスクを指定し、コントロールできる 1 . EKS: ECSよりもさらに細かくコントロールが可能 2 . コンテナを利用するにしても選択肢があった
Slide 22
Slide 22 text
ECSに変更した理由 ECS: コンテナ単位でたタスクを指定し、コントロールできる 1 . EKS: ECSよりもさらに細かくコントロールが可能 2 . コンテナを利用するにしても選択肢があった ECSを採用 。まだ当時1人の状況が続いており、 流石に Kubernetesのメンテコストを無視できなかった
Slide 23
Slide 23 text
ECSに変更した理由 事業的には人がいてお金があれば、 EKSという選択も実はアリだった。 補足 VSCodeなどのエディタのホスティングpodを発行 1 . 問題のTest実行をKubernetes内でpodを立てて実行 2 . ユーザーごとに1,2を踏まえた細かいハンドリングを実行 3 .
Slide 24
Slide 24 text
ECSに変更した理由 事業的にはk8sのメンテナがいてお金があれば、 EKSという選択も実はアリだった。 補足 ↑をやるにはECSだと難しいポイントが多い。 VSCodeなどのエディタのホスティングpodを発行 1 . 問題のTest実行をKubernetes内でpodを立てて実行 2 . ユーザーごとに1,2を踏まえた細かいハンドリングを実行 3 .
Slide 25
Slide 25 text
05 まとめ
Slide 26
Slide 26 text
まとめ サーバーレスを採用するにあたっては必要な人と技術がある 1 . ない→コンテナを使ったオーソドックスなWebがおすすめ 2 . 最近ハードルが下がったため、サーバーレススタートはあり! 3 .
Slide 27
Slide 27 text
Thank You! ご清聴ありがとうございました!
Slide 28
Slide 28 text
余談: 今だったらどういう構成にする? PHPメイン 1 . Laravel+bref+Lambda a . 処理時間が短い, フロントエンドの充実が必要ない i . バックエンド系にロジックを入れたいならこれ ii . フロントエンドメイン 2 . Next.js+Cloudflare(or Vercel)+supabase a . 見せ方が重要,バックエンドのロジックが少なめ i . メディアに近い構成や会員サイトくらいならこれが楽 ii .