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

FiNCにおけるFault Isolationの取り組み / An approach to build fault-isolated system in FiNC

qsona
September 29, 2018
1.1k

FiNCにおけるFault Isolationの取り組み / An approach to build fault-isolated system in FiNC

Rejectcon 2018 Sponsor Talk

qsona

September 29, 2018
Tweet

More Decks by qsona

Transcript

  1. 'J/$ʹ͓͚Δ

    'BVMU*TPMBUJPOͷऔΓ૊Έ
    3FKFDUDPO
    !RTPOB ,ZVUBSP.PSJ
    'J/$5FDIOPMPHJFT

    View full-size slide

  2. ࣗݾ঺հ
    !2
    • !RTPOB ,ZVUBSP.PSJ

    • 'J/$ࣾྺ೥൒
    • 3VCZPO3BJMT/PEFKT.JDSPTFSWJDFT
    • .JDSPTFSWJDFT.FFUVQओ࠵

    View full-size slide

  3. 'BVMU*TPMBUJPOͱ͸ʁ
    !3
    • γεςϜো֐ͷִ཭ɺہॴԽ
    • ಛʹϚΠΫϩαʔϏεͷจ຺Ͱɺ

    ͋ΔҰͭͷαʔϏεʹো֐͕ى͖ͯ΋ɺҰ෦ͷػೳ͕࢖
    ͑ͳ͘ͳΔ͚ͩͰɺશମͷܥ΁ͷӨڹ͸࠷খݶʹ৯͍ࢭ
    ΊΔ͜ͱ

    View full-size slide

  4. 'BVMU*TPMBUJPOΛ
    Ͳ͏࣮ݱ͢Δ͔ʁ

    View full-size slide

  5. Πϯϑϥ໘ͷରԠ
    !5
    • ద੾ͳλΠϜΞ΢τΛઃఆ͢Δ
    • $JSDVJU#SFBLFS
    • ଞͷαʔϏε͕ҰఆҎ্ͷΤϥʔ཰ʹͳͬͨΒɺ͠͹Β͘
    ϦΫΤετΛࢭΊͯΤϥʔѻ͍ʹ͢Δ
    • #VMLIFBE ִน

    • &OWPZͰશ෦͔͍͚ͭʂʂʂ

    View full-size slide

  6. Πϯϑϥ໘ͷରԠ͚ͩͰ͸଍Γͳ͍
    !6
    • ͜Ε͚ͩͰ͢΂ͯղܾ͢ΔΘ͚Ͱ͸ͳ͍
    • ྫ$JSDVJU#SFBLFS͕ൃಈͨ͠ΒɺΞϓϦ͸Ͳ͏ৼΔ෣
    ͏΂͖ͳͷ͔ʁ
    • ΞϓϦέʔγϣϯͰԿ΋ରԠ͠ͳ͚Ε͹࿈࠯ͯ͠ࢮ͵͚ͩ

    View full-size slide

  7. ΞϓϦέʔγϣϯͰͷྫ֎ॲཧ
    !7
    • "αʔϏε͕མͪͨ࣌ʹɺ#αʔϏε
    ͷৼΔ෣͍͸Ͳ͏͢Δ΂͖ͳͷ͔ʁ
    • ػೳ௿Լͯ͠αʔϏεΛܧଓͤ͞Δͷ
    ͔ʁ
    • ͦΕͱ΋ɺ#αʔϏε΋શ͘࢖͑ͳ͍
    ͷ͕ਖ਼͍͠ͷ͔ʁ
    • Ϗδωε໘ͷཧղ΋ඞཁ
    ճ෮ੑͷ͋ΔγεςϜͷߏஙʹෆՄܽͳ΋ͷ͸ɺ ҆શʹ
    ػೳ௿Լ(σάϨʔυ)ͤ͞ΔೳྗͰ͢ɻ
    - ϚΠΫϩαʔϏεΞʔΩςΫνϟ 11.3 ػೳ௿Լ

    View full-size slide

  8. ΠϯϑϥɾΞϓϦɾϏδωε
    ࡾҐҰମͷ'BVMU*TPMBUJPO

    View full-size slide

  9. ࣮ྫ
    όφʔ
    !9
    • ΞϓϦ಺ʹόφʔΛग़͍ͯ͠Δ
    • ϢʔβʔʹΑͬͯग़͠෼͚͕͋Δ
    • 'J/$Ϟʔϧͷόφʔ
    • શͯͷϢʔβʔʹग़͢
    • ๏ਓ޲͚όφʔ
    • ๏ਓ޲͚ 'J/$GPS#VTJOFTT
    Ϣʔβʔ
    ʹ͚ͩग़͢
    • 'J/$ϓϨϛΞϜҊ಺
    • 'J/$ϓϨϛΞϜձһʹ͸ग़͞ͳ͍

    View full-size slide

  10. ొ৔͢ΔαʔϏε
    !10
    • όφʔΛఏڙ͢ΔαʔϏε
    • ϢʔβʔͷೝՄλάΛ؅ཧ͢ΔαʔϏε

    View full-size slide

  11. GET 

    /banners
    GET 

    /users/1/tags
    όφʔαʔϏε ೝՄλάαʔϏε
    ["finc_for_business",

    "finc_premium_registerable"]
    Πϕϯτ
    (e.g.
    FincPremium
    Registered)
    o FiNC Mall όφʔ
    o ๏ਓ޲͚όφʔ
    o ϓϨϛΞϜొ࿥όφʔ

    View full-size slide

  12. ো֐ΛہॴԽ͢Δ
    !12
    • ΋͠ɺೝՄλάαʔϏε͕མͪͨΒͲ͏͢΂͖͔ʁ
    • ·ͣ͸͋Δ΂͖ڍಈΛߟ͑Δ
    • શϢʔβʔʹग़ͤΔόφʔ͸ग़ͤΔ
    • ͦΕҎ֎͸جຊతʹɺग़͞ͳ͍ํʹ౗ͤ͹Α͍

    View full-size slide

  13. GET 

    /banners
    GET 

    /users/1/tags
    όφʔαʔϏε ೝՄλάαʔϏε
    HTTP 503
    Πϕϯτ
    (e.g.
    FincPremium
    Registered)
    o FiNC Mall όφʔ
    x ๏ਓ޲͚όφʔ
    xϓϨϛΞϜొ࿥όφʔ
    tags = []
    ͱͯ͠
    ѻ͏

    View full-size slide

  14. ଞʹ΋ɾɾɾ
    !14
    • ͜Ε͸΄ΜͷҰྫ
    • ࣮ࡍʹ͸ɺ͋ΒΏΔ"1*ݺͼग़͠Λ͢ΔՕॴͰ͜ΕΛߟ
    ͑ͳ͚Ε͹ͳΒͳ͍
    • ΍Ε͹΍Δ͚ͩো֐΁ͷ଱ੑ͕ߴ·͍ͬͯ͘

    View full-size slide

  15. ࣮ྫ
    'J/$ΞϓϦͷϚΠϖʔδ
    !15
    • ͍ΖΜͳαʔϏεͷσʔλΛ
    ·ͱΊͯද͍ࣔͯ͠Δ

    View full-size slide

  16. ͋ΔػೳͰͷग़དྷࣄ
    !16
    • ظؒதͷ߹ܭา਺ʹԠͯ͡ɺ5BCMF'PS5XPʹد෇Λ͢
    ΔΠϕϯτ

    View full-size slide

  17. ͱ͋Δো֐
    !17
    • લ೔໷ɺԯาಥഁͨ͠ͳʙͱ͍͏࿩Λͨ͠
    • ேى͖ͨΒେྔͷΤϥʔ͕

    View full-size slide

  18. ͱ͋Δো֐
    !18
    • લ೔໷ɺԯาಥഁͨ͠ͳʙͱ͍͏࿩Λͨ͠
    • ேى͖ͨΒେྔͷΤϥʔ͕
    • ߹ܭา਺͕NBYJOUΛ௒͑ͨ͜ͱͰαʔόʔଆͰΦʔόʔ
    ϑϩʔͯ͠Τϥʔ͕ى͖͍ͯͨ
    • ͋Θͯͯ௚ͨ͠ɺɺ

    View full-size slide

  19. ͱ͋Δো֐ ଓ

    !19
    • "OESPJEͰ΋ಉ͘͡ΞϓϦͷϚΠ
    ϖʔδʹग़ͳ͘ͳ͍ͬͯΔ
    • +BWBͷJOUͰΦʔόʔϑϩʔ
    • ΍Β͔͠͸ँΔɺँΔ͕ɾɾɾ
    • ֘౰ͷίϯϙʔωϯτ͚ͩͰͳ͘ɺ
    ϚΠϖʔδ͕શ෦දࣔ͞Εͳ͍ͷ
    ͸Α͘ͳ͍

    View full-size slide

  20. ϑϩϯτΤϯυͷ'BVMU*TPMBUJPO
    !20
    • ϑϩϯτΤϯυ͸ɺϚΠΫϩαʔϏεͷ݁߹ϨΠϠʹͳ
    Γ΍͍͢
    • ͔ͤͬ͘όοΫΤϯυ͕ো֐ͷہॴԽΛؤுͬͯ΋ɺϢʔ
    βʔ͕ݟΔ৔ॴͰো֐͕࿈࠯ͯ͠͸ແҙຯ
    • վળ͕ඞཁ

    View full-size slide

  21. ϑϩϯτΤϯυͷ'BVMU*TPMBUJPO
    !21
    • ΞʔΩςΫνϟͷվળ
    • ΫϦʔϯΞʔΩςΫνϟ.77.ͷಋೖ
    • 6TF$BTF૚Λಋೖ͠ɺҰͭͷը໘ 7JFX$POUSPMMFS"DUJWJUZ

    ͕ෳ਺ͷ6TF$BTFΛ࣋ͭΑ͏ͳߏ੒ʹ
    • .JDSP'SPOUFOET
    • ओʹ8FCʹ͓͚Δ࿩
    • ֤ϚΠΫϩαʔϏε͕ɺ7JFX·ͰΛఏڙ͢Δ
    • యܕతʹ͸8FC$PNQPOFOUTΛఏڙ
    • τοϓϨϕϧͰ͸֤αʔϏε͕ఏڙ͢Δ7JFXΛฒ΂Δ͚ͩ
    • ඞવతʹ'BVMU*TPMBUJPO͞ΕΔ
    • ͍ͣΕ΋ઈࢍਐΊͯ·͢ʂ

    View full-size slide

  22. ·ͱΊ
    !22
    • &OWPZ͸͍͍ͧ
    • 'J/$Ͱ΋ಋೖΛਐΊ͍͖ͯ·͢ ݕূத

    • &OWPZ 4FSWJDF.FTIΛೖΕΕ͹͢΂ͯղܾ͢ΔΘ͚Ͱ
    ͸ͳ͘ɺ҆શʹػೳ௿Լͤ͞Δඞཁ͕͋Δ
    • ΞϓϦέʔγϣϯϨϕϧͷྫ֎ॲཧ
    • ಛʹɺϑϩϯτΤϯυ͸໡఺ʹ΍Γ΍͍͢
    • Ϗδωε໘ͷཧղ
    • ૯ྗઓͰ΍͍͖ͬͯ
    • ো֐ʹڧ͍ϓϥοτϑΥʔϜ

    View full-size slide