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
Adam Kentosh - 12-factor assessment
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
DevOpsDays Ohio
November 19, 2015
Technology
0
280
Adam Kentosh - 12-factor assessment
DevOpsDays Ohio
November 19, 2015
Tweet
Share
More Decks by DevOpsDays Ohio
See All by DevOpsDays Ohio
Gene Pavell - Change Management Does Not Have To Be Horrible
devopsdaysohio
0
230
Carmen DeArdo - The Nationwide DevOps Journey
devopsdaysohio
0
420
Monica McJunkin - Driving DevOps with Data
devopsdaysohio
0
160
Other Decks in Technology
See All in Technology
What happened to RubyGems and what can we learn?
mikemcquaid
0
300
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
310
20260204_Midosuji_Tech
takuyay0ne
1
160
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
Greatest Disaster Hits in Web Performance
guaca
0
260
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
310
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
260
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Leo the Paperboy
mayatellez
4
1.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
750
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
57
50k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
100
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Transcript
CLOUD IS ABOUT HOW COMPUTING IS DONE, NOT WHERE Pivotal
TWELVE-FACTOR APP ASSESSMENT
TWELVE-FACTOR APP ASSESSMENT CLOUD-NATIVE APPLICATION ASSESSMENT ▸ Based on twelve-factor
app methodology ▸ Answers questions around what to migrate
TWELVE-FACTOR APP ASSESSMENT TWELVE-FACTOR APP ▸ Methodology for building cloud-native
web apps
TWELVE-FACTOR APP ASSESSMENT SCORING ▸ Evaluate an app against each
of the twelve-factors ▸ Assign a score of 0-1 for each
TWELVE-FACTOR APP ASSESSMENT I. CODEBASE ▸ Version controlled, one-to-one correlation
Example: Multiple codebases is a distributed system, not an app score = .6
TWELVE-FACTOR APP ASSESSMENT II. DEPENDENCIES ▸ Explicitly declare and isolate
dependencies EXAMPLE: Pip + wget for external dependency score = .7
TWELVE-FACTOR APP ASSESSMENT III. CONFIG ▸ Store config in the
environment EXAMPLE: Using java system properties score = .5
TWELVE-FACTOR APP ASSESSMENT IV. BACKING SERVICES ▸ Treat backing services
as attached resources EXAMPLE: Accessing local file system score = .4
TWELVE-FACTOR APP ASSESSMENT V. BUILD, RELEASE, RUN ▸ Strict separation
between build, release, and run EXAMPLE: Build rpm, run with startup script score = .8
TWELVE-FACTOR APP ASSESSMENT VI. PROCESSES ▸ Processes are stateless and
share nothing. EXAMPLE: Sticky sessions score = 0
TWELVE-FACTOR APP ASSESSMENT VII. PORT BINDING ▸ Export services via
port binding EXAMPLE: local MTA instead of a smarthost score = .2
TWELVE-FACTOR APP ASSESSMENT VIII. CONCURRENCY ▸ Scale out via the
process model EXAMPLE: JVM with large block of system resources score = .3
TWELVE-FACTOR APP ASSESSMENT IX. DISPOSABILITY ▸ The entire process is
disposable EXAMPLE: Web processes stop listening score = 1
TWELVE-FACTOR APP ASSESSMENT X. DEV/PROD PARITY ▸ All environments are
as similar as possible. EXAMPLE: Using Redis and MySQL but deploy oracle in prod score = .7
TWELVE-FACTOR APP ASSESSMENT XI. LOGS ▸ Treat logs as event
streams Logging to local file but using Splunk score = .4
TWELVE-FACTOR APP ASSESSMENT XII. ADMIN PROCESSES ▸ Run admin/management tasks
as one-off processes EXAMPLE: SSH to create Tomcat symlink score = .2
TWELVE-FACTOR APP ASSESSMENT SCORING Sum Sum of Squares 0.6 0.6
0.7 0.7 0.5 0.5 0.4 0.4 0.8 0.8 0 0 0.2 0.2 0.3 0.3 1 1 0.7 0.7 0.4 0.4 0.2 0.2 5.8 3.72
TWELVE-FACTOR APP ASSESSMENT SCORING ▸ Sum of squares
TWELVE-FACTOR APP ASSESSMENT BUSINESS OBJECTIVES ▸ Can take business objectives
into consideration.
TWELVE-FACTOR APP ASSESSMENT GAP ANALYSIS ▸ Identify quick wins and
long polls
TWELVE-FACTOR APP ASSESSMENT CONTACT INFORMATION ▸ Adam Kentosh ▸
[email protected]