創業期 Not Severless ! ~ たくさんのリプレイスを添えて~
by
Suguru Ohki
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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 .