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

BASE の PHP アプリ アップデートについて

BASE の PHP アプリ アップデートについて

2018/03/14 ヒカ☆ラボ 【ベンチャー企業のリアルなPHP事情】 で発表した資料です。

tenkoma (Koji Tanaka)

March 20, 2018
Tweet

More Decks by tenkoma (Koji Tanaka)

Other Decks in Programming

Transcript

  1. #"4&ͷ1)1ΞϓϦ
    Ξοϓσʔτʹ͍ͭͯ
    ,PKJ5BOBLB !UFOLPNB

    #"4&גࣜձࣾ
    ώΧˑϥϘ
    ϕϯνϟʔاۀͷϦΞϧͳ1)1ࣄ৘

    View full-size slide

  2. ࣗݾ঺հ
    w ,PKJ5BOBLB!UFOLPNB
    w ೥ੜࣛࣇౡग़਎
    w #MPHIUUQTUFOLPNBIBUFOBCMPHDPN
    w (JU)VCIUUQTHJUIVCDPNUFOLPNB
    w #"4&גࣜձࣾʹαʔόʔαΠυΤϯδχΞͱ
    ͯ͠ೖࣾ

    View full-size slide

  3. ໨࣍
    #"4&ʹ͍ͭͯʗ1)1ɾ$BLF1)1ͷར༻
    ͳͥ1)1$BLF1)1Ξοϓσʔτ͢Δͷ͔
    աڈͷऔΓ૊Έ
    ΞοϓσʔτʹऔΓ૊ΉνʔϜͱઓུ

    View full-size slide

  4. $BLFΞϓϦʹݶΒͣ
    ௕͘։ൃɾӡ༻͍ͯ͠Δ

    1)1ΞϓϦΛΞοϓσʔτ

    ͢Δͱ͖ͷࢀߟʹͳΕ͹

    View full-size slide

  5. #"4&ʹ͍ͭͯ
    1)1ɾ$BLF1)1ͷར༻

    View full-size slide

  6. #"4&ʹ͍ͭͯ
    w ೥໨ ೥ϦϦʔε

    w ωοτγϣοϓ࡞੒αʔϏε
    ʮ#"4&ʯ
    w ʮ͓฼͞Μ΋࢖͑Δʯ͕ί
    ϯηϓτ
    w γϣοϐϯάΞϓϦʮ#"4&ʯ
    w ສϢʔβʔ͕ར༻͢Δ
    εϚʔτϑΥϯΞϓϦ

    View full-size slide

  7. #"4&ʹ͓͚Δ
    1)1$BLF1)1
    ଟ͘ͷαʔϏεͰ1)1ͱ$BLF1)1YΛར༻
    w ωοτγϣοϓ࡞੒αʔϏε#"4&
    w γϣοϐϯάΞϓϦʮ#"4&ʯ༻ͷ"1*
    w ؅ཧը໘ʢόοΫΦϑΟεʣ
    w όονॲཧ

    View full-size slide

  8. ͳͥ1)1$BLF1)1
    ΛΞοϓσʔτ͢Δͷ͔

    View full-size slide

  9. ͳͥΞοϓσʔτ͢Δͷ͔
    w ೥౰࣌Ͱ1)1ͩͬͨ

    ެࣜͰ͸೥ʹαϙʔτऴྃ

    $FOU04ύοέʔδʗηΩϡϦςΟमਖ਼͸͞ΕΔ

    w $BLF1)1΋গ͠ݹͯ͘αʔϏε͝ͱʹόʔδϣϯ͕ҟͳΔɻ

    ܥ࠷৽ͷʹ͠ͳ͍ͱෆ۩߹मਖ਼͞Εͳ͍
    w 1)1ʹ͢Δͱ଎͘ͳΔ

    ϞόΠϧΞϓϦͷόοΫΤϯυ͕ຊ౰ʹ஗͔ͬͨ

    w 1)1ͷ৽͍͠ػೳɾߏจ͕࢖͑ͳͯ͘ΤϯδχΞͷϞνϕʔ
    γϣϯ͕Լ͕Δ

    View full-size slide

  10. ηΩϡϦςΟ
    εϐʔυ
    ΤϯδχΞͷϞνϕʔγϣϯ

    View full-size slide

  11. աڈͷऔΓ૊Έ ࣦഊ

    w ೥ʹ$BLF1)1ΛΞοϓσʔτ
    w ೔ޙʹෆ۩߹͕ൃ֮ͯ͠ݩͷόʔδϣϯʹ໭ͨ͠
    w ಛఆ৚݅Ͱ஫จৄࡉϖʔδ͕දࣔͰ͖ͳ͍
    w ͋Δؔ਺͕ྫ֎Λ౤͛Δ࢓༷ʹมΘΓɺಈ࡞ʹӨڹͨ͠
    w ΞοϓσʔτͷऔΓ૊Έ͕Ұ୴ετοϓ

    View full-size slide

  12. աڈͷऔΓ૊Έ ࣦഊ

    w ʙ೥ʹ਺ϲ݄͔͚ͯόʔδϣϯؒͷࠩ෼Λ͢
    ΂ͯௐ΂ͯӨڹ͕͋Δͱ͜Ζɾվम͕ඞཁͳͱ͜ΖΛυ
    ΩϡϝϯτԽ
    w ʜ͕ɺΞοϓσʔτʹ౿Έ੾Εͣ
    w ,1*ୡ੒΍αʔϏεվળ࠷༏ઌͰΞοϓσʔτʹ·Ͱे෼
    औΓ૊Ίͳ͍ঢ়گ

    View full-size slide

  13. ΞοϓσʔτʹऔΓ૊Ή
    νʔϜͱઓུ

    View full-size slide

  14. 1)1$BLF1)1
    ΞοϓσʔτʹऔΓ૊ΉνʔϜ
    w Ϛωʔδϟʔ໊
    w Ξοϓσʔτઐ೚ΤϯδχΞ໊
    w Ξοϓσʔτ݉೚ΤϯδχΞ໊

    ֤։ൃηΫγϣϯ͔Β໊

    View full-size slide

  15. ݱࡏͷνʔϜ ʙ

    ϓϥοτϑΥʔϜ
    ܾࡁ
    ϞόΠϧΞϓϦόοΫΤϯυ
    43&

    View full-size slide

  16. ౰໘ͷ໨ඪ
    #"4&ͷ8FCΞϓϦέʔγϣϯΛಈ͔͢
    ؀ڥΛ1)1$BLF1)1ʹ͢Δ

    View full-size slide

  17. େ·͔ͳྲྀΕ
    ࡞ۀ͕͠΍͍͢Α͏%PDLFSͰ։ൃ؀ڥΛ࡞੒
    $*Λಋೖͯ͠ɺෆ଍͍ͯ͠ΔςετίʔυΛ௥Ճ
    $PNQPTFSಋೖ
    1)1ˠ΁
    $BLF1)1΁
    1)1ˠ΁

    View full-size slide

  18. %PDLFS։ൃ؀ڥ

    View full-size slide

  19. %PDLFS։ൃ؀ڥ
    w ڞ༻ͷ։ൃ༻αʔόʹ֤ελοϑ༻ͷ؀ڥΛ࡞ͬͯ࡞ۀͯ͠
    ͍ͨ ؀ڥߏஙखॱ΋ൿ఻ͷλϨԽ͍ͯͨ͠

    w ҟͳΔ1)1ͷόʔδϣϯͰಈ࡞ݕূΛ͠ͳ͕Β࡞ۀΛਐΊ
    ΔͷͰɺؾܰʹ੾Γସ͑ΒΕΔ%PDLFS؀ڥ͕͋Δͱָ
    w ϢχοτςετͳͲϚγϯෛՙ͕ߴ͘ͳΔॲཧΛ࣮ߦ͠΍
    ͍͢
    w ΧελϜͨ͠ΠϝʔδΛ"84&$3ʹϗετEPDLFS
    DPNQPTFͰߏ੒ɾૢ࡞

    View full-size slide

  20. %PDLFS։ൃ؀ڥಋೖޙ
    w ػೳ௥ՃͳͲͷ։ൃ΋͠΍͘͢ͳͬͨ
    w "QBDIFͳͲϛυϧ΢ΣΞͷઃఆมߋ͕؆୯ʹͳͬͨ
    w σΟεΫΞΫηε͕஗͍͕ڐ༰
    w ֎෦"1*࿈ܞɺσʔλϕʔεεΩʔϚͷ൓өͳͲ՝୊͸࢒ͬ
    ͍ͯΔ

    View full-size slide

  21. $* ܧଓతΠϯςάϨʔγϣϯ

    ͷಋೖ

    View full-size slide

  22. $* ܧଓతΠϯςάϨʔγϣϯ

    w ιʔείʔυΛมߋͨ͠ͱ͖ʹΞϓϦέʔγϣϯશମ͕յ
    Εͯͳ͍͔νΣοΫ͢ΔαʔϏε
    w $JSDMF$*Λಋೖ
    w (JU)VCʹQVTIˠςετΛࣗಈ࣮ߦ

    View full-size slide

  23. ΞοϓσʔτͷͨΊʹςετΛ௥Ճ
    w શ෦ͷΫϥεɾϝιουʹςετΛॻ͘ͱ޻਺͕͔͔Γ͢
    ͗Δ
    w ࢓༷Խςετ $IBSBDUFSJ[BUJPO5FTU
    Λॻ͘
    w ݱࡏͷΞϓϦέʔγϣϯΛ࣮ߦͤ͞ɺ݁ՌΛਖ਼͍͠΋
    ͷͱͯ͠ݕূ͢Δ ݱࡏͷΞϓϦέʔγϣϯΛ࢓༷Խ͢
    Δςετ

    View full-size slide

  24. w γΣϧͷςετ͕υΩϡϝϯτʹॻ͍ͯͳ͍ˠίΞͷς
    ετίʔυΛಡΜͰਅࣅΛ͢Δ
    ΞοϓσʔτͷͨΊʹςετΛ௥Ճ

    View full-size slide

  25. w ΑΓଟ͘ͷਖ਼ৗܥίʔυ͕ςετ͞ΕΔ͜ͱΛॏࢹɻΧό
    ϨοδϨϙʔτΛݟͳ͕Β࡞ۀ
    w BQQ$POTPMFDBLFUFTUBQQ"MM5FTUTŠDPWFSBHF
    IUNMSFQPSUT
    ΞοϓσʔτͷͨΊʹςετΛ௥Ճ

    View full-size slide

  26. ࢀߟจݙ࢓༷Խςετ
    w ʮϨΨγʔίʔυվળΨΠυʯͷεεϝ

    ୈճɿίʔυΛཧղ͢ΔͨΊɺ࢓༷ԽςετͰจॻԽ͢
    Δ
    w IUUQTDPEF[JOFKQBSUJDMFEFUBJM
    w .JDIBFM'FBUIFSTஶ΢ϧγεςϜζגࣜձࣾ؂༁ʰϨ
    ΨγʔίʔυվળΨΠυʱᠳӭࣾ

    View full-size slide

  27. $*ɾςετಋೖޙ
    w Ϣχοτςετ͕ॻ͔Ε͍ͯΔ෦෼͕յΕͯͳ͍͔͙͢Θ
    ͔ΔΑ͏ʹͳͬͨ
    w ػೳ௥Ճɾվमͷͱ͖ʹςετ΋Ұॹʹίϛοτ͞ΕΔ͜
    ͱ͕૿͑ͨ
    w ίϯςφ਺ ଟ͍΄ͲϏϧυΛಉ࣌ʹ࣮ߦͰ͖Δ
    ͕

    ݸˠݸʹ૿΍ͯ͠΋Βͬͨ

    View full-size slide

  28. $PNQPTFSಋೖ

    View full-size slide

  29. DPNQPTFSಋೖ
    w 1)1ϥΠϒϥϦͷґଘ؅ཧɾηοτΞοϓπʔϧ
    w $BLF1)1͕$PNQPTFSલఏͰ͸ͳ͔ͬͨ͜ͱ΋͋Γ

    ೥·Ͱಋೖͯ͠ͳ͔ͬͨ
    w ݸҎ্ͷ$BLF1)1ϓϥάΠϯ͕ݸผͷ(JU)VCϦϙδ
    τϦʹ͋ͬͨɻϓϥάΠϯ΋NBTUFSͷ࠷৽͔͠σϓϩΠ
    Ͱ͖ͳ͔ͬͨɻ
    w ։ൃ؀ڥͷ४උɾߋ৽ʹ΋͕͔͔࣌ؒΔ

    View full-size slide

  30. QIQDPOͰ঺հ
    IUUQTHPPHME$$HQ

    View full-size slide

  31. $PNQPTFSಋೖ
    w ϥΠϒϥϦΛ࡟আ͔ͯ͠ΒDPNQPTFSSFRVJSFͰͭͣ
    ͭ௥Ճ

    View full-size slide

  32. $PNQPTFSಋೖ
    w ґଘϥΠϒϥϦͷҠߦ׬ྃ
    w ࣾ಺Ͱ؅ཧ͍ͯ͠ΔϓϥάΠϯΛόʔδϣϯΛݻఆͯ͠σ
    ϓϩΠͰ͖ΔΑ͏ʹͳͬͨ
    w HJUQVMMDPNQPTFSJOTUBMM

    View full-size slide

  33. 1)1$BLF1)1
    Ξοϓσʔτ

    View full-size slide

  34. 1)1ˠ
    w 1)1$PNQBUJCJMJUZ$PEJOH4UBOEBSEGPS1)1
    $PEF4OJ⒎FSͰޓ׵ੑνΣοΫ
    w NFNDBDIF֦ு͕1)1Ͱ࡟আ͞ΕΔͷͰ
    NFNDBDIFE֦ுΛ࢖͏Α͏มߋ
    w ϦϦʔε࣌ʹ1)1ύοέʔδΛ$FOU04όϯυϧˠ
    SFNJϦϙδτϦ΁
    ઌिɺϢʔβʔ͕ར༻͢ΔαΠτ͸͢΂ͯ1)1Ҏ্ʹ

    View full-size slide

  35. 1)1ˠ
    w 1)1ͷॲཧ͕࣌ؒ໿ׂݮʹ /FX3FMJD

    w ͨͩ͠ɺ"QBDIF $FOU04 &$ΠϯελϯελΠϓ΋ಉ࣌ʹมߋ͍ͯ͠Δ
    ͷͰɺ1)1ΞοϓσʔτࣗମͷޮՌ͕ͲΕ΄Ͳ͔͸ෆ໌

    View full-size slide

  36. $BLF1)1Y΁
    w ҠߦΨΠυʹ໨Λ௨͢

    IUUQTCPPLDBLFQIQPSHKBBQQFOEJDFTIUNM
    w ʮDPNQPTFSSFRVJSFDBLFQIQDBLFQIQzzʯ
    w $BLF1)1·Ͱʹ1)1ରԠͰ0CKFDU4USJOHΫϥ
    ε͕ͦΕͧΕ$BLF0CKFDU$BLF5FYUʹมߋ

    1)1ͷ༧໿ޠʹͳͬͨͨΊ

    w ׂ͘Β͍ͷαʔϏεͰҠߦࡁΈ

    View full-size slide

  37. 1)1ˠ
    w QIQDDͰ΋ޓ׵ੑνΣοΫ
    w ҠߦΨΠυʹҰ౓໨Λ௨͢

    IUUQQIQOFUNBOVBMKBNJHSBUJPOQIQ
    w $BLFݻ༗ͷมߋϝιουγάωνϟͷݫີԽͰඞཁʹͳΔमਖ਼
    w $BLF1)1ͷCFGPSF7BMJEBUF BGUFS4BWFγάωνϟมߋʹର
    Ԡ͢Δ
    w ͪ͜Β΋ׂͷαʔϏεͰҠߦࡁΈ

    View full-size slide

  38. ଍ฒΈἧ͑ͳ͕Βॱ൪ʹ
    ΍ͬͨΘ͚Ͱ͸ͳ͍
    w 2ͱΓ͋͑ͣ$JSDMF$*ಋೖɺϞόΠϧόοΫΤϯυͷςετΛ$*Ͱ࣮ߦ
    w ج൫νʔϜ 1)1$BLF1)1όʔδϣϯΞοϓਪਐ͢ΔνʔϜ
    Λ݁੒
    w ʙ%PDLFS։ൃ؀ڥߏங
    w ࠷ॳͷΞϓϦ͕1)1$BLF1)1ʹͳΔ
    w ϞόΠϧΞϓϦͷόοΫΤϯυ͕1)1$BLF1)1ʹ
    w શΞϓϦ͕1)1Ҏ্ʹ
    ن໛ͷখ͍͞΋ͷɺ΍Γ΍͍͢΋ͷ͔Β׬ྃͤ͞Δ
    ޙͷܭըཱ͕ͯ΍͘͢ͳΓɺϞνϕʔγϣϯ΋্͕Δ

    View full-size slide

  39. $BLF1)1ίΞʹ΋ෆ۩߹Λݟ͚ͭΔ
    ςετػೳ 1)1ରԠΛϓϧϦΫΤετ

    View full-size slide

  40. ·ͱΊ
    w ίʔυϕʔε͕খن໛ͳαʔϏε͔ΒΞοϓσʔτ
    w ࣄલʹҠߦΨΠυʹ໨Λ௨ͯ͠࡞ۀ࣌ͷϋϚΓΛݮΒ͢
    w ࢓༷Խςετ$*Ͱಈ࡞Λอূ͢Δ
    w ςετจԽͷৢ੒͸ͳ͔ͳ͔େม
    w ΍Γ͖Δؾ࣋ͪ

    View full-size slide

  41. &$ͷະདྷΛҰॹʹͭ͘Δ
    ΤϯδχΞΛืू͍ͯ͠·͢
    KPCTCJODKQ

    View full-size slide