$30 off During Our Annual Pro Sale. View Details »
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
940
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
1
1.4k
PHPカンファレンス北海道2024 リーダブルSQL
ytsuzaki
5
750
ある日PHPerがベンチャー企業のデータ基盤を作ることになったら
ytsuzaki
1
420
【PhpStorm】モブプログラミングの実践と学び【結局はバランス?】
ytsuzaki
0
450
PHPerKaigi 2022 【Laravel】 サクッとN + 1問題を見つけて倒しチャオ!
ytsuzaki
1
3.1k
【超特急】「SQLアンチパターン」 総おさらいLT 【4分で25個】
ytsuzaki
2
870
Nuxt Composition API 使ってみた
ytsuzaki
0
260
Nuxt.js x Composition API x TypeScript
ytsuzaki
0
770
PHPerKaigi 2021 LT PHPで簡単コード生成! 同じようなコードをたくさん書くなら コード生成しチャイナ!
ytsuzaki
0
150
Other Decks in Technology
See All in Technology
Symfony AI in Action
el_stoffel
2
370
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
1
550
AI時代の開発フローとともに気を付けたいこと
kkamegawa
0
340
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
9.4k
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
540
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
110
バグハンター視点によるサプライチェーンの脆弱性
scgajge12
2
490
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
210
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
0
120
著者と読み解くAIエージェント現場導入の勘所 Lancers TechBook#2
smiyawaki0820
9
3.1k
Modern Data Stack大好きマンが語るSnowflakeの魅力
sagara
0
280
Uncertainty in the LLM era - Science, more than scale
gaelvaroquaux
0
540
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
A Tale of Four Properties
chriscoyier
162
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Faster Mobile Websites
deanohume
310
31k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Automating Front-end Workflow
addyosmani
1371
200k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
A better future with KSS
kneath
240
18k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
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は - 素早くサービスを始められる - サービスが成長しても使い続けられる インフラに割くリソースがなく スモールスタートでサービスをローンチしたい場合に 適切なソリューション