COOがマネージドサービスで 1人スピード開発して得た知見

9b5993e48b0f2bc44bbfcdabdf1a3457?s=47 AR_Ojisan
November 02, 2018

COOがマネージドサービスで 1人スピード開発して得た知見

AWS DevDay 2018/11/2

9b5993e48b0f2bc44bbfcdabdf1a3457?s=128

AR_Ojisan

November 02, 2018
Tweet

Transcript

  1. COO͕ϚωʔδυαʔϏεͰ ̍ਓεϐʔυ։ൃͯ͠ಘͨ஌ݟ MESON COO খྛ༎थ

  2. খྛ༎थʢAR͓͡͞Μʣ גࣜձࣾMESON COO ΤϯδχΞܦݧ͸༗Γ AWS͸ࠓճ͕ॳ։ൃ ձࣾͰ͸ԿͰ΋԰͞Μͱͯ͠৭Μͳۀ຿Λ਱ߦ @AR_Ojisan

  3. heymeshͷ঺հͱ ։ൃ౰࣌ͷMESONͷঢ়گ

  4. heymesh: Search engine for 3D models 13αΠτ, 50ສ݅Λ௒͑Δ3DϞσϧσʔλΛԣஅݕࡧ

  5. heymesh: Search engine for 3D models ϥΠηϯε΍Ձ֨ɺεϖοΫͰͷϑΟϧλϦϯάɹ

  6. ࣄۀੑͳͲΛਫ਼ࠪͨ݁͠ՌɺΫϩʔζ͢Δͱ͍͏݁࿦ʹ 2018೥9݄ʹheymeshΫϩʔζ

  7. ɾݕূͷͨΊͷ։ൃ ɹˠP/S Fitͷஹ͕͠ݟ͑ͨͷͰࢢ৔౤ೖͯ͠ݕূ͠Α͏ ɾ͕ͬͭΓ։ൃϦιʔεׂ͕͚ͳ͍ ɹˠग़དྷΔ͚ͩখྛ͕։ൃͰ͖Δ෦෼ΛΧόʔ heymesh։ൃͷϞνϕʔγϣϯ

  8. AWS Summit 2018ʹͯAWS SA৆ड৆

  9. ΞʔΩςΫνϟ঺հ

  10. heymeshΛࢧ͑ΔAWSαʔϏε Fargate Elasticsearch Service DynamoDB NLB Lambda

  11. git push ΤϯδχΞ Ϣʔβʔ heymesh όοΫΤϯυΞʔΩςΫνϟʔ

  12. git push ΤϯδχΞ Ϣʔβʔ σʔλऩू

  13. Scrapy Cloud git push ΤϯδχΞ Ϣʔβʔ ݕࡧΞϓϦέʔγϣϯ

  14. git push ΤϯδχΞ Ϣʔβʔ heymesh όοΫΤϯυΞʔΩςΫνϟʔ όοΫΤϯυΞʔΩςΫνϟ͸ શͯ1ਓͰ1ϲ݄Ͱߏங

  15. 1ਓͰ1ϲ݄Ͱ࡞Γ͖ΔͨΊʹ ҙࣝͨ̏ͭ͠ͷϙΠϯτ

  16. 1. పఈతʹϦιʔε؅ཧ͠ͳ͍

  17. git push ΤϯδχΞ Ϣʔβʔ ϚωʔδυˍαʔόʔϨεαʔϏε

  18. ΤϯδχΞ࠾༻͕ ϓϩμΫτ։ൃ࠷େͷ೉ؔ

  19. ਓ͸ޏ͑ͳ͍ ͚Ͳɺૣ͘։ൃ͠ͳ͖Ό͍͚ͳ͍ɾɾɾ

  20. ϚωʔδυˍαʔόʔϨεαʔϏεΛ׆༻ ຊ౰ʹ։ൃ͕ඞཁͳ෦෼ʹ͚ͩूதͰ͖Δ

  21. ՄೳͳݶΓαʔόʔϨε ৔߹ʹΑͬͯϚωʔδυΛ࠾༻

  22. 2. AWSαʔϏε୯ҐͰͷ ॲཧͷ෼ׂ

  23. git push ΤϯδχΞ Ϣʔβʔ Ϋϩʔϧॲཧ εΫϨΠϐϯάॲཧ σʔλ੔ܗॲཧ ಠࣗ఺਺ܭࢉॲཧ SQSΛ࢖ͬͨύΠϓϥΠϯॲཧ

  24. ϓϩμΫτͷ։ൃॳظ͸ ໰୊༧ଌ͕ͮ͠Β͍

  25. git push ΤϯδχΞ Ϣʔβʔ ࣮ࡍʹى͖ͨࣄ৅ ॳظ૝ఆΑΓσʔλ੔ܗॲཧ͕ෳࡶԽ ϘτϧωοΫʹͳͬͯ͠·ͬͨ

  26. git push ΤϯδχΞ Ϣʔβʔ ॳظ૝ఆΑΓσʔλ੔ܗॲཧ͕ෳࡶԽ ϘτϧωοΫʹͳͬͯ͠·ͬͨ ΑΓ௕͍ॲཧʹॊೈʹରԠͰ͖Δ FargateʹॲཧΛҠߦ ࣮ࡍʹى͖ͨࣄ৅

  27. AWSαʔϏε୯ҐͰͷૄ݁߹ͳॲཧ෼ׂ ֤AWSαʔϏεͷڧΈΛ࠷େݶ׆༻

  28. AWSαʔϏε୯ҐͰͷૄ݁߹ͳॲཧ෼ׂ ໰୊ൃੜ࣌ʹ΋มߋൣғΛ໌͔֬ͭ࠷খݶʹ

  29. 3. άϩʔόϧج४ͷٕज़બఆ

  30. heymesh͸શੈքͷϢʔβʔ͕λʔήοτ

  31. ٕज़બఆ΋άϩʔόϧલఏͰͳ͍ͱ ੈքͷελʔτΞοϓͱઓ͑ͳ͍

  32. git push ΤϯδχΞ Ϣʔβʔ ଟ਺ͷՕॴͰFargateΛར༻

  33. git push ΤϯδχΞ Ϣʔβʔ ଟ਺ͷՕॴͰFargateΛར༻ ΞʔΩςΫνϟ͸શͯ όʔδχΞϦʔδϣϯͰߏங

  34. άϩʔόϧج४ͷٕज़બఆ ศརͳ৽αʔϏεΛҰૣ͘ར༻Մೳ

  35. άϩʔόϧج४ͷٕज़બఆ άϩʔόϧͰ΋ઓ͑ΔελʔτΞοϓʹ

  36. ελʔτΞοϓ͸ͱʹ͔͘ૣ͘ αʔϏεΛϦϦʔε͢Δ͜ͱ͕େࣄ

  37. 3݄ɿϢʔβʔΠϯλϏϡʔɺαʔϏεઃܭ 4݄ɿαʔϏε։ൃ 5݄ʙ8݄ɿαʔϏεӡ༻ɺվળɺݕূ 9݄ɿαʔϏεΫϩʔζͷҙࢥܾఆ ߴ଎ʹαʔϏεͷݕূ͕Մೳʹͳͬͨ

  38. ̏ͭͷϙΠϯτΛҙࣝ͢Δ͜ͱͰ গͳ͍։ൃϦιʔεͰਝ଎ͳ։ൃ͕Մೳ

  39. heymesh։ൃ࣌ͷࣦഊஊͱ ͔ͦ͜Βಘֶͨͼ

  40. σʔλ͕ετοΫ͞ΕΔ෦෼ͷ ΞʔΩςΫνϟઃܭ͸৻ॏʹ

  41. heymesh͸αʔϏεͷಛੑ্ ॳظ͔ΒେྔͷσʔλΛѻͬͨ ※13αΠτ, 50ສ݅Ҏ্ͷ3DϞσϧσʔλ

  42. git push ΤϯδχΞ Ϣʔβʔ σʔλऩू σʔλ͸ৗʹྲྀΕΔ ϑϩʔܕ

  43. git push ΤϯδχΞ Ϣʔβʔ σʔλऩू σʔλ͕஝ੵ͞ΕΔ ετοΫܕ σʔλ͕஝ੵ͞ΕΔ ετοΫܕ

  44. git push ΤϯδχΞ Ϣʔβʔ σʔλऩू όονॲཧͰ Ұׅ఺਺ܭࢉΛߦ͍ͬͯͨ

  45. ϑϩʔܕͷΞʔΩςΫνϟͷઃܭ͸ ׂͱ࣮૷׬ྃޙ΋༥௨͕ར͕͘…

  46. ετοΫܕͷΞʔΩςΫνϟઃܭ͸ σʔλ૿Ճʹ൐͍มߋίετ͕େ͖͘ͳΔ

  47. ౰ॳͷ༧ఆΑΓଟ͘ͷσʔλ͕ऩू͞Εɺ DynamoDB→AthenaͷҠߦ͕೉ߤ

  48. ਝ଎ʹ։ൃ͠Α͏ͱ͢Δͱ ઃܭͷ͕࣌ؒຬ଍ʹऔΕͳ͍ ʮઃܭ͢΂͖ϙΠϯτʯΛԡ͑ͯ͞ ઃܭͷ࣌ؒ഑෼Λ͓ͯ͘͜͠ͱ͕େࣄ

  49. ΠϯϑϥΤϯδχΞ͡Όͳͯ͘΋ εϐʔυ։ൃΛՄೳʹ͢ΔAWSπʔϧ

  50. Chalice αʔόʔϨεΞϓϦέʔγϣϯΛ؆୯࡞੒ AWSͷ෦෼Λҙࣝͤͣʹ࣮૷Մೳ

  51. ॳظͷ։ൃ͸ՄೳͳݶΓ αʔόʔϨε͕ྑ͍ ☺

  52. APIαʔόʔ΋αʔόʔϨεͰཱͯΕ͹ Ϧιʔε؅ཧཁΒ͕ͣͩ…

  53. LambdaͰAPIΛ࡞Ζ͏ͱ͢Δͱ LambdaͱAPI Gatewayͷ؅ཧ͕໘౗

  54. Chaliceͷྑ͍ͱ͜Ζ AWSͷͨΊͷϧʔϧ΍จ๏Λ֮͑Δඞཁ͕΄΅ͳ͍ ·ΔͰWeb FrameworkͰΞϓϦΛ࡞ΔΑ͏ʹ࣮૷Մೳ ϩʔΧϧ࣮ߦ΋؆୯ σόοΫ͕؆୯ʹͰ͖Δ ΤϥʔϨεϙϯε΋ίʔυԽՄೳ σϑΥϧτͰΤϥʔϨεϙϯεͷΫϥε͕༻ҙ͞Ε͍ͯΔ ʢ̍ʣ ʢ̎ʣ

    ʢ̏ʣ
  55. Chaliceͷྑ͍ͱ͜Ζ AWSͷͨΊͷϧʔϧ΍จ๏Λ֮͑Δඞཁ͕΄΅ͳ͍ ·ΔͰWeb FrameworkͰΞϓϦΛ࡞ΔΑ͏ʹ࣮૷Մೳ ϩʔΧϧ࣮ߦ΋؆୯ σόοΫ͕؆୯ʹͰ͖Δ ΤϥʔϨεϙϯε΋ίʔυԽՄೳ σϑΥϧτͰΤϥʔϨεϙϯεͷΫϥε͕༻ҙ͞Ε͍ͯΔ ʢ̍ʣ ʢ̎ʣ

    ʢ̏ʣ ॳظελʔτΞοϓͷεϐʔυ։ൃʹ޲͍͍ͯΔ
  56. Chaliceͷྑ͍ͱ͜Ζ AWSͷͨΊͷϧʔϧ΍จ๏Λ֮͑Δඞཁ͕΄΅ͳ͍ ·ΔͰWeb FrameworkͰΞϓϦΛ࡞ΔΑ͏ʹ࣮૷Մೳ ϩʔΧϧ࣮ߦ΋؆୯ σόοΫ͕؆୯ʹͰ͖Δ ΤϥʔϨεϙϯε΋ίʔυԽՄೳ σϑΥϧτͰΤϥʔϨεϙϯεͷΫϥε͕༻ҙ͞Ε͍ͯΔ ʢ̍ʣ ʢ̎ʣ

    ʢ̏ʣ ॳظελʔτΞοϓͷεϐʔυ։ൃʹ޲͍͍ͯΔ ୠ͠1ZUIPOJTUBʹݶΔʂ
  57. ·ͱΊ

  58. ɾॳظελʔτΞοϓ͸AWSͷϚωʔδυΛϑϧ׆༻͢΂͖ ɾਓΛແཧʹޏ͏ΑΓ΋ඞཁͳ෦෼ͷΈʹूதͯ͠εϐʔυ։ൃ ɾετοΫܕͷσʔλͷઃܭͳͲ৻ॏʹͳΔ෦෼ΛݟۃΊΔ ɾChaliceͳͲΛ׆༻ͯ͠Πϯϑϥ෦෼Λҙࣝ͠ͳͯ͘ྑ͍ঢ়ଶʹ ·ͱΊ

  59. MESONͷ঺հ

  60. ฐࣾ͸UX+UIʹڧ͍AR/VR੍࡞ελδΦ AR/VRࣄۀͷίϯηϓτϝΠΩϯά AR/VRΛ׆༻ͨ͠ΞϓϦ΍ιϦϡʔγϣϯ։ൃ AR/VRʹ͓͚ΔUX+UIσβΠϯͷఏҊ

  61. ARͷاըཱҊ͔Βάϩʔε·Ͱαϙʔτ ࣄۀ ϓϥϯχϯά Ϣʔβʔମݧ σβΠϯ ٕज़ྗ

  62. @AR_Ojisan ͓࢓ࣄͷґཔΛ͍ͨ͠ํɾҰॹʹಇ͖͍ͨํ ͓ؾܰʹ͝࿈བྷ͍ͩ͘͞ʂ

  63. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ

  64. None