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
Wantedlyを2年間Herokuで運用した話
Search
Yoshinori Kawasaki
November 22, 2013
Programming
270
1
Share
Wantedlyを2年間Herokuで運用した話
Wantedlyを2年間Herokuで運用した話
http://www.wantedly.com/companies/wantedly/projects
Yoshinori Kawasaki
November 22, 2013
More Decks by Yoshinori Kawasaki
See All by Yoshinori Kawasaki
変容するワークスタイルとUXデザイン / UX Design in a New Era of Work
kawasy
6
2.1k
リーダーとつきあうための冴えたやりかた / Managing Your Leader
kawasy
20
53k
開発者体験(DX)を改善する チームを作った / DX: Improve developer experience to deliver quality product faster and more frequently
kawasy
8
2.8k
OpenTelemetry 進捗 2019年6月版 / OpenTelemetry Current Status June 2019 #opencensusjp
kawasy
2
2.5k
LT: 海外カンファレンスで発表しよう / How to give a talk at an international conference #megurorb
kawasy
2
1.4k
[RailsConf 2019] Troubleshoot Your RoR Microservices with Distributed Tracing
kawasy
7
16k
アルゴリズムとデータ構造から理解するRedis / Learn Redis from Internal Algorithms and Data Structures
kawasy
26
45k
OpenCensus Ruby 実装についてひと言 / Current Status of OpenCensus Ruby #opencensusjp
kawasy
2
5.3k
The Wantedly Story - Journey of 2012
kawasy
2
39k
Other Decks in Programming
See All in Programming
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
130
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
180
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
330
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
3
1.1k
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
340
Zod v4 Codec でスキーマに型変換を埋め込む REST API 設計 #TSKaigi2026
ryutaro_yako
0
140
AWSはOSSをどのように 考えているのか?
akihisaikeda
1
140
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
140
OSもどきOS
arkw
0
130
Are We Really Coding 10× Faster with AI?
kohzas
0
230
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
210k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
180
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
4 Signs Your Business is Dying
shpigford
187
22k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Typedesign – Prime Four
hannesfritz
42
3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
360
Transcript
γΰτͰίίϩΦυϧ www.wantedly.com ! Yoshinori Kawasaki (@kawasy) ! Tech Compass Vol.
06, 22-Nov-2013
ࣗݾհ
None
https://www.wantedly.com/users/10599 [PR]! ! WantedlyϓϩϑΟʔϧΛ! Έ͍ͯͩ͘͞
ձࣾհ
None
New!! ΦϑΟεҠస͠·ͨ͠! ! ! http://blog.kushii.net/archives/1874257.html
[PR]! ! ΤϯδχΞɾσβΠφશһ! ࣗࣾαʔϏεΛͬͯ࠾༻! dogfooding ͯ͠·͢ https://www.wantedly.com/projects/7
WantedlyΛ! 2ؒHerokuͰ! ӡ༻ͨ͠
AWS Heroku Ruby on Rails Ruby PostgreSQL Backbone.js WantedlyΛࢧ͑Δٕज़ Chef
git push & open pull request GitHub GitHub bot Development
env Jenkins CI start a new build notify build status notify pull request opening update build status on a pull request Pull Request Λ͔ͭͬͨ! ϫʔΫϑϩʔ HipChat notifications
Production, Staging, QAͱ! ڥΛ͍͘ΒͰ૿ͤΔ development env $ git push 1ʹԿͰdeploy
! Continuous Delivery production & staging env
ຊ൪ڥͷมߋɾΞϥʔτΛ! HipChatʹ௨ Deploy௨ Τϥʔ௨ ύϑΥʔϚϯεࢹ ͦͷଞherokuίϚϯυ
None
ͦͦ! ͳͥWantedly HerokuΛ! ͍࢝Ίͨͷ͔
2011Ն
ΤϯδχΞ! 0ਓ
None
None
None
None
None
ඇΤϯδχΞͰ! ֶशͰ͖ͨ! Rails & Heroku
ΤϯδχΞͰͳͯ͘! ΞΠσΞͱ͕͋Ε! ͻͱΓͰαʔϏεΛ! ͡ΊΒΕΔ http://blog.wantedly.com/post/22557898746/hacker-way
2012य़
Dyno! web: 1! worker: 1
ΤϯδχΞ! 1ਓ
ελʔτΞοϓͰ! େͳ͜ͱ
Build-Measure-Learn http://lean.st/principles/build-measure-learn
Ϣʔβʹ৽͍͠ՁΛಧ͚Δ͜ͱ! ڝ߹ɾେاۀʹෛ͚ͳ͍εϐʔυ! ݶΒΕͨΤϯδχΞɾϦιʔεͷ༗ޮ׆༻
༏लͳΠϯϑϥΤϯδχΞ! ͱͯ͠ͷHeroku development env $ git push 1ʹԿͰdeploy ! Continuous
Delivery production & staging env
2013य़
Dyno! web: 3 (2X) ←NEW!! worker: 1
ΤϯδχΞ! 3ਓ
๛ͳAdd-ons ! Memcached MongoDB Redis Hadoop SMTP ࢹ ϩάཧ ͳͲ
๛ͳAdd-ons ! Memcached MongoDB Redis Hadoop SMTP ࢹ ϩάཧ ͳͲ
๛ͳAdd-onΛ! ॠ࣌ʹࢼͤΔ
WantedlyͰ! ͍ଓ͚͍ͯΔ! Add-onհ
https://addons.heroku.com/deployhooks#http Deploy Hooks
https://addons.heroku.com/newrelic New Relic
https://addons.heroku.com/sendgrid SendGrid
https://addons.heroku.com/logentries Logentries
https://addons.heroku.com/exceptional Exceptional
https://addons.heroku.com/process-scheduler Process Scheduler
https://addons.heroku.com/treasure-data Treasure Data Hadoop
https://addons.heroku.com/scheduler Heroku Scheduler SSL https://addons.heroku.com/ssl#endpoint https://addons.heroku.com/flydata FlyData https://addons.heroku.com/memcachier MemCachier
࠷৽ใ! BlogͱChangeLogͰ! ͓͔͚ͬΔ! https://blog.heroku.com/! https://devcenter.heroku.com/changelog
2013Ն
Dyno! web: 2 ~ 8 (2X)! worker: 1 ~ 5
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө ᷚʹฉ͘WBS๒…
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө ᷚʹฉ͘WBS๒…
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө ࣸਅͱͬͯΔ߹͡Όͳ͍
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө heroku ps:scale web=100
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө heroku ps:scale web=100
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө ίετతʹ! dyno͚ͩͳΒ! 1࣌ؒ$10ఔ
ٸͳςϨϏग़ԋ! ༵ۚʹऔࡐ! →݄༵ʹ์ө ࣮ɺಉேʹ! ৽αʔϏεΛϩʔϯν! ͪ͜ΒͷWebαΠτ! HerokuͰ
·ͱΊ
ඇΤϯδχΞͰ͑Δखܰ͞! ্ཱͪ͛ظͷίετΛ࠷খݶʹ
Πϯϑϥؙ͛ͯ͠! αʔϏε։ൃʹूத! ৺͠ͳ͍͍ͯ͘͜ͱ! ৺͠ͳ͍
Wantedlyͷ! ͜Ε·Ͱͷ! Herokuͷ͓͔͛
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ