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
M&Aクラウドにおける AWS ElasticBeanstalkの活用
Search
y-tsuzaki
February 27, 2020
Technology
1
880
M&Aクラウドにおける AWS ElasticBeanstalkの活用
Coral Capital主催「AWS×スタートアップ オンラインLT大会(Coral Developers Night #3)」 一般LT枠
y-tsuzaki
February 27, 2020
Tweet
Share
More Decks by y-tsuzaki
See All by y-tsuzaki
PHPカンファレンス福岡2024 【超特急】SQLアンチパターン総おさらいLT
ytsuzaki
0
1.1k
PHPカンファレンス北海道2024 リーダブルSQL
ytsuzaki
5
630
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
ytsuzaki
1
360
【PhpStorm】モブプログラミングの実践と学び【結局はバランス?】
ytsuzaki
0
370
PHPerKaigi 2022 【Laravel】 サクッとN + 1問題を見つけて倒しチャオ!
ytsuzaki
1
2.9k
【超特急】「SQLアンチパターン」 総おさらいLT 【4分で25個】
ytsuzaki
2
800
Nuxt Composition API 使ってみた
ytsuzaki
0
180
Nuxt.js x Composition API x TypeScript
ytsuzaki
0
710
PHPerKaigi 2021 LT PHPで簡単コード生成! 同じようなコードをたくさん書くなら コード生成しチャイナ!
ytsuzaki
0
110
Other Decks in Technology
See All in Technology
AIエージェント開発のノウハウと課題
pharma_x_tech
10
5.8k
User Story Mapping + Inclusive Team
kawaguti
PRO
3
640
OCI IAM Identity Domains Entra IDとの認証連携設定手順 / Identity Domain Federation settings with Entra ID
oracle4engineer
PRO
1
1.4k
OSSの実装を参考にBedrockエージェントを作る
moritalous
2
390
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
360
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
250
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
220
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
240
StotybookからはじめるVRT -個人開発編-
arrow2nd
1
530
IAMのマニアックな話2025
nrinetcom
PRO
6
1.6k
Real World Nix CI/CD編
asa1984
1
160
【Snowflake九州ユーザー会#2】BigQueryとSnowflakeを比較してそれぞれの良し悪しを掴む / BigQuery vs Snowflake: Pros & Cons
civitaspo
5
1.6k
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
Statistics for Hackers
jakevdp
797
220k
Speed Design
sergeychernyshev
28
820
YesSQL, Process and Tooling at Scale
rocio
172
14k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Designing for humans not robots
tammielis
250
25k
Rails Girls Zürich Keynote
gr2m
94
13k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Being A Developer After 40
akosma
89
590k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Transcript
M&Aクラウドにおける AWS ElasticBeanstalkの活用 つざき Twitter : @ytzk_ Qiita : zackey2
株式会社M&Aクラウド つざき @ytzk_ SIer -> Web受託開発会社 -> ITスタートアップ(1年目) WEBフロントエンド・バックエンド・ちょっとインフラ 銭湯・サウナ・キャンプが好き
自己紹介
話すこと ・M&AクラウドのElasticBeanstalkを活用した環境構成 ・ElasticBeanstalk選定理由 ・ElasticBeanstalkのメリット・デメリット ・ElasticBeanstalk ワーカー環境の活用 話さないこと 他のアーキテクチャやクラウドサービスとの比較 対象 新規サービスをこれから作ろうとしてる方
M&Aクラウド?
M&Aクラウドは、 M&Aクラウドという M&Aのマッチングプラットフォームを運営する スタートアップ企業です
設立 5期目 サービスローンチから 2年目 従業員数 21名 エンジニア 5名
None
None
サーバーサイド PHP7.2, Laravel6.4, MySQL5.7 フロントエンド JavaScript, sass, Vue.js, 一部Nuxt.js(Typescript) 開発ツール
GitHub CircleCI
ローンチ当初の環境構成
None
ElasticBeanstalkとは
(釈迦に説法だと思うので割愛)
ElasticBeanstalk選定の理由
- エンジニア一人だけ - インフラはそれほど詳しくない - 早くサービスをローンチしたい - サービスが当たるかどうかわからない - サービスの機能追加が優先
- 本番環境でDockerを使うことがそれほど一般的ではな かった - どうやらElasticBeanstalkが良さそう(口コミ)
ElasticBeanstalkのいい点
- 簡単に冗長構成のWebサイトを公開できる - LBやセキュリティグループやサブネットなどの細々し た設定をしなくていい - ミドルウェアのインストールなども自動でやってくれる - PHPプラットフォームを選択すればPHPの動作に必 要なミドルウェアが自動でインストールされる
- リリースが楽 - eb コマンドで簡単にコードをデプロイできる - Webコンソールから環境変数の追加変更 - 複数環境作るときに楽 - Webコンソールからオートスケールの設定
ElasticBeanstalkのいまいちな点
- リリースに時間がかかる - インスタンス1台5分程度かかる 2台構成で10分程度 - 環境変数を変更するだけでも同じくかかる - PHPのバージョンアップが遅い -
PHP7.3リリースからおよそ8ヶ月後に追加
現在の環境構成
None
全文検索機能追加 ワーカーサーバーの導入 Nuxt.jsによる一部ページの 置き換え
1年半経ってもElasticBeanstalkを使ったWebサーバで問 題なく機能拡張できている
ワーカー環境の活用
- ElasticBeanstalkの2種類の環境枠 - ウェブサーバー環境 - ワーカー環境 - ワーカー環境はバックグラウンド処理専用のサーバ - インターネットに公開されないサーバ
- SQSのキューを監視してジョブをlocalhostのアプリケー ションにPOSTしてくれる - ジョブの並列実行可能 - Cronのように指定時刻にアプリケーションにPOSTしてく れる機能もある
- M&Aクラウドでは 非同期メール送信、定時メール送信をワーカー環境で実行 するようにした - ワーカー環境導入の結果 - メール送信 100通 /
分 → 800通 / 分 - 並列数を増やせばもっと早くできそうだがSESの上限を 超えないくらいに設定
まとめ Elasitic Beanstalkは - 素早くサービスを始められる - サービスが成長しても使い続けられる インフラに割くリソースがなく スモールスタートでサービスをローンチしたい場合に 適切なソリューション