2015.12.06 Go Conference 2015 Winter
Go ͕ࢧ͑ΔΠϯϑϥετϥΫνϟαʔϏεKohei YOSHIDA / yosida95Gehirn Inc.
View Slide
ࣗݾհ
https://twitter.com/yosida95https://github.com/yosida95https://yosida95.com/٢ా ߉ฏ / yosida95Software Engineer at Gehirn Inc.
NHK EςϨʮχοϙϯͷδϨϯϚʯhttp://www.nhk.or.jp/jirenma/20150829.html
Gehirn Inc.http://www.gehirn.co.jp/
MissionຊΛͬͱ҆શʹ͢Δ
SecurityϖωτϨʔγϣϯςετ੬ऑੑϋϯυϦϯάαʔϏε | http://gs3.jp/Disaster Preventionؾใͷ৴ | @UN_NERVInfrastructureGehirn Infrastructure Services
Go ͕ࢧ͑ΔΠϯϑϥετϥΫνϟαʔϏε
2015.04.01Public Preview2012.11.221st Release
Scrap and BuildͷΛݟͳ͔ͬͨίʔυ
GWS02طଘαʔϏεͷ Go ͰͷϦϓϨʔεΑΓຬͰ͖ΔαʔϏεΛࢦ͓ͯ͠ଂೖΓGehirnInc/GOpenIDGo ͷ Open ID 2.0 ProviderOpen ID Connect Ҡߦ
ConceptϕετϓϥΫςΟεͷఏڙ
ServicesఏڙதͷαʔϏε
Gehirn RS2 PlusϨϯλϧαʔόʔαʔϏεQEMU ʹΑΔશԾԽApache / Nginx / TCP ( FastCGI / WSGI / HTTP )Gehirn DNSDNS ίϯςϯπαʔόʔκʔϯͷόʔδϣϯཧόʔδϣϯΓସ͑࣌ͷ TTL ͷࣗಈௐ
Gehirn MTAϝʔϧૹड৴ APIૹ৴ : SMTP / HTTP APIड৴ : Gehirn EDJGehirn EDJΠϕϯτϋϒ༰: ϝϯςφϯε / Gehirn MTA ड৴ etc…௨: HTTP Push / Slack / Pushover etc…
Golang SceneGo ͷΘΕํ
Gehirn RS2 PlusSTQBHFOUԾϚγϯʹৗற͢ΔσʔϞϯ!ઃఆϑΝΠϧฤूίϚϯυ࣮ߦϥΠϒϥϦͳͲఏڙڥͷΞοϓσʔτ!Debian Package (.deb) Ͱ
Gehirn RS2 Plus4OBQTIPUVM ΠϝʔδͷόοΫΞοϓ!มߋͷΈอଘ͢Δ૿όοΫΞοϓ෮ݩมߋͷΈద༻σʔλετΞ Gehirn KVS ʹอଘ!ϗετϚγϯͰಈ࡞
Gehirn MTA4.51αʔόʔ(PͰϑϧεΫϥονϝʔϧͷૹ৴ɾड৴֎෦αʔόʔͷૹૹεςʔλεͷϋϯυϦϯάར༻ঢ়گͷࢹ3BUF-JNJUJOHϝʔϧύʔαʔCPVODFϝʔϧͷύʔε(FIJSO&%+ૹલͷલॲཧ
Gehirn EDJΠϕϯτࢹGehirn MTA ͷΠϕϯτͷαϒεΫϥΠϒ!ΠϕϯτϧʔςΟϯάૹํ๏͝ͱʹ୲ϫʔΧʔׂΓৼΔ!!Πϕϯτૹ4MBDL*3$ɺ)551)PPLͳͲͷૹ
Why use Goͳͥ Go Λ͏͔
Battery Includedඪ४ϥΠϒϥϦ͕ॆ࣮͍ͯ͠ΔDSZQUPDPNQSFTTOFUฒྻॲཧΛ༰қʹهड़Ͱ͖ΔDIBOOFMHPSPVUJOFTFMFDUෳͷฦΓFYDFQUJPO͕ͳ͍ΤϥʔΛඞͣॲཧ͢Δྫ֎Λ௫ΈଛͶͳ͍!ωοτϫʔΫαʔόʔΛॻ͖͍͢
Static Link / Cross CompileϢʔβʔʹ͍͢͠ίϯύΠϧͯ͠όΠφϦͻͱͭ͢Δ͚ͩ!σϓϩΠ͍͢͠ΫϩείϯύΠϧͯ͠4ʹஔ֤αʔόʔ͕μϯϩʔυ࣮ͯ͠ߦ͢Δ͚ͩ
Easy to ScaleσϓϩΠ͍͢͠ૉૣ͍ԣల։ωοτϫʔΫαʔόʔΛॻ͖͍͢ΫϥελΛߏ͍͢͠%JTUSJCVUFE$PNQVUJOHαʔυύʔςΟʔIBTIJDPSQNFNCFSMJTUDPSFPTFUDESBGU
Conclusion·ͱΊ
Go ΠϯϑϥαʔϏεͰੜ͖ΔେྔͷσʔϞϯɾσϓϩΠ͕༰қ!େͳॲཧϦιʔεࢄίϯϐϡʔςΟϯάΫϥελϦϯά!ωοτϫʔΫαʔϏεSMTP ɺ DNSݎ࿚ʹॻ͚Δ͘ͳ͍