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

Laravel でも非同期処理が扱える!? PHP 8 から初める非同期処理 〜Laravel Octane〜

218473ff7abad0fcd72865da2b23bb5b?s=47 memory
October 02, 2021

Laravel でも非同期処理が扱える!? PHP 8 から初める非同期処理 〜Laravel Octane〜

English: Can we use asynchronous processing on Laravel? We can start to use asynchronous processing on PHP8 with Laravel Octane
At: 2021/10/03 PHP Conference 2021

218473ff7abad0fcd72865da2b23bb5b?s=128

memory

October 02, 2021
Tweet

Transcript

  1. Ί΋Γʔ -BSBWFMͰ΋ඇಉظॲཧ͕ѻ͑Δʂʁ 1)1͔ΒॳΊΔඇಉظॲཧ ʙ-BSBWFM0DUBOFʙ 1)1ΧϯϑΝϨϯε 1

  2. @2020 Torana, Inc. @2020 Torana, Inc. Ί΋Γʔ ϓϩμΫτ։ൃ෦ Ϛωʔδϟʔ݉ςοΫϦʔυ 1)1Ͱ+7.Λ࣮૷ͨ͠ΓຊΛॻ͍ͯͨΓ

    ͯ͠·͢ɻೕ༮ࣇ޲͚஌ҭ؝۩ͷαϒεΫϦ ϓγϣϯαʔϏεΛఏڙ͢Δ5PSBOBͱ͍͏ ձࣾʹ͍·͢ !NNS 2
  3. @2020 Torana, Inc. <13>ձࣾʹ͍ͭͯ ͓͔͛͞·Ͱฐࣾͷ஌ҭ؝۩αϒεΫϦϓγϣϯαʔϏεʮτΠαϒʂʯ ͝ར༻͍͍͍ͨͩͯΔ͓٬༷͸໿ ਓͱͳΓ·ͨ͠ʂ 
 ຊ1)1ΧϯϑΝϨϯεͰ΋εϙϯαʔυΛ͓ͯ͠Γ·͢ɻ 0

    2500 5000 7500 10000 2015 2016 2018 2020 2021 3
  4. @2020 Torana, Inc. ͓͠ͳ͕͖ -BSBWFM0DUBOFͱ͸ʁ Կ͕Ͱ͖Δͷʁ ࠓ·Ͱͱ͸Կ͕ҧ͏ͷʁ ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ 4

  5. -BSBWFM0DUBOFͱ͸ʁ 5

  6. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ  ߴੑೳͳΞϓϦέʔγϣϯɾαʔόʔΛఏڙ͢ΔͨΊͷ-BSBWFMͷͨΊ ͷϥΠϒϥϦͰ͢ɻ  ΞϓϦέʔγϣϯɾαʔόʔͷछྨ͸3PBE3VOOFS·ͨ͸4XPPMFΛ 


    બ୒ͯ͠࢖༻͢Δ͜ͱ͕Ͱ͖·͢ɻ 6
  7. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ  ͦͯ྆͠ऀ͸ɺϓϩμΫγϣϯϨσΟͰ͋Δͱᨳ͍ͬͯ·͢ɻ 7

  8. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ  A0DUBOFDPODVSSFOUMZA ฒߦॲཧ ΍A0DUBOFUJDLA +BWB4DSJQUͷ TFU*OUFSWBMͷΑ͏ͳ΋ͷ

    ͕ఏڙ͞Ε͓ͯΓɺ೉ͳ͘࢖༻Ͱ͖·͢ɻ  ·ͨσʔλϕʔε΍,74Λܦ༝ͤͣʹɺϝϞϦ্ʹϦΫΤετؒͰͷ σʔλΛڞ༗͢ΔͨΊͷA$BDIFTUPSF PDUBOF A΋༻ҙ͞Ε͓ͯΓɺ ωοτϫʔΫ*0Λߟྀ͢Δඞཁ͕ͳ͍ͨΊɺߴ଎ͳσʔλͷग़͠ೖΕ ͕Մೳʹͳ͍ͬͯ·͢ɻ 8
  9. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ 3PBE3VOOFSͱ͸ʁ  (P੡ΞϓϦέʔγϣϯɾαʔόʔͰߴ଎ʹ1)1ΛॲཧΛ͢Δͨ Ίͷ΋ͷͰ͢ɻ  ༧Ίىಈͯ͋͠Δ1)1ϫʔΧʔ΁ϦΫΤετ͕དྷͨ࣌ʹ31$Λ

    ༻͍Δ͜ͱͰɺॲཧͨ݁͠ՌΛϨεϙϯεͱͯ͠ฦ͢࢓૊ΈͰ͢ɻ  ༧Ίϓϩηε͕ىಈ͍ͯ͠ΔͨΊʢ͍ΘΏΔϓϩηε͕ϓʔϧ͞Ε ͍ͯΔঢ়ଶʣɺॳճىಈίετΛݮΒ͠ɺϦΫΤετΛߴ଎ʹࡹ ͘͜ͱ͕Ͱ͖Δͷ͕ಛ௃Ͱ͢ɻ ࢀর: https://roadrunner.dev/docs/intro-about 9
  10. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ 3PBE3VOOFSͱ͸ʁ  ಋೖࣗମ΋͞΄Ͳ೉͘͠ͳ͘ɺͦͯ͠1)1ͷ֦ுΛඞཁͱ͠ͳ ͍ͨΊɺ੍ݶͷ͋Δ؀ڥԼͰ΋ಋೖ͕༰қͰ͢ɻ ࢀর: https://roadrunner.dev/docs/intro-about

    10
  11. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ 4XPPMFͱ͸ʁ  1)1ͰฒߦॲཧɺฒྻॲཧͳͲΛఏڙ͢ΔͨΊͷ 
 1)1ͷ֦ுͷͭͰ͢ɻ 

    1)1͔Β'JCFS͕औΓೖΕΒΕ͍ͯ·͕͢'JCFSΑΓ΋ 
 ؆қతʹ࢖༻Ͱ͖ΔϥΠϒϥϦͰ͢ɻ  ༻్ͱͯ͠͸ΞϓϦέʔγϣϯɾαʔόʔʹཹ·Βͣɺ 
 ؆୯ͳεΫϦϓτ͔Βॏ͍ͨόονॲཧͳͲʹ΋޲͍͍ͯ·͢ɻ ࢀর: https://www.swoole.co.uk/article/php- fi bers-rfc-vs-swoole-co https://www.swoole.co.uk/ 11
  12. @2020 Torana, Inc. -BSBWFM0DUBOFͱ͸ʁ 4XPPMFͱ͸ʁ  (PϥΠΫʹAHP GO  Aͱॻ͘ͱɺ4XPPMF୯ମͰඇಉ

    ظʹॲཧ͕ՄೳͰ͢ɻ  (Pʹ͋Δ8BJU(SPVQ΍$IBOOFMͳͲ΋උ͑ΒΕ͓ͯΓɺ -BSBWFM0DUBOF͚ͩͷ༻్ʹཹ·Βͳ͍΄Ͳͷ 
 ϙςϯγϟϧ͕ߴ͍ϥΠϒϥϦͰ͢ɻ ࢀর: https://www.swoole.co.uk/article/php- fi bers-rfc-vs-swoole-co https://www.swoole.co.uk/ 12
  13. Կ͕Ͱ͖Δͷʁ 13

  14. @2020 Torana, Inc. -BSBWFM0DUBOFͰԿ͕Ͱ͖Δͷʁ  ैདྷͷ/(*/9 1)1'1.ͷ૊Έ߹Θͤ΍"QBDIF NPE@QIQͳͲͷ૊Έ߹ ΘͤͰ͸ͳ͘ɺߴੑೳΞϓϦέʔγϣϯɾαʔόʔΛ࢖͏͜ͱͰɺࠓ·ͰҎ্ʹ ύϑΥʔϚϯεೳྗͷߴ͍αʔϏεΛ1)1Ͱఏڙ͢Δ͜ͱ͕Ͱ͖ΔΑ͏ʹͳΓ

    ·͢ɻ  ·ͨ3PBE3VOOFSͩͱ-BSBWFM0DUBOF͸ػೳʹେ෯ͳ੍ݶ͕͋Γ·͕͢ɺΞϓ ϦέʔγϣϯɾαʔόʔͷछྨΛ4XPPMFͱ͢Δ͜ͱͰɺ 
 ࣍ͷϖʔδͷΑ͏ͳԸܙΛڗडͰ͖·͢ɻ  ্هͷΑ͏ͳཧ༝΋͋ΓɺຊτʔΫ͸-BSBWFM0DUBOFͱ4XPPMFΛத৺ʹ 
 ৄղ͍͖ͯ͠·͢ɻ 14
  15. @2020 Torana, Inc. -BSBWFM0DUBOFͰԿ͕Ͱ͖Δͷʁ  4XPPMF͕ఏڙ͍ͯ͠Δαʔόʔ  )551 ؚΉ αʔόʔ

     8FC4PDLFUαʔόʔ  5$16%1αʔόʔ  .255αʔόʔ  -BSBWFM0DUBOF͸4XPPMFͷҎԼͷػೳΛ࢖༻͍ͯ͠·͢  )551 ؚΉ αʔόʔ 15
  16. @2020 Torana, Inc. -BSBWFM0DUBOFͰԿ͕Ͱ͖Δͷʁ  ͳ͓MBSBWFMTXPPMFͱ͍͏ϓϩδΣΫτͰ͸)551αʔόʔҎ֎ʹ΋ʜ  8FC4PDLFUαʔόʔ  4XPPMFͷλεΫϫʔΧʔΛ༻͍ͯΩϡʔαʔόʔͷ࣮૷

    ্هΛ-BSBWFM্Ͱར༻Մೳʹ͍ͯ͠·͢ɻ 16
  17. @2020 Torana, Inc. -BSBWFM0DUBOFͰԿ͕Ͱ͖Δͷʁ  0DUBOFDPODVSSFOUMZ  ฒߦॲཧΛѻ͏ͨΊͷػೳͰ͢ɻத਎ࣗମ͸)551ϦΫΤετΛ 
 λεΫαʔόʔͱݺ͹ΕΔ΋ͷͰॲཧΛͤ͞Δ࣮૷ʹͳ͍ͬͯ·͢ɻ

    
 ಺෦Ͱ4XPPMFͷDPSPVUJOF͸࢖༻͞Ε͍ͯ·ͤΜɻ  0DUBOFUJDL  Ұఆ࣌ؒޙʹίʔϧόοΫΛ࣮ߦ͢ΔͨΊͷ࢓૊ΈΛఏڙ͍ͯ͠· ͢ɻ+BWB4DSJQUͰ͍͏ͱ͜ΖͷTFU*OUFSWBMͱಈ࡞͕ࣅ͍ͯ·͢ɻ 17
  18. @2020 Torana, Inc. -BSBWFM0DUBOFͰԿ͕Ͱ͖Δͷʁ  $BDIFTUPSF PDUBOF   ΩϟογϡΛσʔλϕʔε΍,74Ͱ͸ͳ͘ϝϞϦ্ʹஔͨ͘Ίͷ΋ͷ

    Ͱ͢ɻ࣮૷ࣗମ͸0DUBOFUBCMFͱେࠩͳ͘4XPPMFa5BCMFΛ༻͍ͯ ࣮૷͞Ε͍ͯ·͢ɻ  0DUBOFUBCMF  ϋΠύϑΥʔϚϯεʹϝϞϦ্ʹσʔλΛอ࣋ɾऔಘ͢ΔͨΊͷ 
 ࢓૊ΈΛఏڙ͍ͯ͠·͢ɻ 18
  19. ࠓ·Ͱͱ͸Կ͕ҧ͏ͷʁ 19

  20. ैདྷ 20

  21. @2020 Torana, Inc.  ϩʔυόϥϯαʔ΍ϦόʔεϓϩΩγͳͲΛ໨తͱͯ͠/(*/9 ͱͦͷόοΫʹ1)1'1.͕͋Δߏ੒ɻ ࠓ·Ͱͱ͸Կ͕ҧ͏ͷ͔ ैདྷ 21 ϦΫΤετ

    Ϩεϙϯε PHP-FPM ʹྲྀ͢ PHP Ͱॲཧ Ϩεϙϯε Ϩεϙϯε
  22. @2020 Torana, Inc. ࠓ·Ͱͱ͸Կ͕ҧ͏ͷ͔ ैདྷ 22  "QBDIF NPE@QIQͷΑ͏ͳΑ͘ݟΒΕΔߏ੒Ͱ͢ɻ 


    "QBDIFͷखલʹϩʔυόϥϯαʔ͕ډͨΓ͠·͢ɻ ϦΫΤετ PHP Ͱॲཧ Ϩεϙϯε Ϩεϙϯε
  23. -BSBWFM0DUBOF 23

  24. @2020 Torana, Inc. ࠓ·Ͱͱ͸Կ͕ҧ͏ͷ͔ -BSBWFM0DUBOF 24  1)1'1.Λ-BSBWFM0DUBOFʹஔ͖׵͑Δ͜ͱʹͳΓ·͢ɻ 
 /(*/9Ͱ͸GBTUDHJͰ͸ͳ͘ϦόʔεϓϩΩγΛ࢖͏͜ͱʹͳΓ·͢ɻ

    ϦΫΤετ Ϩεϙϯε ϦόʔεϓϩΩγ Ϩεϙϯε PHP Ͱॲཧ Ϩεϙϯε
  25. @2020 Torana, Inc. ࠓ·Ͱͱ͸Կ͕ҧ͏ͷ͔ -BSBWFM0DUBOF 25  "QBDIF͕-BSBWFM0DUBOFʹมΘΓ·͢ɻ ϦΫΤετ PHP

    Ͱॲཧ Ϩεϙϯε Ϩεϙϯε
  26. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ 26

  27. %*ͷରԠ 27

  28. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ %*ͷରԠ  -BSBWFM0DUBOFΛ࢖༻͢Δࡍʹ஫ҙ͢΂͖఺ͷҰͭͱͯ͠ɺ%*ͷ ରԠ͕ڍ͛ΒΕ·͢ɻ  ैདྷͰ͋Ε͹ɺ઀ଓͷͨͼʹ৽͘͠TJOHMFUPO΁ͷొ࿥͕࣮ߦ

    ͞ΕΔͨΊɺߟྀ͢Δඞཁ͕͋Γ·ͤΜͰͨ͠ɻ  ͔͠͠-BSBWFM0DUBOF͸1)1ࣗମ͕Πϕϯτϧʔϓͷର৅ͱͳ ΔͨΊɺຊདྷ1)1ऴྃ࣌ʹಈ࡞͢ΔΑ͏ͳΠϕϯτ͕ 
 ى͜Γ·ͤΜɻ 28
  29. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ %*ͷରԠ  ͦͷͨΊϦΫΤετ#͕ϦΫΤετ"ͷม਺Λࢀরͯ͠͠·͏ ͜ͱ͕͋Γ͑·͢ɻ 29 γϯάϧτϯ

    X ϦΫΤετ A Λ࢖͍ͬͯΔ 
 Πϯελϯε ϦΫΤετ A ϦΫΤετ B γϯάϧτϯX Λࢀর γϯάϧτϯX Λࢀর ↑ ಉ͡γϯάϧτϯΛࢀর ↓ ↑ ϦΫΤετ A ͷॲཧ͕ऴྃͯ͠΋γϯάϧτϯ X ͸࢒Γଓ͚ΔͨΊ ϦΫΤετ B ͕ϦΫΤετ A ޲͚ͷγϯάϧτϯ X Λࢀরͯ͠͠·͏
  30. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ %*ͷରԠ  ͜ΕΛ๷͙ͨΊʹɺ-BSBWFM0DUBOFެ্ࣜͰ͸ɺγϯάϧτϯ ͱͯ͠ొ࿥͠ͳ͍ͨΊɺΠϯελϯεΛৗʹղܾ͢Δํ๏ΛఏҊ ͍ͯ͠·͢ɻ 

    ฐࣾ͸ͦ΋ͦ΋ଞϦΫΤετͱڞ௨ͯ͠΋͍͍΋ͷҎ֎͸ɺαʔ ϏείϯςφΛ΄΅࢖͍ͬͯͳ͍ͷͰɺ࢖Θͳ͍Α͏ʹ͢Δͱ͍ ͏ελϯεͰ΋໰୊ͳ͍͔ͱࢥ͍·͢ɻ 30
  31. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ %*ͷରԠ 31 ࢀর: https://laravel.com/docs/8.x/octane  ެ্ࣜͰ͸ҎԼͷΑ͏ʹॻ͖௚͢͜ͱΛਪ঑͍ͯ͠·͢ɻ

  32. Χʔωϧύϥϝʔλͷௐ੔ 32

  33. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ Χʔωϧύϥϝʔλͷௐ੔  1)1͕Πϕϯτϧʔϓͦͷ΋ͷͰ͋ΔͨΊɺ։͘ϑΝΠϧ͕ 
 ඞવͱଟ͘ͳΔͨΊɺVMJNJU΍TZTDUMͷมߋ͕ඞਢʹͳΓ· ͢ɻ

     IUUQTXJLJTXPPMFDPNPUIFSTZTDUM 33
  34. 4XPPMFͷઃఆνϡʔχϯά 34

  35. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ 4XPPMFͷઃఆνϡʔχϯά  4XPPMFͷઃఆνϡʔχϯά΋"QBDIF΍/(*/9Ͱ͖ͯͨ͠Α͏ͳ νϡʔχϯά͕ඞཁʹͳΓ·͢ɻ  ྫ͑͹ͭͷϓϩηε͋ͨΓͰ࢖༻Ͱ͖Δίϧʔνϯͷ্ݶͰ͋ͬͨ

    ΓɺϦΫΤετͷѹॖ཰ H[JQDPNQSFTTJPO ͳͲઃఆ͕ՄೳͰ͢ɻ  ಛʹʮԿճϦΫΤετ͕ߦΘΕͨΒϫʔΧʔΛ࠶ىಈ͢Δ͔ʯͱ͍͏ ઃఆʢNBY@SFRVFTUʣ͸ɺϑΝΠϧͷΦʔϓϯ਺΍ϝϞϦ࢖༻཰ʹ΋ Өڹ͢ΔͨΊඞਢͰ͢ɻ 35
  36. ϝϞϦϦʔΫରࡦ 36

  37. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ϝϞϦϦʔΫରࡦ  1)1͕ৗʹىಈ͍ͯ͠ΔͨΊɺ੩తϑΟʔϧυʹ஋Λ૿΍ͯ͠ ͍͘Α͏ͳίʔυ͕͋Δ৔߹ɺϝϞϦϦʔΫ͕ى͜Γ͑·͢ɻ 
 ྫ͑͹ҎԼͷΑ͏ͳίʔυͰ͢ɻ

    37
  38. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ϝϞϦϦʔΫରࡦ  ͜ͷΑ͏ͳ৔߹ANFNPSZ-FBL7BMVFTA͕ແݶʹ૿͍͖͑ͯ· ͢ɻ  ͦͷͨΊɺͲ͔͜ͷλΠϛϯάͰANFNPSZ-FBL7BMVFTAΛۭʹ

    ͯɺղ์͢ΔΑ͏ͳॲཧ͕ඞཁʹͳΓ·͢ɻ  ΋ͪΖΜ͜͏͍͏༻్Ҏ֎Ͱ΋ى͜ΓಘΔͷͰɺଞݴޠಉ༷ɺৗ ʹม਺͕ϝϞϦ͔Βղ์͞ΕΔ͔Ͳ͏͔Λࢥྀ͢Δඞཁ͕͋Γ· ͢ɻ๨ΕΔͳVOTFUɻ 38
  39. ͦͷଞ 39

  40. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ͦͷଞ  ࣮͸-BSBWFM0DUBOFͰ͸FOBCMF@DPSPVUJOFGBMTF ˞ ͱͳͬ ͍ͯΔͨΊ4XPPMFඋ͑෇͚ͷDPSPVUJOFΛ࢖͏͜ͱ͕Ͱ͖·ͤ

    Μɻ  ୅ΘΓʹ0DUBOFDPODVSSFOUMZ͕༻ҙ͞Ε͍ͯ·͢ɻ  FOBCMF@DPSPVUJOFΛ༗ޮʹ͢Δͱɺσʔλϕʔε΍,74ͳͲ ͷίωΫγϣϯϦιʔε͕յΕͨΓηογϣϯ͕ଞϦΫΤετ ͱೖΕସΘΔͳͲ͕ى͜Γ·͢ɻ 40 ࢀর: https://github.com/laravel/octane/blob/64a1c3c2ac191581dd73b486463e707f56984e6b/src/Commands/StartSwooleCommand.php#L124
  41. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ͦͷଞ  YEFCVHຊମ͕ೖΕΒΕͳ͍  ୅ΘΓʹTEFCVHͱ͍͏ͷ͕͋Δ͕BSDIJWFEʹͳ͍ͬͯ ΔɻͪͳΈʹ1)1ͩͬͨΒಈ͕͘Ҏ্͸ಈ͔ͳ

    ͍ɻ  TXPPMFZBTEͱ͍͏ͷΛೖΕΔඞཁ͕͋Δ  ΊͪΌͪ͘Ό஗͘ͳΔ 41
  42. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ͦͷଞ  /FXSFMJD"1.͕ೖΕΒΕͳ͍  ೖΕΒΕͳ͍ͱ͍͏ΑΓ΋4XPPMFͰ΄͔ͬͨ͠ύϑΥʔϚ ϯε͕ಘΒΕͳ͘ͳΔ

     %BUBEPH"1.ͳͲ΋ಉ༷ɻཁ͸طଘͷؔ਺ΛϑοΫ͢ΔΑ ͏ͳαʔυύʔςΟͷಋೖ͕೉͍͠ɻͦͷͨΊɺ 
 ฐࣾ͸%BUBEPH"HFOUͷΈΛ࢖༻͍ͯ͠·͢ɻ 42
  43. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ͦͷଞ  /FXSFMJD"1.͕ೖΕΒΕͳ͍  ࢒೦ͳ͕Βฐࣾ͸ݹయతͳํ๏ͰɺϘτϧωοΫʹͳ͍ͬͯ ΔՕॴΛվम͢ΔελΠϧʹͳ͍ͬͯ·͢ɻ

     TNJDSPUJNF USVF ͱWBS@EVNQ NJDSPUJNF USVF  T Ͱғ͏΍ͭͰ͢ɻ 43
  44. @2020 Torana, Inc. ϓϩμΫγϣϯ؀ڥ·ͰͷಓͷΓ ͦͷଞ  4XPPMFWܥͱWܥͰେ෯ͳࠩҟ͕͋Δ  WܥͩͱD63-Λ࢖͏ϥΠϒϥϦʢBXTTEL (V[[MFͳͲʣ͕͏·͘ಈ࡞͠·ͤ

    Μɻ  ٯʹWͰ1)1Ҏ߱ʢ1)1ؚΉʣͩͱಈ࡞͠·ͤΜɻ1)1ͩͱ ಈ࡞Λ͢Δͱ͍ͬͨෆ۩߹͕͋Γ·͢ɻ  ฐࣾͰ͸1)1 4XPPMFWܥΛ࢖༻͍ͯ͠·͢ɻ  ઌ೔मਖ਼͞Εͯɺ1)1 4XPPMFWܥΛ࢖༻͢ΔΑ͏ʹ͠·ͨ͠ɻ 
 ʢࠓظதʹ1)1΁Ҡߦ༧ఆʣ 44
  45. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ 45

  46. @2020 Torana, Inc. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ  ฐࣾ͸-BSBWFM0DUBOFͰ͸ͳ͘MBSBWFMTXPPMFΛ࢖༻͍ͯ͠·͢ɻ ʢ։ൃ౰ॳɺ-BSBWFM0DUBOF͸ੈʹଘࡏ͍ͯ͠ͳ͔ͬͨͨΊʣ  ฐࣾͰ͸MBSBWFMTXPPMFͰίϧʔνϯΛ࢖͑ΔΑ͏ʹɺ.Z42-΍ 3FEJTͳͲͷυϥΠόʔΛࣗ࡞͍ͯ͠·͢

    46  ৄ͘͠͸IUUQTTQFBLFSEFDLDPN NFNPSZTXPPMFUPMBSBWFM TXPPMFXPZPOH JUBIBJQBIVPNBOTVBQVSJLFTJZPOHPV [IV
  47. @2020 Torana, Inc. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ  ϓϩμΫγϣϯϩʔϯν·Ͱʹ༷ʑͳ໰୊͕͋ͬͨ  FOBCMF@DPSPVUJOFΛ༗ޮʹͨͨ͠ΊɺଞͷϢʔβʔͷηογϣϯʹ มΘΔʢηϧϑηογϣϯϋΠδϟοΫʣ 

    5PPNBOZPQFO fi MFT  ଘࡏ͍ͯ͠ΔͷʹϑΝΠϧ͕։͚ͳ͍ͷͰA$MBTT999OPU GPVOEA͕ग़Δ 47
  48. @2020 Torana, Inc. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ  ϓϩμΫγϣϯϩʔϯν·Ͱʹ༷ʑͳ໰୊͕͋ͬͨ  ϦΫΤετϘσΟΛૹͬͨ͸ͣͳͷʹɺۭʹͳΔ৔߹ͱͳΒͳ͍৔߹ ͕͋ΓɺௐࠪΛ͢ΔͱଞͷϦΫΤετͷϦΫΤετϘσΟΛࢀরͯ͠ ͍ͨ

    48
  49. @2020 Torana, Inc. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ  ϓϩμΫγϣϯϩʔϯν·Ͱʹ༷ʑͳ໰୊͕͋ͬͨ  D63-ͰσʔλΛऔಘ͍ͯ͠ΔͱɺଞͷϦΫΤετͰ΋ͦͷӨڹΛϞ ϩʹड͚ͯD63-͕ऴΘΔ·Ͱ଴ػঢ়ଶʹͳΔ 

    ฐࣾͰ͸3FEJTϩάΠϯηογϣϯͱ௨ৗͷΩϟογϡͰECΛ෼ ཭͍ͯ͠Δ͕ɺଞͷϦΫΤετͷECׂΓৼΓͷม਺Λࢀরͯ͠͠· ͏ෆ۩߹͕͋Γɺຊ൪؀ڥͰͬͪ͝Όʹͳͬͯ͠·ͬͨ 49
  50. @2020 Torana, Inc. ࣮ࡍʹϓϩμΫγϣϯͰӡ༻ͯ͠Έͯ  ݱࡏ͸ϩʔϯνޙϲ݄ܦա  ฐࣾࣾ಺γεςϜͰ݄౰ͨΓສϦΫΤετΛड͚͓ͯΓɺͦͷ ͏ͪ෼ؒճ΄Ͳͷॻ͖ࠐΈ͕ൃੜ͍ͯ͠·͕͢ɺΞϓϦέʔγϣ ϯఀࢭͳͲτϥϒϧͳ͘ΦϖϨʔγϣϯ͕ճ͍ͬͯ·͢ɻ

     ͭ·ΓɺϓϩμΫγϣϯͰ΋໰୊ͳ͘࢖͑Δͱ͍͏͜ͱͰ͢ɻ 50
  51. 5)"/,:06 '03 :063-*45&/*/( 51

  52. 8&"3&)*3*/( 52