Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Recipes of Recipe Search

Recipes of Recipe Search

"Recipes of Recipe Search" (レシピ検索開発のレシピ)
13 Jan, 2013 at Tokyo Ruby Kaigi #10 (#tkrk10)

Shimpei Makimoto

January 13, 2013
Tweet

More Decks by Shimpei Makimoto

Other Decks in Technology

Transcript

  1. 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

    View full-size slide

  2. Shimpei Makimoto / ຀ຊ৻ฏ
    Software Engineer at Search Team,
    Service Infrastructures Group, Technology Div.,
    COOKPAD Inc.
    ΫοΫύουגࣜձࣾ
    ٕज़෦αʔϏεΠϯϑϥετϥΫνϟʔάϧʔϓ
    ݕࡧνʔϜ
    https://{github,twitter}.com/makimoto

    View full-size slide

  3. ۙگ
    ࡱӨઍ༿ࢢඒ඿จԽϗʔϧ

    View full-size slide

  4. ۃΊͯॏཁͳ͜ͱ఺

    View full-size slide

  5. We’re hiring
    http://info.cookpad.com/jobs/
    http://info.cookpad.com/graduates/

    View full-size slide

  6. ϓϨϛΞϜαʔϏε
    ԁ݄

    View full-size slide

  7. ຊ୊
    ඃࣸମউؒ͞Μ

    View full-size slide

  8. ࠓ೔࿩͢͜ͱ

    View full-size slide

  9. ࠓ೔࿩͢͜ͱ
    ΫοΫύουͷݕࡧνʔϜͷ
    ͍ͭ΋ͷ࢓ࣄʹ͍ͭͯ࿩͠·͢ɻ

    View full-size slide

  10. wϨγϐ\౤ߘ ݕࡧ^αʔϏε
    w݄ؒ66ສਓ
    wϨγϐ਺ສ
    w3VCZPO3BJMT

    wΤϯδχΞਓ͘Β͍
    ΫοΫύου

    View full-size slide

  11. ؘ໺༞Ұ ྉཧΛࢧ͑Δٕज़ ࡳຈ3VCZձٞ
    IUUQTTQFBLFSEFDLDPNIPUDIQPUDIMJBPMJXP[IJFSVKJTIV
    ࢀߟࢿྉ

    View full-size slide

  12. ݉ࢁݩଠ 4PMSΛ࢖ͬͨϨγϐݕࡧͷϓϩτλΠϐϯά Ϟʔγϣϊϩδʔ
    IUUQXXXTMJEFTIBSFOFUQFOHVJOBOBTPMS
    ࢀߟࢿྉ

    View full-size slide

  13. Ϩγϐݕࡧ
    wΫοΫύουͷओཁػೳ ͷҰͭ

    wਓؾॱݕࡧɺΧςΰϦɺؔ࿈Ωʔ
    ϫʔυFUD
    wϨγϐΛͷͤΔਓͱ͕͢͞ਓΛܨ͙

    View full-size slide

  14. ݕࡧνʔϜ
    wϝϯό໊
    wݕࡧʹ͔͔ΘΔ͢΂ͯʹ੹೚Λෛ͏
    w ΄΅
    ਓͰϢʔβສਓͷ
    ʮԿͨ΂Α͏ʯΛࢧ͑Δ
    @PENGUINANA_ @makimoto
    ࡱӨനۚ୆ͲΜ͙Γࣇಐ༡Ԃ

    View full-size slide

  15. ։ൃ͢Δ
    ӡ༻͢Δ
    ࡱӨΦϑΟε

    View full-size slide

  16. Puppet
    ͔Β
    CSS
    ·Ͱ

    View full-size slide

  17. master
    repeater repeater
    slave slave slave slave
    cache cache
    apps
    batch
    ˞αʔόͷ਺͸ద౰Ͱ͢
    write
    replication
    read
    page cache

    View full-size slide

  18. Ϩγϐݕࡧ͸
    ओཁػೳ ͷҰͭ

    ࠶ܝ

    View full-size slide

  19. ˺
    ݹ͍ϩδοΫ͕
    ଟ͍
    ࡱӨ+3۝भࡾ֯ઢॅ٢Ӻ

    View full-size slide

  20. ˺
    ݹ͍ϩδοΫ͕
    ଟ͍
    ࡱӨ+3۝भࡾ֯ઢॅ٢Ӻ

    View full-size slide

  21. ࡱӨ෬ݟҴՙେࣾ
    ݹ͍΋ͷΛ
    ৽͍͠΋ͷʹ
    ஔ͖׵͑Δ

    View full-size slide

  22. - Senna/Tritonn
    + Solr

    View full-size slide

  23. - MySQL based logging
    + Fluentd/TreasureData

    View full-size slide

  24. - (Tritonn/)MySQL 5.0
    + MySQL 5.5

    View full-size slide

  25. Refactoring
    ࡱӨ೔ൺ୩ઢ޿ඌӺલ

    View full-size slide

  26. - # => 140.hours
    + # => 4.hours
    a_batch.process_time
    ࣮࿩

    View full-size slide

  27. ࡱӨͱΜ͔ͭͱΜ͖໨ࠇళ
    ޱ͸ग़͢͠
    ख΋ಈ͔͢

    View full-size slide

  28. ྫ͑͹
    ύϑΥʔϚϯενϡʔχϯά

    View full-size slide

  29. ݕࡧ͸ ൺֱత
    ॏ͍
    ࡱӨ࣮Ոͷۙॴ

    View full-size slide

  30. master
    repeater repeater
    slave slave slave slave
    cache cache
    apps
    batch
    ˞αʔόͷ਺͸ద౰Ͱ͢
    write
    replication
    read
    page cache

    View full-size slide

  31. ϖʔδΩϟογϡΛ؏௨ͨ͠
    ϨεϙϯελΠϜΛ؂ࢹ

    View full-size slide

  32. ύϑΥʔϚϯε͕ѱԽͨ͠Β
    ࣮૷ऀͱҰॹʹ௚͢

    View full-size slide

  33. caches_action Ͱݕࡧ݁Ռ
    ΛΩϟογϡ

    View full-size slide

  34. ΩϟογϡΛద༻

    View full-size slide

  35. wrapping up
    ࡱӨΦϑΟε

    View full-size slide

  36. ࠓ೔࿩͢͜ͱ
    ΫοΫύουͷݕࡧνʔϜͷ
    ͍ͭ΋ͷ࢓ࣄʹ͍ͭͯ࿩͠·͢ɻ

    View full-size slide

  37. ։ൃ͢Δ
    ӡ༻͢Δ
    ࡱӨΦϑΟε

    View full-size slide

  38. ࡱӨ෬ݟҴՙେࣾ
    ݹ͍΋ͷΛ
    ৽͍͠΋ͷʹ
    ஔ͖׵͑Δ

    View full-size slide

  39. ࡱӨͱΜ͔ͭͱΜ͖໨ࠇళ
    ޱ͸ग़͢͠
    ख΋ಈ͔͢

    View full-size slide

  40. 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

    View full-size slide