Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
日報を golang で支える技術
Search
Takashi Masuda
October 14, 2017
Programming
2
1.8k
日報を golang で支える技術
github-nippou という gem を golang で書き直したお話です。
https://developer.feedforce.jp/entry/2017/10/16/150000
Takashi Masuda
October 14, 2017
Tweet
Share
More Decks by Takashi Masuda
See All by Takashi Masuda
自分のブログをCloudFront+HerokuからCloud Runに移行した
masutaka
0
120
BigQuery経由で使うGoogleスプレッドシートのスキーマ管理
masutaka
0
280
本を聴く毎日を送っています
masutaka
0
53
ボッチLookML開発者兼データ整備人を連れてきたよ!
masutaka
0
91
ここがつらいよ普段使いのLinux
masutaka
0
270
4月から取り組んできたLookerの導入から実装までのお話
masutaka
0
140
HerokuでSidekiqを監視する方法を確立した
masutaka
0
540
デプロイで止まらないバッチ処理を求めて
masutaka
1
100
デプロイ元をCircleCIからHerokuに乗り換えた
masutaka
0
88
Other Decks in Programming
See All in Programming
GAEログのコスト削減
mot_techtalk
0
120
技術を根付かせる / How to make technology take root
kubode
1
250
Formの複雑さに立ち向かう
bmthd
1
840
Rails アプリ地図考 Flush Cut
makicamel
1
120
Introduction to kotlinx.rpc
arawn
0
690
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
560
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
160
『品質』という言葉が嫌いな理由
korimu
0
160
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
DROBEの生成AI活用事例 with AWS
ippey
0
130
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
SwiftUI Viewの責務分離
elmetal
PRO
1
230
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Gamification - CAS2011
davidbonilla
80
5.1k
BBQ
matthewcrist
87
9.5k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
330
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Music & Morning Musume
bryan
46
6.3k
It's Worth the Effort
3n
184
28k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The World Runs on Bad Software
bkeepers
PRO
67
11k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Site-Speed That Sticks
csswizardry
4
380
Transcript
̋̋Λࢧ͑Δٕज़ ૿ాو࢜ !NBTVUBLB
̋Λࢧ͑Δٕज़ ૿ాو࢜ !NBTVUBLB
ใΛࢧ͑Δٕज़ ૿ాو࢜ !NBTVUBLB
͜Ε·Ͱͷ͓ w ͷࣾษڧձͰɺHJUIVCOJQQPVͱ͍͏HFN Λ࡞ͬͨΛͨ͠ w (JU)VCͷࠓͷߦಈΛܗͯ͠ग़ྗ͢Δπʔϧ w ݩ-*/&ͷ͖͚ͨʔ !LJUBL ͞ΜͷεΫϦϓτ
w (JU)VCͷ&WFOUT"1*ͷ༷ʹԊͬͨΓɺฒྻॲཧΛ ࣮ͨ͠Γͯ͠ɺͦͦ͜͜ຬͰ͖Δπʔϧʹͳͬͨ IUUQTNBTVUBLBOFUDIBMPXIUNM
࠷ۙͷ HJUIVCOJQQPV
!SZ[
WϦϦʔε w (JTU্ͷઃఆϑΝΠϧͰग़ྗϑΥʔϚοτΛมߋՄೳʹͳͬͨCZ !SZ[ w ্هʹ͍αϒίϚϯυʮJOJUʯΛՃCZ!SZ[ w ઃఆϑΝΠϧͷ63-ΛϒϥβͰ։͘αϒίϚϯυʮPQFOTFUUJOHTʯ ΛՃ w
%PDLFSJ[F w ςετ STQFD ΛಋೖCZ!SZ[ w 5SBWJT$*Λಋೖ IUUQTHJUIVCDPNNBTVUBLBHJUIVCOJQQPVSFMFBTFTUBHW
WϦϦʔε w ઃఆϑΝΠϧͷॻࣜΛগ͠มߋ IUUQTHJUIVCDPNNBTVUBLBHJUIVCOJQQPVSFMFBTFTUBHW
WϦϦʔε w αϒίϚϯυʮJOJUʯʹॳظઃఆॲཧΛͯ͢· ͱΊͨ IUUQTHJUIVCDPNNBTVUBLBHJUIVCOJQQPVSFMFBTFTUBHW
w ͻͱͭͷεΫϦϓτ͔Βɺ͖ͣʹΑ͘࡞Γࠐ Μͩͳͱݴ͏ײ w ͏͜ΕҎ্ΕΔ͜ͱͳ͍Ͱ͋Ζ͏
Ͱɺ
Α͔͘Βͳ͍͚Ͳɺ ٸʹΔؾ͕ग़͖ͯͨʂ
None
ใΛࢧ͑Δٕज़ ૿ాو࢜ !NBTVUBLB HPMBOHͰ
WϦϦʔε͠·͢ HJUQVTIPSJHJOHPMBOH HJUCSPXTFSFNPUFQS 8BJU$*BOE.FSHF13 HJUDIFDLPVUNBTUFS HJUQVMM NBLFEJTU NBLFSFMFBTF PQFOIUUQTHJUIVCDPNNBTVUBLBHJUIVC OJQQPVSFMFBTFTUBHW
"EESFMFBTFOPUF $*͕Ϳ͚ͬͭ ຊ൪ ??
WϦϦʔε w ϢʔβʹҰӨڹΛ༩͑ͣʹɺͯ͢HPMBOHͰ ॻ͖͑ͨ w %PDLFSJ[FҰ୴ഇࢭ IUUQTHJUIVCDPNNBTVUBLBHJUIVCOJQQPVSFMFBTFTUBHW
)PNFCSFX͚ϦϦʔε &EJUHJUIVCOJQQPVSC HJUBEEHJUIVCOJQQPVSC HJUDPNNJUN"EEGPSNVMB HJUQVTIPSJHJONBTUFS PQFOIUUQTHJUIVCDPNNBTVUBLBIPNFCSFX HJUIVCOJQQPVTFUUJOHT .BLFQVCMJD CSFXJOTUBMMNBTVUBLBHJUIVCOJQQPVHJUIVCOJQQPV ग़དྷΔͣɻ
Ϟνϕʔγϣϯ w ҎલɺIVCίϚϯυ͕SVCZ͔ΒHPMBOHʹҠߦͨ࣌͠ɺ ͔͍͍ͬ͜ͳʔͱࢥ͍ͬͯͨ w SVCZͷ$-*Λ%PDLFSJ[Fͯ͠ϙʔλϏϦςΟΛߴΊΔͷ Կ͔͕ҧ͏ͱ͍͏ؾ࣋ͪ w %PDLFSJ[FͰ͑ͳ͘ͳΔػೳ͋Δʢྫɿϒϥβ Ͱ։͘ʣ
w !SZ[͔ΒΒͬͨݩؾ IUUQTHJUIVCDPNHJUIVCIVCSFMFBTFTUBHW
Ͳ͏ਐΊ͔ͨ ίΞػೳ͔ΒҠ২։࢝ w ϩδοΫ3VCZͰ͍ͯͨ͠ͷͰɺΨʔοͱॻ্͖͛Β Εͨ w ͱݴ͑ɺக໋తͳԿ͔ΛҰ൪ڪΕ͍ͯͨ αϒίϚϯυΛҠ২
ςετΛҠ২ .BLFpMF࡞ΓࠐΈ
ସϥΠϒϥϦͳͲ SVCZ HPMBOH PDUPLJUHFN HJUIVCDPNHPPHMFHPHJUIVC ˞ QBSBMMFMHFN 5ISFBE HPSPVUJOF DIBOOFM
UIPSHFN HJUIVCDPNTQGDPCSB :".-.PEVMF HPQLHJOZBNMW MBVODIZHFN HJUIVCDPNTLSBUDIEPUPQFOHPMBOH IJHIMJOFHFN GNUQBDLBHF /BNFEGPSNBUTUSJOH UFYUUFNQMBUFQBDLBHF ˞ ˞HJUIVCDPNPDUPLJUHPPDUPLJU։ൃ͕ࢭ·͍ͬͯ·͢ ˞෦Ͱ\IPHF^Λ\\IPHF^^ʹม͠·ͨ͠
ସϩδοΫͳͲ w 0DUPLJU$MJFOUTDPQFT ˞ ͳΜ͍ͯ͏ศརϝιο υͳ͔ͬͨɻίʔυΛಡΜͰ MJCHFU$MJFOU4DPQFT Λࣗ࡞ͨ͠ w "TTFU
DPOpHTFUUJOHTZNM ϓϩάϥϜ͔Βࢀ রͰ͖ͳ͘ͳΔɻHJUIVCDPNKUFFVXFOHP CJOEBUBͰCJOEBUBHPʹมɻ͍͍ײ͡ͷNBLF ͷSVMFॻ͍ͨ ˞IUUQTHPPHMN[D#J.
–Takashi Masuda 2017 “ಉ͡ͷͻͱͭͱͯ͑͠ͳ͍”
ྑ͔ͬͨ͜ͱ w ΠϯετʔϧΞοϓσʔτ͕༰қʹͳͬͨ w ྫɿ)PNFCSFXͰΠϯετʔϧ w ྫɿ#JU#BSͰΞοϓσʔτݕ IUUQTHFUCJUCBSDPNQMVHJOT%FW)PNFCSFXCSFXVQEBUFTITI
ྑ͔ͬͨ͜ͱ w ༧֎ͷύϑΥʔϚϯε্ w ྫHJUIVCOJQQPVTT w 3VCZTFD w HPMBOHTFD w
͍͍ͩͨഒҎ্͍
ྑ͔ͬͨ͜ͱ w ݁Ռతʹ͍ΖΜͳϥΠϒϥϦΛ͑ͯɺྑ͍ૉ ৼΓʹͳͬͨ w HPMBOHͷϥΠϒϥϦΛࢼ͢৺ཧతোน͕ݮͬ ͨ
ࠔͬͨ͜ͱ w ͱʹ͔͕ؔ͘͘ͳΓ͕ͪ w HFU999 ଟ͘ͳΓ͗͢ w ϑΝΠϧׂͷҙຯ w ॻ͚ॻ͘΄ͲHPMBOHͬΆ͍ॻ͖ํ͕͔Βͳ͘ͳΔ
w 001Ͱͳ͍͜ͱͷށ͍ʢঃʑʹʣ w 3VCZ͕ॊೈ͗ͯ͢Ҡ২͔ͬͨ͠ɻΦεεϝ͠ͳ͍
ਫ਼ਆతʹେมͩͬͨ͜ͱ w ਫ໘ԼͰਐΊͨ͜ͱ w $*ϦϦʔεͷςετ͕ग़དྷͳ͍ͷͰɺͿͬ ͚ͭຊ൪ w ༵ۚͷΠϯϑϥڞ༗ձͰͷϙʔΧʔϑΣΠε w ษڧձ·Ͱʹؒʹ߹͏ͷ͔ʁͱ͍͏যΓ
ٙͳͲ w DMBTTઃܭͰศརͩͬͨɺQSJWBUFNFUIPEͷΘΓ w ઃܭ͖͔͢͠ w DMBTTΛΘͳ͔ͬͨࠒͷ+4ͷݟΛΓ͍ͨ w ϏδωεϩδοΫͷύοέʔδ໊Ͳ͏͢Ε w
ࠓճMJCʹͨ͠
ײ w ࠓޙɺSVCZHFNTͰ$-*πʔϧΛ࡞Δ͜ͱͳ͍ ͱࢥ͏ɻܧଓར༻Λߟ͑ΔͱקΊͮΒ͍ w HPMBOH୯ҰϑΝΠϧͰͷ࣮ͱ࣮ߦʹҰ൪ ϋʔυϧ͕͍ؾ͕͍ͯ͠Δ w ͬͱָͳݴޠ͋ͬͨΒڭ͑ͯ IUUQTHJUIVCDPNHJUIVCIVCSFMFBTFTUBHW
ࠓޙͷ༧ఆ w HPMBOHͬΆ͍ॻ͖ํʹ͢Δ w ͬͱςετΛॻ͘ w HPMBOHPO-BNCEB"1*αʔόֶश͢Δ w ʰελʔςΟϯά(PݴޠʱΛಡΈΔ
͓ͼ w !SZ[ͷίʔυશ෦ͳ͘ͳΓ·ͨ͠ɻਃ͠ ༁͍͟͝·ͤΜ