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
Recipes of Recipe Search
Search
Shimpei Makimoto
January 13, 2013
Technology
1.5k
5
Share
Recipes of Recipe Search
"Recipes of Recipe Search" (レシピ検索開発のレシピ)
13 Jan, 2013 at Tokyo Ruby Kaigi #10 (#tkrk10)
Shimpei Makimoto
January 13, 2013
More Decks by Shimpei Makimoto
See All by Shimpei Makimoto
How to Work with Legacy Ruby on Rails Applications in Treasure Data
makimoto
1
1.5k
JPEG を壊す話 / About JPEG corruption
makimoto
0
350
Training for New Graduates in Cookpad (Shitei Todan 2015)
makimoto
0
6.2k
How to read code
makimoto
0
1.7k
Glitch, OSS activities, and so on (Oedo RubyKaigi 04 #oedo04)
makimoto
5
1.4k
The Pragmatic Animated GIF in Ruby (a RubyConf 2013 lightning talk)
makimoto
0
570
グリッチについて話をします。 #wedding_s
makimoto
3
580
The Pragmatic Glitch (#rubykaigi 2013 LT)
makimoto
4
3.4k
chiyahoya.me
makimoto
0
350
Other Decks in Technology
See All in Technology
AI対話分析の夢と、汚いデータの現実 Looker / Dataplex / Dataform で実現する品質ファーストな基盤設計
waiwai2111
0
180
Building a Study Buddy AI Agent from Scratch: From Passive Chatbots to Autonomous Systems
itchimonji
0
140
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
590
EMから幅を広げるために最近挑戦していること / Recent challenges I'm undertaking to expand my horizons beyond EM
hiro_torii
1
180
もっとコンテンツをよく構造化して理解したいので、LLM 時代こそ Taxonomy の設計品質に目を向けたい〜!
morinota
0
200
The 7 pitfalls of AI
ufried
0
200
多角的な視点から見たAGI
terisuke
0
120
鹿野さんに聞く!CSSの最新トレンド Ver.2026
tonkotsuboy_com
6
2.5k
新卒エンジニア研修、ハンズオンの設計における課題と実践知/ #tachikawaany
nishiuma
2
130
「強制アップデート」か「チームの自律」か?エンタープライズが辿り着いたプラットフォームのハイブリッド運用/cloudnative-kaigi-hybrid-platform-operations
mhrtech
0
130
変化の激しい時代をゴキゲンに生き抜くために 〜ストレスマネジメントのススメ〜
kakehashi
PRO
4
1.2k
QAエンジニアはどうやって プロダクト議論の場に入れるのか?
moritamasami
2
410
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.4k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
110
KATA
mclloyd
PRO
35
15k
The Invisible Side of Design
smashingmag
302
52k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
770
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
We Are The Robots
honzajavorek
0
220
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
140
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
180
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
430
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
Recipes of Recipe Search Ϩγϐݕࡧ։ൃͷϨγϐ Shimpei Makimoto, COOKPAD Inc. https://github.com/makimoto
https://twitter.com/makimoto 13 Jan, 2013 | Tokyo Ruby Kaigi #10 ༻ॻମখ௩ΰγοΫ130/Yanone Kaffeesatz
whoami
Shimpei Makimoto / ຊ৻ฏ Software Engineer at Search Team, Service
Infrastructures Group, Technology Div., COOKPAD Inc. ΫοΫύουגࣜձࣾ ٕज़෦αʔϏεΠϯϑϥετϥΫνϟʔάϧʔϓ ݕࡧνʔϜ https://{github,twitter}.com/makimoto
None
ۙگ ࡱӨઍ༿ࢢඒจԽϗʔϧ
ۃΊͯॏཁͳ͜ͱ
We’re hiring http://info.cookpad.com/jobs/ http://info.cookpad.com/graduates/
ϓϨϛΞϜαʔϏε ԁ݄
ຊ ඃࣸମউؒ͞Μ
ࠓ͢͜ͱ
ࠓ͢͜ͱ ΫοΫύουͷݕࡧνʔϜͷ ͍ͭͷࣄʹ͍ͭͯ͠·͢ɻ
None
wϨγϐ\ߘ ݕࡧ^αʔϏε w݄ؒ66ສਓ wϨγϐສ w3VCZPO3BJMT wΤϯδχΞਓ͘Β͍ ΫοΫύου
ؘ༞Ұ ྉཧΛࢧ͑Δٕज़ ࡳຈ3VCZձٞ IUUQTTQFBLFSEFDLDPNIPUDIQPUDIMJBPMJXP[IJFSVKJTIV ࢀߟࢿྉ
݉ࢁݩଠ 4PMSΛͬͨϨγϐݕࡧͷϓϩτλΠϐϯά Ϟʔγϣϊϩδʔ IUUQXXXTMJEFTIBSFOFUQFOHVJOBOBTPMS ࢀߟࢿྉ
Ϩγϐݕࡧ wΫοΫύουͷओཁػೳ ͷҰͭ wਓؾॱݕࡧɺΧςΰϦɺؔ࿈Ωʔ ϫʔυFUD wϨγϐΛͷͤΔਓͱ͕͢͞ਓΛܨ͙
ݕࡧνʔϜ wϝϯό໊ wݕࡧʹ͔͔ΘΔͯ͢ʹΛෛ͏ w ΄΅ ਓͰϢʔβສਓͷ ʮԿͨΑ͏ʯΛࢧ͑Δ @PENGUINANA_ @makimoto ࡱӨനۚͲΜ͙Γࣇಐ༡Ԃ
։ൃ͢Δ ӡ༻͢Δ ࡱӨΦϑΟε
Puppet ͔Β CSS ·Ͱ
master repeater repeater slave slave slave slave cache cache apps
batch ˞αʔόͷదͰ͢ write replication read page cache
None
None
None
Ϩγϐݕࡧ ओཁػೳ ͷҰͭ ࠶ܝ
˺ ݹ͍ϩδοΫ͕ ଟ͍ ࡱӨ+3भࡾ֯ઢॅ٢Ӻ
˺ ݹ͍ϩδοΫ͕ ଟ͍ ࡱӨ+3भࡾ֯ઢॅ٢Ӻ
ࡱӨ෬ݟҴՙେࣾ ݹ͍ͷΛ ৽͍͠ͷʹ ஔ͖͑Δ
- Senna/Tritonn + Solr
- MySQL based logging + Fluentd/TreasureData
- (Tritonn/)MySQL 5.0 + MySQL 5.5
Refactoring ࡱӨൺ୩ઢඌӺલ
- +
- # => 140.hours + # => 4.hours a_batch.process_time ࣮
ࡱӨͱΜ͔ͭͱΜ͖ࠇళ ޱग़͢͠ खಈ͔͢
None
None
ྫ͑ ύϑΥʔϚϯενϡʔχϯά
ݕࡧ ൺֱత ॏ͍ ࡱӨ࣮Ոͷۙॴ
master repeater repeater slave slave slave slave cache cache apps
batch ˞αʔόͷదͰ͢ write replication read page cache
ϖʔδΩϟογϡΛ؏௨ͨ͠ ϨεϙϯελΠϜΛࢹ
None
ύϑΥʔϚϯε͕ѱԽͨ͠Β ࣮ऀͱҰॹʹ͢
caches_action Ͱݕࡧ݁Ռ ΛΩϟογϡ
ΩϟογϡΛద༻
wrapping up ࡱӨΦϑΟε
ࠓ͢͜ͱ ΫοΫύουͷݕࡧνʔϜͷ ͍ͭͷࣄʹ͍ͭͯ͠·͢ɻ
։ൃ͢Δ ӡ༻͢Δ ࡱӨΦϑΟε
ࡱӨ෬ݟҴՙେࣾ ݹ͍ͷΛ ৽͍͠ͷʹ ஔ͖͑Δ
ࡱӨͱΜ͔ͭͱΜ͖ࠇళ ޱग़͢͠ खಈ͔͢
Recipes of Recipe Search Ϩγϐݕࡧ։ൃͷϨγϐ Shimpei Makimoto, COOKPAD Inc. https://github.com/makimoto
https://twitter.com/makimoto 13 Jan, 2013 | Tokyo Ruby Kaigi #10 ༻ॻମখ௩ΰγοΫ130/Yanone Kaffeesatz