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.4k
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.4k
JPEG を壊す話 / About JPEG corruption
makimoto
0
260
Training for New Graduates in Cookpad (Shitei Todan 2015)
makimoto
0
6.1k
How to read code
makimoto
0
1.4k
Glitch, OSS activities, and so on (Oedo RubyKaigi 04 #oedo04)
makimoto
5
1.3k
The Pragmatic Animated GIF in Ruby (a RubyConf 2013 lightning talk)
makimoto
0
500
グリッチについて話をします。 #wedding_s
makimoto
3
550
The Pragmatic Glitch (#rubykaigi 2013 LT)
makimoto
4
3.2k
chiyahoya.me
makimoto
0
310
Other Decks in Technology
See All in Technology
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
400
2024年にチャレンジしたことを振り返るぞ
mitchan
0
150
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
140
最近のSfM手法まとめ - COLMAP / GLOMAPを中心に -
kwchrk
7
1.4k
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
200
Qiita埋め込み用スライド
naoki_0531
0
5.3k
20241220_S3 tablesの使い方を検証してみた
handy
4
710
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
170
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
120
コンテナセキュリティのためのLandlock入門
nullpo_head
2
330
Server-Side Engineer of LINE Sukimani
lycorp_recruit_jp
0
400
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
27
24k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Unsuck your backbone
ammeep
669
57k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
920
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Embracing the Ebb and Flow
colly
84
4.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Mobile First: as difficult as doing things right
swwweet
222
9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
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