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

日本中のカップルを支える技術

 日本中のカップルを支える技術

2018/02/21 「スタートアップエンジニアナイト #1 ハートフルなサービスを支えるシステムの裏側」で使用したスライドです。株式会社ラブグラフのサービス紹介とシステムの紹介、また運用の工夫などについて紹介しています。
発表内容はこちら。
https://logmi.jp/284245

Katsuma Narisawa

May 08, 2018
Tweet

More Decks by Katsuma Narisawa

Other Decks in Programming

Transcript

  1. ೔ຊதͷΧοϓϧͷ޾ͤΛࢧ͑Δٕज़
    by Katsuma Narisawa @NrNrNr7
    ελʔτΞοϓΤϯδχΞφΠτ

    View full-size slide

  2. !2
    ൃදͷ໨త
    αʔϏεͷ঺հ
    ن໛ਓˠਓఔ౓ͷελʔτΞοϓͷ։ൃࣄ৘ɾੜͷ੠ͷ঺հ

    View full-size slide

  3. !3
    Katsuma Narisawa (28)
    ϦʔυΤϯδχΞɻ
    ೥%F/"ʹೖࣾɻιʔγϟϧήʔϜͷӡ༻Τϯ
    δχΞͱͯ͠ɺ։ൃҎ֎ʹ΋اը΍෼ੳͳͲ෯޿͘
    ୲౰ɻ
    ೥݄ɺγΣΞϋ΢εͰͷۨԼͱͷग़ձ͍Λ͖ͬ
    ͔͚ʹɺגࣜձࣾϥϒάϥϑʹೖࣾɻ
    େֶ࣌୅͸ݴޠॲཧݚڀʹैࣄɻ
    ޷͖ͳ΋ͷ͸ࣸਅɺཱྀɺ೔ຊञɺϏʔϧɻ
    Speaker

    View full-size slide

  4. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.
    J
    About
    Company
    ձࣾ֓ཁ

    View full-size slide

  5. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.
    What’s Lovegraph?
    ΧϝϥϚϯͷग़ுࡱӨαʔϏεΛఏڙ͍ͯ͠·͢
    ձࣾ֓ཁ

    View full-size slide

  6. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.
    ૯Ϧʔνສ௒
    ू٬Τϯδϯ
    ΧϝϥϚϯ࠾༻཰
    ϓϥοτϑΥʔϜ
    ܝࡌڐՄ཰
    ൃ৴
    4/4ϓϥοτϗʔϜ
    ໘ஊɾ࠾༻ɾڭҭ
    Ϛονϯά
    ࡱӨґཔ
    Χοϓϧ
    ΧϝϥϚϯ
    ʮࡱΓ͍ͨʯͱʮࡱΒΕ͍ͨʯΛܨ͙ϓϥοτϑΥʔϜ
    ొ࿥ر๬
    Ӿཡ
    ίϯςϯπͱͯࣸ͠ਅΛ഑৴
    ϏδωεϞσϧ

    View full-size slide

  7. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.

    View full-size slide

  8. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.

    View full-size slide

  9. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.

    View full-size slide

  10. !14
    ๻΋ࡱӨʹ͍ͬͯ·͢ʂʢ౔೔ͷΈʣ
    ͪ͜Βͷ͓٬༷͸ࡱӨલ·Ͱ݌՞͚ͯͨ͠Ͳɺ
    ʮࡱӨͯͨ͠Β஥௚Γͨ͠ʂʯͱݴͬͯ͘Ε͓ͨ٬༷ɻ
    Ұϲ݄ͷه೦೔ຖʹૹ͍ͬͯΔखࢴͱҰॹʹࡱӨ͠·ͨ͠ʂ

    View full-size slide

  11. Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.
    ϝσΟΞ࿐ग़

    View full-size slide

  12. W
    Lovegraph Inc. Company Profile © 2017 Lovegraph Inc.
    ϝσΟΞ࿐ग़

    View full-size slide

  13. 0!17
    Lovegraph as a Web Service

    View full-size slide

  14. 0!18
    ૑ۀऀ ۨԼ

    ೥લ
    ૑ۀऀ͕ࢮΜͰ͠·͏ʜ

    View full-size slide

  15. 0!19
    ΧϝϥϚϯҰཡ
    ࡱӨ͞ΕͨࣸਅҰཡ
    ਃ͠ࠐΈϖʔδ
    ϚΠϖʔδ
    ೲ඼ࣸਅͷηϨΫτ
    ͓٬༷ଆ

    View full-size slide

  16. 0!20
    ΧϝϥϚϯ
    ؅ཧը໘ɿΧϝϥϚϯ
    ࡱӨґཔҰཡɺৄࡉ
    ༧ఆೖྗ
    ࣸਅೲ඼
    ొ࿥৘ใมߋ
    ౰݄ใुͷ֬ೝ
    ґཔडྖ࣌ʹ͸ϝʔϧɾTMBDL௨஌ͳͲ

    View full-size slide

  17. 0!21
    ࣸਅڭࣨͷ؅ཧը໘
    ӡӦ
    ؅ཧը໘ɿӡӦ
    ࡱӨґཔҰཡɺৄࡉɺߋ৽
    ΧϝϥϚϯ༧ఆ֬ೝ
    ೲ඼ࣸਅҰཡɾ֬ೝ
    ొ࿥৘ใ֬ೝ
    ใु؅ཧ
    ೖۚ֬ೝ
    ࣸਅڭࣨͷ؅ཧը໘
    ମݧձͷ؅ཧը໘
    ࣗࣾϝσΟΞͷ؅ཧը໘ $.4

    ֤छͷ$36% ϓϥϯɺΩϟϯϖʔϯʜʣ
    ଞɿΠϥετϨʔλʔ͞ΜɺϥΠλʔ͞Μ༻؅ཧը໘
    اۀ༷༻ͷਃ͠ࠐΈϖʔδͳͲ

    View full-size slide

  18. Team Mission
    l৽͍͠Ձ஋ΛɺΑΓૣ͘z
    ήετ͸ɺ௚ײతͳ6*ͰԿͷෆࣗ༝΋ͳ͘ࡱӨ΁͍͚ΔΑ͏ʹɺ
    -PWFHSBQIFS͸ɺ͓٬༷ʹ࠷ߴͷࡱӨମݧΛૹΔ͜ͱ͚ͩΛߟ͍͑ͯΒΕΔΑ͏ʹɺ
    ελοϑ͸ɺ͓٬༷΍-PWFHSBQIFS͕޾ͤʹͳΔํ๏͚ͩΛߟ͍͑ͯΒΕΔΑ͏ʹɺ
    ͦΜͳ෩ʹɺ͓٬༷΋ΧϝϥϚϯ΋ελοϑ΋ɺ
    ूத͢΂͖͜ͱʹूதͰ͖Δ͜ͱɺ
    ͦͷαϙʔτΛٕज़తʹߦ͏ͷ͕։ൃνʔϜͰ͢ɻ

    View full-size slide

  19. server-side
    frontend
    infrastructure
    tools
    analysis
    logging

    View full-size slide

  20. 0!24
    Lovegraph Engineers
    l৽͍͠Ձ஋ΛɺΑΓૣ͘z
    Name Classes Lines
    Controllers 164 6673
    Helpers 0 319
    Jobs 39 761
    Models 124 5127
    Mailers 11 468
    JavaScriptss - 10131
    Libraries 75 3623
    Total 413 27102

    View full-size slide

  21. ɾ։ൃମ੍
    ਓ໨ͷΤϯδχΞ͕δϣΠϯ
    JTTVFϕʔεɺ༏ઌ౓΍εέδϡʔϧΛޱ಄͢Γ͋Θͤ
    ࢓༷͸ΤϯδχΞͷ಄ͷத
    ૊৫ମ੍

    ࣾһਓ
    ଞελοϑਓ
    ΤϯδχΞਓ

    View full-size slide

  22. ɾ։ൃମ੍
    λεΫͷ༏ઌ౓؅ཧɾεέδϡʔϦϯά
    ɺ։ൃఆྫΛ؇͘։࢝
    ɾେ͖ͳ։ൃ಺༰ ྫ

    ࣗಈϚονϯάػೳ ηϨΫτػೳ ϑΥʔϜ࠷దԽ %PDLFSԽ "1*ղ์ -1ͨ͘͞Μ FUD
    ɾ౰࣌೰ΜͰ͍ͨ͜ͱ
    ؅ཧίετΛͲΕ͚͔͚ͩΔ͔
    ࣭ͱεϐʔυ
    ɾৼΓฦͬͯΈͯࢥ͏͜ͱ
    ؅ཧίετͷ͔͚͔ͨ͸όϥϯεऔΕ͍ͯͨؾ͕͢Δ
    ϓϩμΫτͷࡏΔ΂͖࢟Λਂ͘ߟ͑ɺ΍Δ΂͖։ൃΛஸೡʹগ͚ͩ͠΍Δ΂͖ͩͬͨ 10͕ෆࡏͩͬͨ

    ૊৫ମ੍
    ೥݄
    ࣾһਓ
    ଞελοϑਓ
    ΤϯδχΞਓ

    View full-size slide

  23. ɾ։ൃମ੍
    ΤϯδχΞ͕ਓୀ৬DSZΤϯδχΞਓମ੍ʹ
    ॳظ͸։ൃʹूத͍͕ͯͨ͠ɺ$$0ͷୀ৬΋͋Γɺ్த͔ΒϏδωεଆʹ΋ίϛοτ࢝͠ΊΔ
    ɾେ͖ͳ։ൃ಺༰ ྫ

    ஋ஈؔ࿈ͷมߋɺ͓ۚपΓͷ੔උɺମݧձγεςϜɺશମతͳϒϥογϡΞοϓ
    ɾ౰࣌೰ΜͰ͍ͨ͜ͱ
    ѹ౗తʹਓख͕଍Γͳ͍ʜʜʜ
    ΤϯδχΞਓ͸ऐ͍͠
    ɾৼΓฦͬͯΈͯࢥ͏͜ͱ
    ࠾༻͕ຊ౰ʹຊ౰ʹٸ຿Ͱ͋Δɺͱ͍͏ೝ͕ࣝࠓࢥ͏ͱബ͔ͬͨ
    બ୒ͱूதʂ
    ૊৫ମ੍
    ೥݄
    ࣾһਓ
    ଞελοϑਓ
    ΤϯδχΞਓ

    View full-size slide

  24. ɾ։ൃମ੍
    ۀ຿ҕୗͰΤϯδχΞΛ࠾༻ɺ༑ਓϕʔεͰ෭ۀͰΤϯδχΞ࠾༻ɻ
    1.Λ࠾༻͠ɺΞδϟΠϧ։ൃಋೖ
    ɾେ͖ͳ։ൃ಺༰ ྫ

    ϒϩάͷϦχϡʔΞϧɺϨϏϡʔػೳɺը૾ͷಈతϦαΠζ
    ɾ౰࣌೰ΜͰ͍ͨ͜ͱ
    ϨϏϡʔ΍Ϛωδϝϯτʹ௥ΘΕͯࣗ෼ͷ։ൃ͕࣌ؒ֬อͰ͖ͳ͍
    ɾৼΓฦͬͯΈͯࢥ͏͜ͱ
    ૬ஊ૬ख͕Ͱ͖ͯɺνʔϜͱͯ͠ϫΠϫΠ։ൃͰ͖ͨͷ͸ྑ͔ͬͨɻ
    ʢ༧૝͍͕ͯͨ͠ʣܭਓͷΤϯδχΞ૊৫Λਖ਼ࣾһਓͰࢧ͑Δݫ͠͞
    ૊৫ମ੍
    ೥݄
    ࣾһਓ
    ଞελοϑਓ
    ΤϯδχΞਓ
    ͏ͪɺۀ຿ҕୗਓ
    ෭ۀਓʣ

    View full-size slide

  25. ɾ։ൃମ੍
    ۀ຿ҕୗΤϯδχΞΛऴྃɺ෭ۀͷ਺ΛݮΒ͢
    ΠϯλʔϯੜΛڭҭதʂ
    ૊৫ମ੍
    ೥݄
    ࣾһਓ
    ଞελοϑਓ
    ΤϯδχΞਓ
    ͏ͪɺ෭ۀਓ
    Πϯλʔϯੜਓʣ

    View full-size slide

  26. ։ൃͷ࣭
    ίʔυͷΫΦϦςΟ͸ߴ͘อ͍ͬͯΔɻ
    ʢݩ%F/"ͳͲ֤ࣾͷ෭ۀΤϯδχΞΑΓɺ៉ྷͱݴͬͯ΋Β͑ͯ·͢QSBZʣ
    ࢖͏ϥΠϒϥϦ͸Ͱ͖Δ͚ͩ࠷৽ʹɻݱࡏ3BJMTɻ
    ߴ͍ͷΛ໨ࢦ͞ͳ͍ͱɺ௿͍··ɻ௿͍··։ൃ͠ଓ͚Ε͹ɺ͍͔ͭϝϯς͕ࢮ͵ɻ
    ΤϯδχΞਓਓ͕੒௕ͯ͠ɺ։ൃͷ࣭Λ্͛Δ͜ͱʹ߆ͬͯ։ൃ͍ͯ͠Δɻ
    ʜͱ͸͍͑ɺڭҭɾϨϏϡʔ͸େมɺ࠾༻΋େมɻ
    ͍ͪΤϯδχΞͱͯ͠͸࣭ͷߴ͍։ൃͰಉҙ͍ͯ͠Δ͕ɺϚωʔδϟʔͱͯ͠͸໎͍ଓ͚͍ͯΔɻ
    εΩϧϨϕϧ

    View full-size slide

  27. #*πʔϧɻσʔλՄࢹԽͷͨΊಋೖɻಋೖ͕ඇৗʹ؆୯ʢ෼ఔ౓ʣ͔ͭɺ6*΋Θ͔Γ΍͍͢ɻ
    ࢖͍ࠐΉͱᙱ͍ͱ͜Ζʹख͕ಧ͔ͳ͍͜ͱ͕ଟ͘ɺࠓ͔Βಋೖ͢ΔͳΒ.FUBCBTF͕͓͢͢Ίɻ
    ࠷ۙ͸SFEBTIΛBEIPDͳ෼ੳπʔϧɺ(PPHMF%BUB4UVEJP͕ఆظϨϙʔτπʔϧͱͯ͠࢖༻ɻ
    πʔϧࡶײ
    )PVOE$*ίʔσΟϯάن໿$*πʔϧɻن໿Λ९क͠ͳ͍ͱ13ͷ౓ʹCPU͕ࢦఠͯ͘͠ΕΔɻ
    ࠣࡉ͕ͩ௚ͯ͠ཉ͍͠ࢦఠΛਓରਓͰ΍ΔͱݥѱʹͳΓ͕͕ͪͩɺCPU͕ݞ୅ΘΓͯ͘͠ΕΔɻ
    ˞ʮ)PVOE$*ʹࢦఠ͞Εͨ఺͸ݪଇશͯमਖ਼͢Δʯͱ͍͏ϧʔϧͰϨϏϡʔ͍ͯ͠·͢ɻ
    ԿͰ΋4MBDLʹ௨஌ΛૹͬͯɺՔಇঢ়گͷՄࢹԽɾಁ໌Խɾਝ଎ͳରԠɾӡӦؒͷίϛϡχέʔγϣϯ
    ʢྫʣਃ͠ࠐΈ௨஌ɺ+*3"ͷߋ৽ɺఆظϨϙʔτɺΩϟϯηϧͳͲεςʔλεมߋɺ
    ɹɹɹೲ඼ࣸਅɺϨϏϡʔɺͦͷଞ͓٬༷΍ӡӦͳͲͷΞΫςΟϏςΟɺ

    View full-size slide

  28. πʔϧࡶײ
    ೥Նʹ"OHVMBS+4ΑΓ৐Γ׵͑ɻ
    εϙοτతʹϦονͳϑϩϯτΤϯυ͕ඞཁͰ͸͋Γͭͭɺେ͖͗͢ͳ͍ن໛ͷϑϩϯτΤϯυ։ൃΛ
    ͢Δͷʹɺඞཁे෼ͳػೳɻֶशίετ΋௿ͯ͘ͱͯ΋ྑ͍ɻ
    IBNM΍TBTT΋)PU.PEVMF3FQMBDFNFOU͍ͯ͠ΔͷͰ޾ͤɻ

    View full-size slide

  29. ։ൃ؀ڥ
    %PDLFSͷΠϯετʔϧޙɺίϚϯυͰ࣮֬ʹ؀ڥߏங͕ऴΘΔͷͰɺ৽ϝϯόʔʹ༏͍͠ɻ
    %PDLFSͳΒͰ͸ͷ໰୊͕ൃੜͨ͠ΓɺͳΜ͔ͩΜͩͰ΍΍ֶशίετ͕͔͔ΔͳͲɺ
    શମͱͯ͠͸΍΍޾ͤʹͳΕ͔ͨʜʁ͘Β͍ͷମײ
    ຊ൪؀ڥ
    &$3&$4ͷ؀ڥͰIBLPΛ࢖ͬͯσϓϩΠɻʢੲ͸DBQJTUSBOP&$ʣ
    ݱࡏ͸շద͕ͩɺֶशίετ͸͔͔ͬͨɻෆษڧͳ࣌ظʹো֐΋ىͯ͜͠͠·ͬͨɻ
    ΤϯδχΞҰݸਓͱͯ͠͸ษڧʹͳͬͯྑ͔͕ͬͨɺܦӦ൑அͱͯ͠͸ྑ͔͔ͬͨͲ͏͔͸΍΍ඍົ
    πʔϧࡶײ

    View full-size slide

  30. ˞ݸਓతͳ೥൒ͷৼΓฦΓɻ࠙਌ձͰ͓࿩͠·͠ΐ͏ʂ
    ɾ֤νʔϜʹೖͬͯԿͰ΋΍ͬͨ ։ൃ Ϛʔέ $4 ΧϝϥϚϯ

    ॊೈʹಈ͍ͯɺ্ཱ͕ͪΓ͸ݗҾͰ͖ͨ
    ݁ہ։ൃ΋͠ͳ͚Ε͹͍͚ͳ͍͠ɺ௕ظͰճΒͳ͔ͬͨɻࣗ෼͕΍Δͱ͍͏બ୒͸͢΂͖Ͱ͸ͳ͔ͬͨɻ࢓૊ΈԽͷపఈɺ
    ࠾༻ΛؤுΔ΂͖ͩͬͨ
    ɾ૊৫͕ճΔ࢓૊ΈΛ࡞Δ
    δϣΠϯ࣌͸࢓૊Έ͕΄΅ͳ͔ͬͨ
    ͦΕͧΕ͕εΩϧϑϧͰԿͰ΋Ͱ͖ͯࣗ෼Ͱߟ͑ͯಈ͚ΔਓࡐͳΒɺ࢓૊Έ͸͍Βͳ͍ɻͦ͏Ͱͳ͍ͳΒɺ࢓૊Έ͕ඞཁɻ
    ఆྫΛ͢Δɻϛογϣϯ΍λεΫΛ໌֬ʹ͢Δɻਓ͕ϋϒʹͳΒͳ͍ɻ
    ɾϢʔβͰ͋Δ͜ͱ͸࠷ڧɻΧϝϥϚϯͱͯ͠υοάϑʔσΟϯά͠ͳ͕Β։ൃͯ͠·͢ʂ
    ɾνʔϜ͕ए͍ʜʜʜ
    "QQFOEJY

    View full-size slide

  31. !35
    We’re Hiring !!
    Ұॹʹಇ͍ͯ͘ΕΔΤϯδχΞɺେืूதͰ͢ʂ
    ˞ަྲྀձͰ͓࿩ͨ͠ํʹ͸ૉఢͳଃΓ෺༻ҙͯ͠·͢ʂ

    View full-size slide