Slide 1

Slide 1 text

LTͱ'JSFCBTFΛ࢖ͬͨ Ծ૝௨՟΢ΥϨοτͷόοΫΤϯυ Tomokazu Kozuma 2019 / 04/ 11 / THU Ginco Engineer Meetup

Slide 2

Slide 2 text

A B O U T M Y S E L F ࣗݾ঺հ Tomokazu Kozuma @Tomokazu106 ౦ژ޻ۀେֶେֶӃଔۀޙɺαΠόʔΤʔδΣϯτͰεϚϗήʔϜͷαʔόɺΠϯ ϑϥશൠΛ୲౰ɻԾ૝௨՟ʹ͍ٕͭͯज़ϒϩάΛॻ͍ͯΔ͏ͪʹ຅಄͠ɺຊ৬ͱ ͯ͠஫ྗ͢ΔͨΊʹ(JODPʹೖࣾɻ(JODPͰ͸ϒϩοΫνΣʔϯͷϊʔυӡ༻ɺ ϋʔυϑΥʔΫରԠɺόοΫΤϯυͳͲ޿ൣғΛ୲౰ɻ

Slide 3

Slide 3 text

5 5 A g e n d a Ծ૝௨՟΢ΥϨοτʹ͍ͭͯ ΢ΥϨοτͷόοΫΤϯυʹ͍ͭͯ ΢ΥϨοτҎ֎ͷػೳʹؔͯ͠ ֓ཁ

Slide 4

Slide 4 text

Ծ૝௨՟΢ΥϨοτʹ͍ͭͯ P A R T 1

Slide 5

Slide 5 text

ϒϩοΫνΣʔϯͱ͸ʁ • ୭ͷڐՄ΋ͳ͘ӡ༻Ͱ͖ɺ୭Ͱ΋த਎Λ͔֬ΊΕΔ • ϊʔυ͸ੈքதͰӡ༻͞Ε͍ͯͯɺ૬ޓʹσʔλΛ΍Γ ͱΓ͢Δ͜ͱͰಉ͡σʔλΛಉظ͍ͯ͠Δ • "͕#ʹૹͬͨͱ͍͏ཤྺΛอ࣋ʢτϥϯβΫγϣϯʣ • ϒϩοΫνΣʔϯϊʔυͷ৘ใΛͲ͏ѻ͏͔͕΢ΥϨο τΛ࡞Δ্Ͱॏཁ W h a t ’ s B l o c k c h a i n

Slide 6

Slide 6 text

΢ΥϨοτͱ͸ʁ • Ծ૝௨՟ͷૹडۚɺऔҾཤྺɺࢿ࢈؅ཧ͢Δ΋ͷ • ࢿ࢈ʹඥͮ͘ൿີ伴Λ؅ཧ͍ͯ͠Δ • ൿີ伴Λ࢖ͬͯॺ໊ͯ͠ૹۚͰ͖Δ • ൿີ伴ˠެ։伴ˠΞυϨεΛੜ੒ͯ͠Ծ૝௨՟Λड͚ औΕΔ W h a t ’ s W a l l e t

Slide 7

Slide 7 text

΢ΥϨοτͷछྨ • αʔόܕʢऔҾॴɺ#MPDLDIBJOJOGPɺ.POBQQZʣ ɹɹαʔόଆͰ؅ཧ͢ΔͷͰࣗ෼Ͱൿີ伴Λ؅ཧͰ͖ͳ͍ • ΫϥΠΞϯτܕʢ(JODP &MFDUSVN 5SVTUʣ ɹɹࣗ෼ͷ୺຤ͷΈͰൿີ伴Λ؅ཧ͢Δ T y p e o f W a l l e t

Slide 8

Slide 8 text

P r o s a n d C o n s Ϣʔβࢹ఺ͰͷϝϦοτσϝϦοτ ϝϦοτ σϝϦοτ αʔόܕ ൿີ伴؅ཧͷख͕ؒল͚Δ ϋοΧʔ͔ΒૂΘΕ΍͍͢ ΫϥΠΞϯτܕ ʢ(JODPʣ ࢿ࢈Λࣗ෼Ͱ؅ཧͰ͖Δ ։ൃݩʹѱҙ͕ ͋Δͱ౪·ΕΔ

Slide 9

Slide 9 text

Bitcoin Cash Crypto Wallet

Slide 10

Slide 10 text

·ͱΊͯͻͱͭʹ Bitcoin Bitcoin Cash Litecoin XRP Ethereum Classic Ethereum

Slide 11

Slide 11 text

ෳ਺ͷԾ૝௨՟Λ·ͱΊͯ؅ཧ

Slide 12

Slide 12 text

΢ΥϨοτͷόοΫΤϯυʹ͍ͭͯ P A R T 2

Slide 13

Slide 13 text

΢ΥϨοτʹඞཁͳ΋ͷ W h a t ’ s n e e d ɾૹۚػೳ ॺ໊ॲཧɺωοτϫʔΫ΁ͷૹ৴ ɾϒϩοΫνΣʔϯϊʔυӡ༻ ,VCFSOFUFT (,& $MPVE'VODUJPOT ɾऔҾཤྺɺ࢒ߴ؅ཧ τϥϯβΫγϣϯ؅ཧ $MPVE'JSFTUPSF ΞυϨε௨՟ผͷ࢒ߴ؅ཧ

Slide 14

Slide 14 text

ϒϩοΫνΣʔϯϊʔυӡ༻

Slide 15

Slide 15 text

ϒϩοΫνΣʔϯϊʔυӡ༻Ͱେࣄͳ͜ͱ • Մ༻ੑʢ̒छྨϊʔυʣ • όʔδϣϯΞοϓ͕ଟ͍ͷͰ؅ཧ͕͠΍͍͢͜ͱ • ҆ఆʹՔಇ͍ͯ͠Δ͔ϞχλϦϯά͠΍͍͢͜ͱ B l o c k c h a i n N o d e

Slide 16

Slide 16 text

,VCFSOFUFTͷಛ௃ • એݴతઃఆʢঢ়ଶΛίʔυͰઃఆʣ • *NNVUBCJMJUZʢมߋΛՃ͑ͳ͍৽نͰ࡞Γ௚͢ʣ • ࣗݾम෮ʢࢦఆͨ͠ঢ়ଶʹࣗಈͰम෮ʣ K u b e r n e t e s

Slide 17

Slide 17 text

Bitcoin Bitcoin ཤྺ࢒ߴऔಘ༻ ϊʔυӡ༻ͷΞʔΩςΫνϟ A r c h i t e c t u r e Engine Kubernetes *OHSFTT 4FSWJDF 4FSWJDF Bitcoin Bitcoin 5Yૹۚ༻ ֎෦͔Βͷ௨৴ڐՄ *OHSFTTɿ-ϩʔυόϥϯαɺ4FSWJDFɿ-ϩʔυόϥϯα ֎͔ΒͷΞΫηεېࢭ ෳ਺ϊʔυ ෳ਺ϊʔυ 1PE 1PE

Slide 18

Slide 18 text

؀ڥ͋ͨΓ A r c h i t e c t u r e Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Engine Kubernetes Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum ཤྺ༻ ૹۚ༻

Slide 19

Slide 19 text

શ؀ڥ A r c h i t e c t u r e %FWFMPQɿ5FTUOFU 4UBHJOHɿ-JWFOFU 1SPEVDUJPO-JWFOFU Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Engine Kubernetes Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Engine Kubernetes Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum Engine Kubernetes Bitcoin Bitcoin Bitcoin Cash Bitcoin Cash Litecoin Litecoin XRP XRP Ethereum Ethereum Classic Ethereum Classic Ethereum

Slide 20

Slide 20 text

Ծ૝௨՟ͷૹۚ

Slide 21

Slide 21 text

ૹۚ S e n d T r a n s a c t i o n Engine Kubernetes Bitcoin Bitcoin *OHSFTT 4FSWJDF Functions Cloud • ॺ໊ࡁΈ5YΛ$MPVE'VODUJPOTܦ༝ͰϊʔυʹૹΔ ୺຤ͷൿີ伴Ͱ5Yʹॺ໊ ૹۚ༻

Slide 22

Slide 22 text

औҾཤྺɺ࢒ߴ؅ཧ

Slide 23

Slide 23 text

औҾཤྺɺ࢒ߴ؅ཧ T x H i s t o r y a n d B a l a n c e Engine Kubernetes 4FSWJDF औҾཤྺɺ࢒ߴΛߋ৽ Firestore Cloud ϦΞϧλΠϜʹऔಘ Pub/Sub Cloud Bitcoin Bitcoin ཤྺऔಘ༻ • ϊʔυʹ͋ΔσʔλΛݕࡧ͠΍͍͢Α͏ʹ'JSFTUPSFʹ౤ೖ

Slide 24

Slide 24 text

΢ΥϨοτҎ֎ͷ෦෼ʹؔͯ͠ P A R T 3

Slide 25

Slide 25 text

΢ΥϨοτҎ֎ͷػೳ • σϓϩΠʢ,VCFSOFUFTɺ$MPVE'JSFTUPSF'VODUJPOTʣ • ϞχλϦϯά • 'JSFTUPSFͷόοΫΞοϓͱ#JH2VFSZ࿈ܞ • Ϋϥογϡϩάʢ*TTVFԽ4MBDL௨஌ʣ • ϓογϡ௨஌ • ڧ੍Ξοϓσʔτ • Ϣʔβߦಈϩάͷऔಘ F u n c t i o n s

Slide 26

Slide 26 text

,VCFSOFUFT΁ͷσϓϩΠ D e p l o y t o K u b e r n e t e s CircleCI Engine Container $MPVE
 #VJME Engine Kubernetes Stackdriver $POUBJOFS
 3FHJTUPSZ ᶄ#VJME5FTU ᶅ*NBHFͷొ࿥ ᶆσϓϩΠ࣮ߦ ᶇ1PEͷ*NBHFͷߋ৽ GitHub ᶃϚʔδͨ͠ΒΩοΫ

Slide 27

Slide 27 text

$MPVE'JSFTUPSF'VODUJPOT΁ͷσϓϩΠ D e p l o y t o K u b e r n e t e s CircleCI ᶄ#VJME5FTU GitHub ᶃϚʔδͨ͠ΒΩοΫ Functions Cloud ᶅ'VODUJPOTͷσϓϩΠ Firestore Cloud ᶆSVMFTJOEFYͷσϓϩΠ

Slide 28

Slide 28 text

ϞχλϦϯά͸4UBDLESJWFS M o n i t o r i n g

Slide 29

Slide 29 text

ϞχλϦϯά M o n i t o r i n g ᶃࣗಈͰ4UBDLESJWFSʹूܭ͞ΕΔ Engine Kubernetes Stackdriver Functions Cloud Slack ᶄᮢ஋Λ௒͑ͨΒ௨஌ 4UBDLESJWFSͰϞχλϦϯά

Slide 30

Slide 30 text

'JSFTUPSFͷόοΫΞοϓͱ#JH2VFSZ࿈ܞ B a c k u p o f F i r e s t o r e & I n t e g r a t i o n t o B i g Q u e r y Scheduler Cloud Functions Cloud ᶃ#BDLVQ"1*Λ࣮ߦ Storage Cloud ᶄ#BDLVQϑΝΠϧ͕࡞੒͞ΕΔ BigQuery ᶅ#BDLVQϑΝΠϧͷ࡞੒͕׬ྃޙ
 ɹ#JH2VFSZ΁ϩʔυ͢Δ"1*Λ࣮ߦ

Slide 31

Slide 31 text

Ϋϥογϡϩά C r a s h l o g ᶃΫϥογϡϩάΛ௨஌ Functions Cloud ᶄΫϥογϡΛτϦΨʔʹىಈ ᶅ(JU)VCʹJTTVF࡞੒ Crashlytics GitHub Slack ᶆ4MBDLʹ௨஌

Slide 32

Slide 32 text

ϓογϡ௨஌ P u s h N o t i f i c a t i o n Functions Cloud ᶃσʔλ͕ߋ৽͞ΕͨΒ'VODJUPOTΛىಈ ᶄ.FTTBHJOHʹ௨஌ ᶅ.FTTBHJOH͔Β୺຤ʹ௨஌ Firestore Cloud Messaging Cloud

Slide 33

Slide 33 text

ڧ੍Ξοϓσʔτ V e r s i o n U p d a t e Config Remote ᶃىಈ࣌ʹ3FNPUF$POpH͔Β࠷௿όʔδϣϯΛऔಘ 04ผʹ࠷௿όʔδϣϯΛઃఆ J04W "OESPJEW

Slide 34

Slide 34 text

ϢʔβΞΫγϣϯͷऔಘ U s e r L o g g i n g ᶃΞΫγϣϯΛ&WFOUʹϓογϡ Analytics Functions Cloud ᶄ&WFOUΛτϦΨʔʹىಈ ֎෦ API ᶅ֎෦"1*Λ࣮ߦʢ޿ࠂͷଌఆʣ ΞΫγϣϯͷαϚϦΛݟΕΔ

Slide 35

Slide 35 text

·ͱΊ • ,Tͱ'JSFCBTFͰόοΫΤϯυӡ༻ΛָʹͰ͖Δ • $MPVE'VODUJPOT͸αʔϏε࿈ܞ͕ॆ࣮͍ͯͯ͠
 αʔόϨεͳͷͰϝϯςίετఈ • ,Tɺ'JSFCBTFͩͬͨΒগਓ਺ӡ༻΋࣮ݱͰ͖Δ S u m m a r y