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.7k
日報を 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
110
BigQuery経由で使うGoogleスプレッドシートのスキーマ管理
masutaka
0
230
本を聴く毎日を送っています
masutaka
0
51
ボッチLookML開発者兼データ整備人を連れてきたよ!
masutaka
0
90
ここがつらいよ普段使いのLinux
masutaka
0
210
4月から取り組んできたLookerの導入から実装までのお話
masutaka
0
130
HerokuでSidekiqを監視する方法を確立した
masutaka
0
500
デプロイで止まらないバッチ処理を求めて
masutaka
1
99
デプロイ元をCircleCIからHerokuに乗り換えた
masutaka
0
87
Other Decks in Programming
See All in Programming
Kotlin2でdataクラスの copyメソッドを禁止する/Data class copy function to have the same visibility as constructor
eichisanden
1
120
qmuntal/stateless のススメ
sgash708
0
120
Server Driven Compose With Firebase
skydoves
0
390
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
7
430
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
530
Nuxtベースの「WXT」でChrome拡張を作成する | Vue Fes 2024 ランチセッション
moshi1121
1
490
Modern Angular: Renovation for Your Applications
manfredsteyer
PRO
0
200
Outline View in SwiftUI
1024jp
1
100
macOS でできる リアルタイム動画像処理
biacco42
4
1.6k
Golang と Erlang
taiyow
8
1.9k
レガシーな Android アプリのリアーキテクチャ戦略
oidy
1
170
CPython 인터프리터 구조 파헤치기 - PyCon Korea 24
kennethanceyer
0
240
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
RailsConf 2023
tenderlove
29
880
Embracing the Ebb and Flow
colly
84
4.4k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Music & Morning Musume
bryan
46
6.1k
Designing for Performance
lara
604
68k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
How GitHub (no longer) Works
holman
311
140k
GraphQLとの向き合い方2022年版
quramy
43
13k
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
YesSQL, Process and Tooling at Scale
rocio
167
14k
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[ͷίʔυશ෦ͳ͘ͳΓ·ͨ͠ɻਃ͠ ༁͍͟͝·ͤΜ