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
5
1.5k
Recipes of Recipe Search
"Recipes of Recipe Search" (レシピ検索開発のレシピ)
13 Jan, 2013 at Tokyo Ruby Kaigi #10 (#tkrk10)
Shimpei Makimoto
January 13, 2013
Tweet
Share
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
320
Training for New Graduates in Cookpad (Shitei Todan 2015)
makimoto
0
6.1k
How to read code
makimoto
0
1.5k
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
540
グリッチについて話をします。 #wedding_s
makimoto
3
570
The Pragmatic Glitch (#rubykaigi 2013 LT)
makimoto
4
3.3k
chiyahoya.me
makimoto
0
330
Other Decks in Technology
See All in Technology
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
1.9k
Modern Linux
oracle4engineer
PRO
0
160
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
エンジニアが主導できる組織づくり ー 製品と事業を進化させる体制へのシフト
ueokande
1
110
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
330
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
890
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
160
組織を巻き込む大規模プラットフォーム移行戦略 〜50+サービスのマルチリージョン・マルチプロダクト化で学んだステークホルダー協働の実践〜 / Platform migration strategy engaging all stakeholders
toshi0607
2
200
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
180
「Linux」という言葉が指すもの
sat
PRO
4
140
MagicPod導入から半年、オープンロジQAチームで実際にやったこと
tjoko
0
110
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Building Applications with DynamoDB
mza
96
6.6k
4 Signs Your Business is Dying
shpigford
184
22k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How GitHub (no longer) Works
holman
315
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Designing Experiences People Love
moore
142
24k
Statistics for Hackers
jakevdp
799
220k
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