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

Kyashのシステム全容 / Kyash System Overview

Kyashのシステム全容 / Kyash System Overview

Tomohiro Takezawa

July 31, 2018
Tweet

More Decks by Tomohiro Takezawa

Other Decks in Programming

Transcript

  1. KyashͷγεςϜશ༰
    Tomohiro Takezawa
    Kyash Meetup #2 Server Side


    View Slide

  2. ࣗݾ঺հ
    • Tomohiro Takezawa
    • ΞʔΩςΫνϟͷ࿩Λฉ͘ͷ͕޷͖ɻϛυϧ΢ΣΞͷ։ൃ͍ͨ͠ɻ
    • 2017/07/10 Kyashೖࣾ
    • αʔόαΠυͷ։ൃશൠ
    • ಛʹVISAɺQUICPay (Google Pay) ͷϓϩηγϯάͳͲ
    • Kyashʹ͘Δલ
    • DeNA: ιγϟήɺϓϥοτϑΥʔϜɺνϟοτΞϓϦͷόοΫΤϯυɺΠϯϑϥ
    • Readyfor: CTO (։ൃશൠ)


    View Slide

  3. ࿩͢͜ͱ
    • Χʔυൃߦձࣾͱͯ͠ͷܾࡁ࣮຿֓ཁ
    • KyashͷγεςϜߏ੒֓ཁ


    View Slide

  4. ΧʔυܾࡁͷεςʔΫϗϧμʔ


    View Slide

  5. Χʔυൃߦձࣾͱͯ͠ͷܾࡁ࣮຿
    • ΦʔιϦ (औҾঝೝ)
    • ΫϦΞϦϯά (ച্ॲཧ)
    • ηπϧϝϯτ (ਫ਼ࢉ)


    View Slide

  6. Χʔυൃߦձࣾͱͯ͠ͷܾࡁ࣮຿
    • ΦʔιϦ (औҾঝೝ)
    • ΠγϡΞ͕ΧʔυऔҾΛ൑ఆ͠ɺঝೝ͢Δॲཧ
    • Χʔυར༻࣌ʹVisa͔ΒΦʔιϦཁٻ͕Kyashʹ఻ૹ͞ΕΔ
    • Kyash VisaΧʔυ͸ϓϦϖΠυΧʔυͳͷͰɺΦʔιϦͷλΠϛϯάͰ
    Kyash࢒ߴ͔Βݮࢉ͢Δ
    • Ωϟϯηϧ͕͋ͬͨ৔߹͸࢒ߴΛ໭͢
    • ࢒ߴ͕଍Γͳ͍৔߹͸ඥ͚ͮͨΧʔυ͔ΒKyash࢒ߴʹࣗಈνϟʔδ͢Δ


    View Slide

  7. Χʔυൃߦձࣾͱͯ͠ͷܾࡁ࣮຿
    • ΫϦΞϦϯά (ച্ॲཧ)
    • Ճໍళ͕֬ఆͨ͠ച্σʔλΛΞΫϫΠΞϥͱΠγϡΞ͕ड͚Δͨ
    Ίͷॲཧ
    • ച্σʔλ΋Visa͕஥հ͠ɺVisa͔ΒσʔλΛड͚औΔ
    • ηπϧϝϯτ (ਫ਼ࢉ)
    • ച্σʔλΛݩʹɺՃໍళ΍ΞΫϫΠΞϥʹར༻୅ۚΛࢧ෷͏ॲཧ
    • ࢧ෷͍΋Visa͕஥հ͠ɺۜߦޱ࠲͔ΒҾ͖མͱ͞ΕΔ


    View Slide

  8. KyashͷγεςϜߏ੒֓ཁ
    • ಛ௃
    • Χʔυൃߦձࣾͱͯ͠VISAͱͷ௚݁γεςϜΛࣗࣾͰ಺
    ੡։ൃ
    • ࣗಈνϟʔδɺϓογϡ௨஌
    • αʔυύʔςΟϓϩηοαʔʹཔΒͣɺϕϯνϟʔ͕͜͜
    ·ͰͰ͖͍ͯΔͷ͸௨ৗ͋Γಘͳ͍
    • ଟํ໘͔ΒόοΫΞοϓΛ͍͍͍ͨͩͯΔ


    View Slide

  9. KyashͷγεςϜ֓ཁ


    View Slide

  10. ར༻͍ͯ͠Δπʔϧ
    • ։ൃݴޠ: Go
    • Πϯϑϥ: AWS (EC2, ELB, ECS, Lambda, RDS, S3, KMS, SQS, SNS, SSM,
    Cloudwatch, Cloudfront, Route53, ElastiCache, CodeDeploy, API Gateway, etc.)
    • σʔλϕʔε: Postgresql, Redis
    • Ops: Terraform, Ansible
    • ෼ੳ: BigQuery, Redash, Kibana, Firebase, AppsFlyer
    • ϑϨʔϜϫʔΫ: gRPC, gin, Echo, Gorm
    • ͦͷଞπʔϧ: Docker, GitHub, Slack, CircleCI, Codecov, ElasticSearch, Fluentd,
    PagerDuty, Kibela, Trello, Confluence, JIRA
    • ։ൃϫʔΫϑϩʔ: GitHub Flow, ΞδϟΠϧ


    View Slide

  11. ΤϯδχΞ͕ཉ͍͠
    • ίϯϙʔωϯτଟ͍
    • ࠓޙɺࣄۀతʹ΍Γ͍ͨ͜ͱଟ͍
    • վम͍ͨ͜͠ͱଟ͍
    • γεςϜվળͱػೳ։ൃΛͯ͘͠ΕΔΤϯδχ
    Ξ͕ཉ͍͠


    View Slide