Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜
Search
hamakou108
March 13, 2023
Technology
1.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜
hamakou108
March 13, 2023
More Decks by hamakou108
See All by hamakou108
MathPHP で数学人材を目指す - PHPカンファレンス 2021 1週間前イベント 〜 帰ってきたPHP勉強会@東京
hamakou108
0
310
Laravel のメール認証の内部実装を掘り下げる - PHPerKaigi 2021
hamakou108
4
2.8k
PHPer のための Vim 実践入門 - PHP Conference 2020
hamakou108
0
870
Other Decks in Technology
See All in Technology
AIは爆速なのに、私が詰まっていた話 ― 音声入力と鳴くマスコットでボトルネックを削る
yama3133
0
610
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
300
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
7
2.5k
AI時代に必要な脅威モデリング― 変化の速度に負けない理解とリスク判断
masakane55
5
1.3k
DGX Spark でどこまでハッキングができるのか?
kash1064
0
340
Deep Data Security 機能解説
oracle4engineer
PRO
2
780
ハードウェアコンペでもAI駆動開発が進んでいる話
iotengineer22
1
680
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
220
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
130
FOSS4Gを活用した自治体業務DXの試み
470715
0
150
ゲームのリアルタイム通信から見た QUIC と MoQ
segadevtech
0
110
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
510
Featured
See All Featured
Everyday Curiosity
cassininazir
0
350
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
630
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.3k
Why Our Code Smells
bkeepers
PRO
340
58k
Done Done
chrislema
187
17k
For a Future-Friendly Web
brad_frost
184
10k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
750
A Modern Web Designer's Workflow
chriscoyier
699
190k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Transcript
Copyright© M&Aクラウド 私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜 PHPerKaigi 2023(勝手に)リジェクトカンファレンス 株式会社M&Aクラウド 濱田晃輔
Copyright© M&Aクラウド 2 悔しいっ......!悔しいっ......! PHPerKaigi 2023 のプロポーザル通過ならず...
Copyright© M&Aクラウド 3 だがこれでいい......! (勝手に) リジェクトカンファレンス LT 🎉🎉🎉
Copyright© M&Aクラウド 4 プロポーザルの内容 私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜 by 濱田晃輔 | トーク |
PHPerKaigi 2023 #phperkaigi - fortee.jp
Copyright© M&Aクラウド 5 レギュラートーク...? 私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜 by 濱田晃輔 | トーク |
PHPerKaigi 2023 #phperkaigi - fortee.jp
Copyright© M&Aクラウド 6 20分......??? 私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜 by 濱田晃輔 | トーク |
PHPerKaigi 2023 #phperkaigi - fortee.jp
Copyright© M&Aクラウド 7 出来らあっ!!! えっ!!5分で20分の内容を!?
Copyright© M&Aクラウド 8 とある上長 1on1 にて 自分「なるほど...?」 上司「目標設定何か1つ やりたいこと入れて良いよ」
Copyright© M&Aクラウド 9 そういえば... 「おもしれーやつ」 「Four Keys って言うんだ」 生産性を可視化したい! /
SUZURI's four keys - Speaker Deck DevOpsDays Tokyo2022 ファクトから始める改善アプローチ 〜「LeanとDevOpsの科学」を実践して〜 - Speaker Deck 開発組織の生産性を可視化する State of DevOpsとFour Keysとは / deep dive into State of DevOps - Speaker Deck
Copyright© M&Aクラウド 10 聖書を読む 「継続的デプロイ導入すれば良 いんじゃね?」 Nicole Forsgren Ph.D et
al. 著, 武舎 るみ et al. 訳 (2018), LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する
Copyright© M&Aクラウド デリバリーのパフォーマンス 11 Four Keys と継続的デプロイの関係 • Four Keys
◦ デリバリーのパフォーマンスの計測指標 ▪ デプロイ頻度 ▪ 変更のリードタイム ▪ 平均復旧時間 ▪ 変更失敗率 ◦ 組織の収益性や市場占有率、生産性と相関がある • 継続的デプロイ ◦ コード修正を自動的に本番反映するプラクティス ◦ Four Keys 向上に大きな効果が期待できる
Copyright© M&Aクラウド 12 翌週 自分「時代は 継続的デプロイです」 上司「ええやん」 ※実際にはもっと具体的な議論を行っています
Copyright© M&Aクラウド 13 赤信号みんなで渡れば怖くない? 継続的デプロイ導入に伴うリスク • 本番環境で盛大にバグるかも... • ロールバックの判断が難しくなるかも ...
• もう元の開発フローに後戻りできないかも ...
Copyright© M&Aクラウド • バージョン管理 • デプロイメントの自動化 • 継続的インテグレーション • トランクベースの開発
• テストの自動化 • テストデータの管理 • 情報セキュリティのシフトレフト • 疎結合アーキテクチャ • 権限をもつチーム • モニタリング • プロアクティブ(予防的)な通知 14 再び聖書を読む 継続的デリバリーを促進するケイパビリティ Nicole Forsgren Ph.D et al. 著, 武舎 るみ et al. 訳 (2018), LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する
Copyright© M&Aクラウド • バージョン管理 ✅ • デプロイメントの自動化 ✅ • 継続的インテグレーション
✅ • トランクベースの開発 ✅ • テストの自動化 ✅ • テストデータの管理 🚨 • 情報セキュリティのシフトレフト 🚨 • 疎結合アーキテクチャ ✅ • 権限をもつチーム ✅ • モニタリング ✅ • プロアクティブ(予防的)な通知 🚨 15 再び聖書を読む 継続的デリバリーを促進するケイパビリティ Nicole Forsgren Ph.D et al. 著, 武舎 るみ et al. 訳 (2018), LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する
Copyright© M&Aクラウド 16 CI/CD パイプラインによる自動化とその高速化 • 自動化 ◦ テスト・静的解析 ◦
DB マイグレーション ◦ キャッシュクリア ◦ 全文検索エンジンのインデックス更新 ◦ デプロイ (confirmation あり) • 高速化 ◦ テスト並列化 ◦ デプロイ速度のチューニング デプロイメントの自動化 継続的インテグレーション テストの自動化 バージョン管理
Copyright© M&Aクラウド 17 Feature Toggle 戦略 • ロジックや UI を
Feature Toggle で切り替え • ON/OFF データの管理を環境変数から RDB へ • 条件分岐コードの一括削除 ◦ kubotak-is/php-del ◦ fyui001/rice-ball • ON への切り替え時に社内 Slack にリリース通知 デプロイメントの自動化 FeatureToggle戦略と運用方法 - Speaker Deck トランクベースの開発 バージョン管理
Copyright© M&Aクラウド 18 モニタリングとアラート検知 モニタリング バージョン管理 • Cloudwatch ◦ 死活監視
◦ リソース負荷の監視 • Sentry ◦ アプリケーションエラー検知 ◦ パフォーマンス問題の検知 ▪ レスポンス時間の長いページ ▪ N+1 クエリ
Copyright© M&Aクラウド • CI/CD パイプラインによる自動化とその高速化 ◦ => 低コストかつ高頻度でデプロイできる • Feature Toggle
戦略 ◦ => 小さなバッチサイズを維持できる • モニタリングとアラート検知 ◦ => 問題があったらすぐに検知して対処できる 19 実際に役に立った? 継続的デプロイとの相性
Copyright© M&Aクラウド 20 2018年4月リリースから2023年現在に至るまで 日々の開発フロー改善の積み重ねがあった
Copyright© M&Aクラウド 21 青信号を確認して渡ろう 必要最低限のケイパビリティは備えていると判断して導入 メインブランチを develop から master へ!
レビュープロセスや DoD の変更! マージされたら CircleCI で本 番デプロイ! ✅ ✅ ✅
Copyright© M&Aクラウド • 「LeanとDevOpsの科学」では継続的デリバリーの促進要因が示されている • 次のような開発フロー改善が継続的デプロイ導入に特に役立った ◦ CI/CD パイプラインによる自動化と高速化 ◦
Feature Toggle 戦略 ◦ モニタリングとアラート検知 • 継続的デプロイ導入には日々の開発フロー改善が役に立つ 22 まとめ
Copyright© M&Aクラウド Thank you for your attention! 🤩 23
Copyright© M&Aクラウド • 生産性を可視化したい! / SUZURI's four keys - Speaker
Deck • DevOpsDays Tokyo2022 ファクトから始める改善アプローチ 〜「LeanとDevOpsの科学」を実践して〜 - Speaker Deck • 開発組織の生産性を可視化する State of DevOpsとFour Keysとは / deep dive into State of DevOps - Speaker Deck • Nicole Forsgren Ph.D et al. 著, 武舎 るみ et al. 訳 (2018), LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する • プログラマ三大美徳を実現するデプロイフローを目指して - Speaker Deck • PHPコードを消すライブラリを作った - Speaker Deck • FeatureToggle戦略と運用方法 - Speaker Deck 24 参考資料