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
1
250
Wantedlyを2年間Herokuで運用した話
Wantedlyを2年間Herokuで運用した話
http://www.wantedly.com/companies/wantedly/projects
Yoshinori Kawasaki
November 22, 2013
Tweet
Share
More Decks by Yoshinori Kawasaki
See All by Yoshinori Kawasaki
変容するワークスタイルとUXデザイン / UX Design in a New Era of Work
kawasy
6
2k
リーダーとつきあうための冴えたやりかた / Managing Your Leader
kawasy
21
52k
開発者体験(DX)を改善する チームを作った / DX: Improve developer experience to deliver quality product faster and more frequently
kawasy
8
2.7k
OpenTelemetry 進捗 2019年6月版 / OpenTelemetry Current Status June 2019 #opencensusjp
kawasy
2
2.4k
LT: 海外カンファレンスで発表しよう / How to give a talk at an international conference #megurorb
kawasy
2
1.3k
[RailsConf 2019] Troubleshoot Your RoR Microservices with Distributed Tracing
kawasy
7
16k
アルゴリズムとデータ構造から理解するRedis / Learn Redis from Internal Algorithms and Data Structures
kawasy
26
44k
OpenCensus Ruby 実装についてひと言 / Current Status of OpenCensus Ruby #opencensusjp
kawasy
2
5.2k
The Wantedly Story - Journey of 2012
kawasy
2
39k
Other Decks in Programming
See All in Programming
Catch Up: Go Style Guide Update
andpad
0
230
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
5
2.5k
CSC305 Lecture 05
javiergs
PRO
0
220
All About Angular's New Signal Forms
manfredsteyer
PRO
0
190
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
160
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
15
5.8k
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
240
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
510
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
120
CSC305 Lecture 06
javiergs
PRO
0
250
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
5.1k
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
3
660
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
A Tale of Four Properties
chriscoyier
161
23k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Faster Mobile Websites
deanohume
310
31k
Context Engineering - Making Every Token Count
addyosmani
7
260
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
A Modern Web Designer's Workflow
chriscoyier
697
190k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Bash Introduction
62gerente
615
210k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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ͷ͓͔͛
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ