Slide 1

Slide 1 text

(P੡αʔόʔΛ։ൃɾӡ༻ͯ͠ ʙϐΫγϒ৽޿ࠂ഑৴αʔόʔʙ ϐΫγϒΠϯϑϥDBUBUTVZ

Slide 2

Slide 2 text

ࣗݾ঺հ w DBUBUTVZͱ͍͏*%ͰΠϯλʔωοτ্Ͱ׆ಈ w ΧλπΠͱ͔ͬͯݺ͹Ε͍ͯΔ w ʹେֶΛଔۀޙʹϐΫγϒೖࣾ w ޿ࠂαʔόʔͷΠϯϑϥ୲౰ʹ w *46$0/ຊઓ४༏উ w (PΛ࢖͍·ͨ͠ w (P͸ࠓճͷ޿ࠂαʔόʔͰॳΊͯ৮ͬͨϨϕϧ

Slide 3

Slide 3 text

৽޿ࠂαʔόʔ։ൃϝϯόʔʢਓʣ CBTI$ ؅ཧɾ഑৴αʔόʔϓϩτλΠϓ࡞੒ ؅ཧɾ഑৴αʔόʔ։ൃ୲౰ QJYJWͷ։ൃ΋૯ׅ 3BJMTΤϯδχΞ ؅ཧαʔόʔ։ൃ୲౰ DBUBUTVZʢࣗ෼ʣ ؅ཧαʔόʔΠϯϑϥ୲౰ ഑৴αʔόʔ։ൃɾΠϯϑϥ୲౰ ؅ཧαʔόʔͷ+4΋ͨ·ʹॻ͍ͯΔ

Slide 4

Slide 4 text

%/4 UZQFUBJM ޿ࠂ഑৴αʔόʔ ؅ཧαʔόʔ .Z42- qVFOUE qVFOUE /(*/9 ը૾ $"$)& LTLMPH NFNDBDIFE ޿ࠂσʔλ "QQMJDBUJPO (PMBOH දࣔ਺ ΫϦοΫ਺ 6/*9υϝΠϯιέοτ $JSDVT ޿ࠂσʔλ ܭଌ݁Ռ ϥ΢ϯυϩϏϯ 6/*9υϝΠϯιέοτ ϑΝΠϧσΟεΫϦϓλ

Slide 5

Slide 5 text

഑৴αʔόʔઃܭ w ܰྔͳ,74ʹ޿ࠂσʔλΛอଘ͓͍ͯͯ͠ϦΫΤετʹԠͯͦ͡ͷσʔλΛฦ ͢ΞϓϦέʔγϣϯ w ը૾σʔλ΋ಉ༷ʹ഑৴͢Δ͕Ωϟογϡ͓͖ͯ͠ը૾ੜ੒͕ෳ਺ճߦΘΕͳ ͍Α͏ʹ͢Δ w ը૾σʔλࣗମͷදࣔ਺ΛܭଌΛ͢Δ͜ͱ͸ͳ͍ w ը૾σʔλΛ౎౓ੜ੒ͨ͠Β͕͔͔࣌ؒΓ͗͢Δ w දࣔ΍ΫϦοΫ͕͞ΕΕ͹ϑΝΠϧʹॻ͖ࠐΉʢLTLMPHʣ w qVFOUEͰLTLMPHΛ؂ࢹͯ͠ܭଌ݁ՌΛ؅ཧαʔόʔͷ.Z42-ʹॻ͖ࠐΉ w άϩʔόϧ*1ͰϢʔβʔͷϦΫΤετΛ௚઀ड͚Δ͜ͱͰߴ଎ʹϨεϙϯεฦ٫

Slide 6

Slide 6 text

ϑϨʔϜϫʔΫ w ϑϨʔϜϫʔΫ͸࢖ΘͣOFUIUUQΛੜͰ࢖͏ w ΠϯλʔϑΣΠε͸े෼෼͔Γ΍͍͢ w ޿ࠂ഑৴ͳͷͰςϯϓϨʔτΤϯδϯͳͲ΋ෆཁͰϧʔ ςΟϯά΋(&5ͷΈͰ୯७ w ௥͏ίʔυྔ΋গͳָͯ͘ w ࡞ΔϓϩμΫτʹ΋ΑΔͩΖ͏͕ɼࠓճ͸ϑϨʔϜϫʔ ΫΛ࢖Θͳ͔ͬͨͷ͸େ੒ޭͩͬͨͱࢥ͏

Slide 7

Slide 7 text

/HJOYͱ(PΛܨ͙ w ϢʔβʔͷϦΫΤετΛ௚઀(P͕ड͚ΔͷͰ͸ͳ͘/HJOYͰड͚͍ͨ w ϢʔβʔͷϦΫΤετΛόοϑΝϦϯάͯ͘͠ΕΔͷͰίωΫγϣϯͷอ ࣋ͳͲ໘౗ͳ͜ͱΛߟ͑Δඞཁ͕ͳ͘ͳΔ w (PͰ͸௿஗ԆͰϨεϙϯεΛฦ͢͜ͱ͚ͩΛߟ͑Ε͹Α͍ w ΞΫηε੍ޚͳͲ΋؆୯ w ΩϟογϡͷػߏͳͲ͕؆୯ʹ࢖͑Δ w (PͰUDQΛMJTUFOͯ͠ىಈͨ͠αʔόʔʹରͯ͠QSPYZ@QBTT͢Δͱ஗͗͢Δ w 6/*9EPNBJOTPDLFUΛMJTUFOͯ͠αʔόʔΛىಈ͢Δඞཁ͕͋Δ

Slide 8

Slide 8 text

6/*9EPNBJOTPDLFU w ϓϩηεؒ௨৴ w ಉҰϚγϯ্ͳΒ਌ࢠؔ܎ͳͲ͕ແͯ͘΋௨৴͕Ͱ͖Δ w UDQͳͲΑΓ΋҆ఆɾߴ଎ʹಈ͘ w NFNDBDIFEͱͷ௨৴ʹ΋࢖༻͢Δͱߴ଎͔ͭ҆ఆతʹಈ࡞ͤ͞Δ͜ͱ͕ Ͱ͖Δ w ΋ͪΖΜ࢖༻͍ͯ͠Δ w ϐΫγϒࣾ಺Ͱ͸গͳ͍ϦιʔεͰେྔͷΞΫηεΛߴ଎ʹ͞͹ͨ͘Ίʹࢸ Δͱ͜ΖͰ࠾༻͞Ε͍ͯΔ w (Pͷ৔߹OFU-JTUFO VOJY QBUI ͷΑ͏ʹ͢Ε͹Α͍

Slide 9

Slide 9 text

IPUEFQMPZ w %/4ϥ΢ϯυϩϏϯͷͨΊִ཭͕ࠔ೉ w ޿ࠂαʔόʔ͸"84Ͱ͸ͳ͍ͷͰ&-#͸࢖͑ͳ͍ w QJYJWपลαʔϏε͸ίετ໘͔Β"84Λ࢖Θͳ͍ w ௒େྔֆഅɾQJYJWࣣ༦୹࡭ࡇͳͲظؒݶఆͷ΋ͷʹ͸"84͸࢖ ΘΕ͍ͯΔ w ݱࡏͷ޿ࠂۀքͰ͸"84Λ࢖͏͜ͱ͕ଟ͍ͷͰ&-#Λ࢖ͬͯ IPUEFQMPZΛ࣮ݱ͍ͯ͠Δձ͕ࣾଟ͍ w ޿ࠂαʔόʔͳͷͰσϓϩΠ࣌ʹμ΢ϯλΠϜ͕ൃੜͯ͠͸͍͚ͳ͍

Slide 10

Slide 10 text

$JSDVT w .P[JMMB͕࡞ͬͨ1ZUIPO੡ͷϓϩηε؅ཧπʔϧ w $JSDVTࣗମ͕ιέοτϑΝΠϧΛ࣋ͬͯɼΞϓϦέʔγϣϯ͸ϑΝΠϧσΟεΫϦϓ λΛ-JTUFOͤͯ͞ىಈ͢Δ w σϓϩΠ࣌ʹ৽͍͠ϓϩηε͕ىಈ͔ͯ͠Βݹ͍ϓϩηεΛLJMM͢Δ w μ΢ϯλΠϜͳ͠ͰΞϓϦέʔγϣϯΛೖΕସ͑Δ͜ͱ͕Ͱ͖Δ w ઃఆϑΝΠϧΛॻ͘ͱ͍͍ײ͡ʹىಈͯ͘͠ΕΔ w FYBNQMF͕๛෋ͳͷͰׂͱॻ͚Δ w (PଆͰ͸ϩά͸ඪ४ग़ྗͱඪ४Τϥʔग़ྗʹॻ͚ͩ͘Ͱ$JSDVT͕ϩάϑΝΠϧԽͱϩ άϩʔςʔτΛશͯ୲͏ w (Pଆͷ։ൃίετΛԼ͛Δ w DJSDVTDUMͱ͍͏ίϚϯυπʔϧܦ༝Ͱૢ࡞͢Δ

Slide 11

Slide 11 text

socket TPDLFU࡞੒ ϑΝΠϧ σΟεΫϦϓλ FYFD socket ϑΝΠϧ σΟεΫϦϓλ ϓϩηε؂ࢹ DJSDVT͸ϓϩηε؂ࢹ͚ͩ ͰϦΫΤετ͸ײ஌͠ͳ͍ BQQ͸ϑΝΠϧσΟεΫϦϓλΛ -JTUFO͢ΔαʔόʔͰ͋Δඞཁ͕͋Δ αʔόʔىಈ࣌ αʔόʔىಈޙ circus app circus app

Slide 12

Slide 12 text

circus socket ϑΝΠϧ σΟεΫϦϓλ app_old FYFD app_new ϓϩηε؂ࢹ αʔόʔϦϩʔυ αʔόʔϦϩʔυ BQQ@OFX͕ىಈ͢Δ·Ͱ଴ͭ BQQ@OFX͕ىಈͨ͠Β BQQ@PMEΛLJMM͢Δ circus socket ϑΝΠϧ σΟεΫϦϓλ app_old app_new ϓϩηε؂ࢹ LJMM

Slide 13

Slide 13 text

w qBHͰίϚϯυϥΠϯΦϓ γϣϯΛ౉ͤΔΑ͏ʹ w TZTDBMM͸(PͰϑϦʔζ͞ ΕΔͷͰ(PҎ߱͸࢖Θͳ ͍ํ͕ྑͦ͞͏ w OFU-JTUFOFSΛ༻ҙ͢Δͱ෼ ذ͕ͭͰࡁΉ w खݩͰͷ։ൃΛ͠ʹ͘͘͠ͳ ͍Α͏ʹUDQͰͷαʔόʔىಈ ΋αϙʔτͰ͖Δ

Slide 14

Slide 14 text

$JSDVT΁ϓϧϦΫ w $JSDVT͸(JU)VCͰ։ൃ͞Ε͍ͯΔ w %FCJBOͷJOJUEεΫϦϓτ͸$JSDVTࣗମͷϩάΛग़ྗ͠ͳ͔ͬͨ w ग़ྗͰ͖ΔΑ͏ʹมߋͯ͠ϓϧϦΫ΋ͯ͠ΈΔ w NFSHF͞Εͨ w ϐΫγϒͰ͸ࣾ಺Ͱ࢖༻͍ͯ͠ΔΦʔϓϯιʔεϓϩμΫτʹύο νΛૹΔͷ͸ਪ঑͞Ε͍ͯΔ w .P[JMMBͷϓϩηε؅ཧπʔϧDJSDVTʹϓϧϦΫͨ͠࿩DBUBUTVZ ͱ͸IUUQDBUBUTVZIBUFCMPKQFOUSZ

Slide 15

Slide 15 text

ΩϟογϡԽ w ΞΫηεͷ౓ʹNFNDBDIFEʹΞΫηεΛͨ͠Β஗্͍ʹ$16࢖༻཰΋্͕ͬͯ͠ ·ͬͨ w QQSPG͔Β͸NFNDBDIFE͕஗͍ͱ͍͏͜ͱ͕Α͘෼͔Βͳ͔ͬͨ w ඇಉظʹσʔλΛऔಘ͢ΔͷͰQQSPGͰ͸͏·͘ग़ͯ͜ͳ͍ w XBMGTUPQXBUDI w NFNDBDIFEͷऔಘ݁ՌΛΞϓϦέʔγϣϯଆͰΩϟογϡ͢Δ͜ͱʹ w ௕͗͢Δͱ޿ࠂσʔλͷ൓ө͕஗ΕΔ w QNZMVOEHPDBDIF w άϩʔόϧʹDBDIFͱ͍͏ม਺໊Λ࢖ͬͯ͠·͏ͷͰJNQPSU࣌ʹผͷ໊લΛ͚ͭ Δ͜ͱΛਪ঑

Slide 16

Slide 16 text

σϓϩΠ w ࣾ಺σϓϩΠπʔϧʹ৐͔ͬΔ w ϒϥ΢β͔Βద౰ʹΫϦοΫ͢ΔͱσϓϩΠαʔόʔ্ͰγΣϧεΫϦϓτ Λ࣮ߦͰ͖Δ w ࣾ಺ͷαʔϏε͸$BQJTUSBOP͔͜ͷσϓϩΠπʔϧ͕࢖ΘΕΔ͜ͱ͕ଟ͍ w qVFOUE͸)61γάφϧΛૹΔͱϦϩʔυͰ͖Δ w JOJUEεΫϦϓτΛࣗલͰ࡞੒ w (P͸ϥΠϒϥϦʹґଘ͠ͳ͍࣮ߦόΠφϦΛίϯύΠϧͰੜ੒ w σϓϩΠαʔόʔͰίϯύΠϧ֤ͯ͠αʔόʔ΁όΠφϦΛ഑෍

Slide 17

Slide 17 text

git clone go build rsync circusctl reload && fluentd reload deploy server application server

Slide 18

Slide 18 text

(PͷΞϓϦͷঢ়ଶΛݟ͍ͨ w SVOUJNF͕Ͳ͏ͳ͍ͬͯΔͷ͔ݟ͍ͨ w GVLBUBHPMBOHTUBUTBQJIBOEMFS w (PαʔόͷϞχλϦϯά2JJUBIUUQRJJUBDPNDVCJDEBJZBJUFNT CDBFBGC w ݱࡏ಺෦ʹऔΓࠐΜͰଞͷݟ͍ͨ৘ใΛݟΕΔΑ͏ʹͯ͠ศར"1*ʹ͍ͯ͠Δ w ΋ͪΖΜ/HJOYଆͰࣾ಺͔Β͔͠ݟΕͳ͍Α͏ʹ w σϓϩΠ͞ΕͨόʔδϣϯΛ஌Γ͍ͨ w HPCVJMEMEqBHT9NBJOBQQ7FSTJPOAHJUSFWMJTU)&"%OA w νϟωϧ͕٧·͍ͬͯͳ͍͔Έ͍ͨ w DBQ΍MFOͰঢ়ଶ͕ݟΕΔͷͰ+40/ܦ༝ͰݟΕΔΑ͏ʹ

Slide 19

Slide 19 text

(Pͷύοέʔδ؅ཧ w ݱࡏ(PNΛ࢖͍ͬͯΔ͕׆༻͸Ͱ͖͍ͯͳ͍ w ಺෦ϦϙδτϦͷ(JU-BCΛ͏·͘ѻ͑ͳ͍ w ίϛοτ*%Λશ෦ॻ͍ͯΒΕͳ͍ w ͦ΋ͦ΋ެࣜͰఏڙ͞Ε͍ͯͳ͍ͷͰͲ͏͠Α͏΋ͳ͍ؾ͕͢Δ w NFNDBDIFEͷFYQJSFΛར༻͢Δࡍʹ৽͠Ίͷ֎෦ϥΠϒϥϦΛ࢖͏ඞཁ͕ग़ͯ ͜ͷ໰୊͕࠶೩ w ֎෦ϥΠϒϥϦΛৗʹ࠷৽ͷ΋ͷΛ࢖͏Α͏ʹ͢Δͱ(JU)VC͕ࢮΜͩΒσϓϩ ΠͰ͖ͳ͍BOE֎෦ϥΠϒϥϦͷߋ৽ͰʰԿ΋ͯ͠ͳ͍ͷʹʱࢮ͵Մೳੑ͕ग़ Δ w ޿ࠂγεςϜͱͯ͠க໋త

Slide 20

Slide 20 text

(Pͷϓϩηε͕ίΞ͔͠࢖Θͳ͍ w NVOJOͷάϥϑ͕಄ΛଧͬͨΑ͏ʹͳΔ w ϨεϙϯελΠϜ͕ѱԽ͍ͯ͠ΔΘ͚Ͱ͸ͳ͍ w /HJOYͷΞΫηεϩάΛղੳͯ͠HSPXUIGPSFDBTUͰάϥϑʹ͍ͯ͠ΔͷͰϨεϙϯε λΠϜͷѱԽ͕֬ೝ͞Εͳ͔ͬͨ w (0."9130$4Λม͑ͯ΋μϝ w ͣͬͱʹ͍ͯͨ͠ͷΛ΍ʹ͕ͨ͠େ͖ͳҧ͍͸ݟΒΕͣ w ࠓ͸શ୆ʹ͍ͯ͠Δ w ΞΫηε͕ҰఆྔΛ௒͑Δͱ/HJOYͷΞΫηεϩάΛૹΔqVFOUEͱϩάΛॻ͖ࠐΉDJSDVT ͕$16Λ͔ͳΓᷰ͏Α͏ʹͳΔͷͰ(Pͷϓϩηεʹ$16Λ࢖ΘͤΔඞཁ͸ݱঢ়ͳ͍ w ͱΓ͋͑ͣ໰୊ͳ͍ͷͰ༷ࢠݟ

Slide 21

Slide 21 text

3VCZͷ໊࢒ w ഑৴αʔόʔΛ౰ॳ3VCZͰ࡞Ζ͏ͱͯ͠಴࠳ͨ͠ܦҢ͕͋Δ͕ݩʑ3VCZͰ࡞Ζ͏ͱͨ͠ ໊࢒͸ͨ͘͞Μ͋Δ w σΟϨΫτϦߏ੒͸ݩʑ$BQJTUSBOPͰσϓϩΠ͍ͯͨ࣌͠ͱม͍͑ͯͳ͍ w $BQJTUSBOPͱಉ͡Α͏ͳಈ͖Λ͢ΔγΣϧεΫϦϓτΛࣗલͰ࡞੒ w Ҡߦ࣌͸มߋ఺͕গͳ͍ํ͕Α͔ͬͨͨΊ͋Δఔ౓ϝϦοτ͕͕͋ͬͨɼ࠷దԽͷ༨஍ ͕͔ͳΓ͋ΔͷͰॻ͖௚͍ͨ͠ w STZOD͸ࠩ෼͚ͩɾෳ਺αʔόʔ΁ฒྻʹSTZODͳͲ w όονॲཧ͸3VCZͱ(Pͷ͕ͭ࢖ΘΕ͍ͯͨΓͱ౷Ұੑ͕ͳ͍ w .Z42-΁ͷॻ͖ࠐΈͳͲ͸(Pʹ͢ΔϝϦοτ΋ͳ͍ͷͰࠓޙͲͷఔ౓։ൃϦιʔεΛ ׂ͚Δ͔͸ෆ໌ w ਖ਼௚໰୊͕͋ΔΘ͚Ͱ͸ͳ͍ͷͰ௚͞ͳͦ͏

Slide 22

Slide 22 text

(Pͷਖ਼௚ͳײ૝ w +40/΍υϥΠόͳͲ͋·Γ଎͘ͳ͍΋ͷ΋͋Δ͕޻෉͢Ε͹͔ͳΓ଎͍αʔόʔ͕ ࡞ΕΔ w ݱঢ়ͷ഑৴αʔόʔࣗମͷύϑΥʔϚϯεʹ͸ຬ଍͍ͯ͠Δ w ຊ֨Ҡߦޙ΋େ͖ͳ໰୊͸ى͍ͬͯ͜ͳ͍ w ϗοτσϓϩΠͷͨΊʹDJSDVTΛબ୒ͨ͠ͱ͜Ζ(Pͷίʔυ͕ංେԽͤͣʹࡁΜͩ w σϓϩΠ͸όΠφϦΛ഑෍͢Δ͚ͩͳͷͰ؆୯ w 3VCZ͸CVOEMFJOTUBMMͳͲ໘౗ w HPSPVUJOFͰಈ͘αʔόʔ͸QSFGPSLͷαʔόʔͱ͸άϥϑͷܗ͕ҧ͏ͷͰࣾ಺Ͱ͸ݟ ׳Εͳ͍άϥϑʹͳΔ w ࣾ಺Ͱ͸1)1 "QBDIF ΍6OJDPSOͳͲQSFGPSLͷαʔόʔ͕ओྲྀ