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

kintone.comを支える技術

 kintone.comを支える技術

2021年のサイボウズエンジニア向け会社説明会で使用した資料です

Shin'ya Ueoka

October 27, 2021
Tweet

More Decks by Shin'ya Ueoka

Other Decks in Technology

Transcript

  1. kintone.comΛࢧ͑Δٕज़
    kintone։ൃYakumoج൫νʔϜ
    ্Ԭ ਅ໵ (@ueokande)
    αΠϘ΢ζٕज़આ໌ձ for student!!

    View Slide

  2. Me
    • αΠϘ΢ζ2016೥৽ଔೖࣾ
    • άϩʔόϧ޲͚B2BΫϥ΢υαʔϏε
    kintone.comͷ։ൃɾӡ༻Λͯ͠·͢
    • झຯ͸ࣾ֎ൃ৴
    2

    View Slide

  3. kintone
    • ۀ຿γεςϜΛ؆୯ʹ࡞ΕΔ
    B2B޲͚Ϋϥ΢υαʔϏε
    • ࠃ಺֎21,000+ࣾͰಋೖ
    • άϩʔόϧ޲͚͸ʮkintone.comʯ
    ͱ͍͏ϒϥϯυͰల։
    3

    View Slide

  4. ೔ຊ޲͚ʮkintoneʯͱʮkintone.comʯ
    • ೔ຊ޲͚kintone͸ࣗࣾΫϥ΢υج൫ʢcyboozu.comʣͰఏڙ͠ɺ
    άϩʔόϧ޲͚ͷkintone.com͸AWSͰఏڙ
    • Ҏલ͸ࠃ಺ͷΫϥ΢υج൫Ͱӡ༻͍͕ͯͨ͠ɺ2020೥ʹAWSʹҠߦ
    • Ҡߦ͸୯ͳΔҾͬӽ͠Ͱ͸ͳ͘ɺΠϯϑϥج൫΍ମ੍Λ࠶ߏங
    4

    View Slide

  5. kintone.comͷνϟϨϯδ
    • ։ൃମ੍΍Πϯϑϥج൫Λθϩ͔ΒઃܭͰ͖Δνϟϯε
    • ࠃ಺ϓϩμΫτ։ൃʹઌۦ͚৽͍ٕ͠ज़ʹνϟϨϯδ
    • Ϋϥ΢υωΠςΟϒͳ։ൃɾӡ༻
    • ܧଓతσϦόϦʔͱσϓϩΠύΠϓϥΠϯ
    • SLOʹجͮ͘৴པੑ޲্ͱܧଓతվળ
    • …
    5

    View Slide

  6. Ϋϥ΢υωΠςΟϒͳ։ൃɾӡ༻
    • kintoneͷόοΫΤϯυαʔϏε͸ίϯςφΞϓϦέʔγϣϯͱͯ͠
    Amazon EKSʢϚωʔδυKubernetesʣ্ʹσϓϩΠ
    6
    Amazon KES
    Web
    Job Queue
    Mail Delivery
    Routine
    Blob
    Thumbnail
    kintone.comͷόοΫ
    ΤϯυαʔϏε͸
    Kubernetes্ʹσϓϩΠ
    σʔλͷอଘઌ΍
    αʔϏεͷج൫͸
    AWSͷαʔϏεΛ
    ૊Έ߹Θͤͯߏங

    View Slide

  7. ܧଓతσϦόϦʔͱσϓϩΠύΠϓϥΠϯ
    • Πϯϑϥͷߏ੒ΛίʔυԽͯ͠Git؅ཧʢInfrastructure as Codeʣ
    • GitHub্ͰPull RequestΛϚʔδͨ͠Βຊ൪؀ڥ·ͰࣗಈͰద༻
    • ࡉ͔͍୯ҐͰϦϦʔεͯ͠ਝ଎ͳϑΟʔυόοΫΛಘΒΕΔ
    • masterϒϥϯνͷίʔυ = ຊ൪؀ڥͷߏ੒
    7
    %FWFMPQNFOU 4UBHJOH 1SPEVDUJPO

    View Slide

  8. • kintone͸ଞͷϢʔβʔʹϝʔϧͰ௨஌͢Δػೳ͕͋Δ
    • ಛఆͷ͓٬༷ʹΑ੍ͬͯݶͳ͘ϝʔϧΛૹΔ͜ͱ͕Ͱ͖ͨ
    • Amazon SESʢϝʔϧαʔϏεʣʹ͸24࣌ؒʹૹΕΔϝʔϧ݅਺ͷ੍ݶ͕͋Δ
    • ্ݶʹୡ͢Δͱkintone.comશମͰϝʔϧ͕ૹΕͳ͘ͳΔ
    • SESͷ্ݶʹୡ͠ͳ͍Α͏ͳ͘͠Έ͕ඞཁ
    ࣮ࡍͷ։ൃྫ: ϝʔϧͷεϩοτϦϯά
    8
    📧 📧
    Amazon SES
    Web Mail Delivery
    📧

    View Slide

  9. ઃܭͱઓུʛϝʔϧͷεϩοτϦϯά
    • ϝʔϧ഑৴αʔϏεʹεϩοτϦϯάͷػߏΛೖΕΔ
    Before: WebϦΫΤετͰड͚औͬͨϝʔϧΛSESʹ౉͢
    After: ड͚औͬͨϝʔϧΛΩϡʔʹೖΕͯɺऔΓग़͢ͱ͖ʹ཯଎
    9
    Amazon SES
    Web Mail Delivery
    Enqueue Dequeue
    📧
    📧
    Amazon SES
    Web Mail Delivery
    📧
    Before After

    View Slide

  10. ΩϡʔͷߏஙʛϝʔϧͷεϩοτϦϯά
    • Amazon SQSʢϚωʔδυΩϡʔʣʹϝʔϧδϣϒΛΩϡʔΠϯά
    • AWSͷΠϯϑϥߏ੒ΛYAMLͰهड़ͯ͠CloudFormationͰద༻
    10
    Resources:
    MailQueue:
    Type: “AWS::SQS:
    Properties:
    QueueName: "Mai

    FifoQueue: true
    ContentBasedDed
    MessageRetentio
    ReceiveMessageW
    HogeHoge.yaml
    CloudFormation
    Amazon SQS

    View Slide

  11. • ϝʔϧ഑৴αʔϏεʢKotlin + Spring Bootʣ͕SQSʹΞΫηε͢ΔΑ
    ͏ίʔυΛमਖ਼
    • मਖ਼ͨ͠αʔϏεΛKubernetes্ʹσϓϩΠͯ͠ࢼݧ
    αʔϏεͷमਖ਼ʛϝʔϧͷεϩοτϦϯά
    11
    Amazon SES
    Web Mail Delivery
    # αʔόʔαΠυKotlin͸͍͍ͧʂ

    View Slide

  12. ຊ൪؀ڥ΁σϓϩΠʛϝʔϧͷεϩοτϦϯά
    • αʔϏεͱYAMLͷमਖ਼͕ऴΘͬͨΒνʔϜ಺ͰίʔυϨϏϡʔ
    • masterϚʔδͯ͠͠͹Β͘଴ͭͱຊ൪؀ڥʹద༻
    12
    αʔϏεͷίϯςφϏϧυ
    %FWFMPQNFOU 4UBHJOH 1SPEVDUJPO
    $MPVE'PSNBUJPOͷద༻ &,4্ʹαʔϏεΛల։ ౷߹ςετ

    View Slide

  13. ·ͱΊ
    • kintone.com͸ࣾ಺Ͱ΋߈ΊͨνϟϨϯδΛ͖ͯ͠·ͨ͠
    • Ϋϥ΢υωΠςΟϒͳ։ൃӡ༻ϓϩηε΍ܧଓతσϦόϦʔͳͲ
    • ͦΕʹΑΔਝ଎ͳ։ൃαΠΫϧ΍ߴ଎ͳϑΟʔυόοΫ
    • ͜Ε͔Β͸ࠃ಺ͷϓϩμΫτ։ൃʹ΋ϑΟʔυόοΫ༧ఆͰ͢💪
    13

    View Slide