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
Resolve web application deployment problems for Go
Search
linyows
March 28, 2018
Technology
2
710
Resolve web application deployment problems for Go
March 28, 2018 @fukuoka.go#10 でお話しした資料です
linyows
March 28, 2018
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
110
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
540
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
340
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
470
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
0
270
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
500
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
260
奥が深いメールのシステム / The depth of Email system
linyows
4
630
Other Decks in Technology
See All in Technology
データ分析エージェント Socrates の育て方
na0
6
2.3k
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
590
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
いま注目のAIエージェントを作ってみよう
supermarimobros
0
350
Create Ruby native extension gem with Go
sue445
0
130
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
400
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
180
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
250
2025/09/16 仕様駆動開発とAI-DLCが導くAI駆動開発の新フェーズ
masahiro_okamura
0
130
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
260
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.8k
Being A Developer After 40
akosma
90
590k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Into the Great Unknown - MozCon
thekraken
40
2k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Gamification - CAS2011
davidbonilla
81
5.4k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
The Cult of Friendly URLs
andyhume
79
6.6k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Making Projects Easy
brettharned
117
6.4k
Building Applications with DynamoDB
mza
96
6.6k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Transcript
5PNPIJTB0EB(.01FQBCP *OD .BSDI ϫϯόΠφϦͷ σϓϩΠΛղܾ͢Δ 'VLVPLBHP
'VLVPLBHP (.0ϖύϘϓϦϯγύϧΤϯδχΞ খాԝ!MJOZPXT ٕज़෦ٕज़ج൫νʔϜ IUUQUPNPIJTBPEBDPN
'VLVPLBHP ࠷͍ۙͬͯΔ͜ͱ ▸ (P"1*ͷϦϑΝΫλϦϯάࢦඋʢ΄΅HPSN෦ ▸ &YQSFTKT /VYUKTΞϓϦͷඋ ▸ )BTIJ$PSQ7BVMUͷهࣄࣥච
'VLVPLBHP MJOVYϢʔβͷ໊લղܾΛHJUIVCͷνʔϜίϥϘϨʔλͰߦ͏
'VLVPLBHP લճͷ͓͞Β͍ʢ'VLVPLBHP ▸ $(0େม͚ͩͲطଘϦιʔε͑ͯศར ▸ 3VCZͷਖ਼نදݱΤϯδϯ0OJHNPΛόΠϯσ Οϯά ▸ ҰԠͰ͖ͨIUUQTHJUIVCDPNMJOZPXTHPPOJHNP
'VLVPLBHP ͳͥ0OJHNP ▸ (Pͷਖ਼نදݱΤϯδϯ(PPHMF3& ▸ ࠷ΑΓ҆શΛॏࢹ͍ͯ͠Δ ▸ ઢܗ࣌ؒΛอূ ▸ Ұํɺ0OJHNPઢܗ࣌ؒͰͳ͍ͷͰೖྗ͕খ͚͞Ε͍
▸ ϢʔεέʔεʹΑͬͯ0OJHNPʹϝϦοτ͕͋Δ߹͕͋Δ
'VLVPLBHP $ go test -bench RE2 | sed 's/RE2/Regexp/' >
before $ go test -bench Onigmo | sed 's/Onigmo/Regexp/' > after $ benchcmp before after benchmark old ns/op new ns/op delta BenchmarkRegexp-4 25775 31043 +20.44% ϕϯνϚʔΫ
(PͷϓϩμΫτͰ ϦϦʔεͲ͏͍ͯ͠·͔͢ʁ 'VLVPLBHP
'VLVPLBHP ϓϩμΫτͬͯݴ͍ͬͯΖ͍Ζ͋Δ ▸ ϥΠϒϥϦ ▸ ศརίϚϯυPSπʔϧ ▸ ϛυϧΣΞ ▸ 8FCΞϓϦέʔγϣϯ
'VLVPLBHP ϥΠϒϥϦศརίϚϯυϛυϧΣΞͷ߹ ▸ ϦϙδτϦͰऴΘΓී௨ʹHPHFU ▸ (JUIVC3FMFBTFTͷ"TTFUTʹ6QMPBE"1*Ͱ%PXOMPBE ▸ 31.%&#Ͱ1BDLBHF$MPVEͳͲ
'VLVPLBHP 8FCΞϓϦέʔγϣϯʁʁ ▸ $BQJTUSBOPؒҧ͍ແ͍͚Ͳେ͛͞ ▸ 4IFMMख͕ܰͩɺίϐϖͰ૿৩ͦ͠͏ ▸ #MVF(SFFOΉඞཁͳ͠ʂ
(PϫϯόΠφϦͳͷͰ σϓϩΠָͩͬͨͣ 'VLVPLBHP
(PͰελϯμʔυσϓϩΠ ख๏ͬͯԿʜ 'VLVPLBHP
'VLVPLBHP 8FCΞϓϦέʔγϣϯͷϦϦʔεʹ͓͚Δಛ ▸ ࣄલʹ$*ʢUFTUBOECVJMEʣ͢Δ ▸ සൟʹσϓϩΠ͍ͨ͠ͳͷͰϩʔϧόοΫ͍ͨ͠ ▸ Խͨ͠ϗετʹσϓϩΠ͢Δ ▸ σϓϩΠͷࣦྃഊ௨͍ͤͨ͞
▸ Կ࣌ͲΜͳมߋΛϦϦʔε͔ͨ͠ه͍ͨ͠
8FCΞϓϦέʔγϣϯͩͱ ༷ʑͳσϓϩΠλεΫ͕ඞཁ 'VLVPLBHP
λεΫΉͷ໘ͩ͠ σϓϩΠ͢Δͷ ࠓͷ࣌ɺਓ͡Όͳ͍ΑͶ 'VLVPLBHP
ܧଓతσϓϩΠ ಋೖ͢͠͞ 'VLVPLBHP
͜ΕΒΛղܾ͢Δ ιϑτΣΞΛ࡞Γ·ͨ͠ʂ ㊗㊗㊗㊗㊗ 'VLVPLBHP
͜ΕΒΛղܾ͢Δ ιϑτΣΞΛ࡞Γ·ͨ͠ʂ ㊗㊗㊗㊗㊗ 'VLVPLBHP ൃදυϦϒϯ։ൃɺࣦഊʜ ؒʹ߹͍·ͤΜͰͨ͠
'VLVPLBHP ͲΜͳͷΛ࡞͍ͬͯΔͷ͔ ▸ ϙʔϦϯάܕσϓϩΠπʔϧ ▸ (PTFSWFSTUBSUFSΛแ͢Δ ▸ ඞཁͦ͏ͳλεΫσϑΥϧτͰ࣮ ▸ ͪΖΜ֦ுੑߟ͍͑ͯΔ
'VLVPLBHP ͜ΜͳϝϞ͕ग़͖ͯͨ
'VLVPLBHP ͲΜͳͷΛ࡞͍ͬͯΔͷ͔ ϦϙδτϦ (*5 (*5)6# ϓϩηεϚωʔδϟ 4&37&345"35&3 ΞϓϦ$633&/5 ΞϓϦ/&8 Φʔσ
Οοτ '*-& 13 Ωϟογϡ 3&%*4 $0/46- ௨ 4-"$, ϙʔϦϯά
1VTI͢Δͱ͍͍ײ͡ʹ 8FCΞϓϦ͕ϦϦʔε͞ΕΔ ϓϩηεϚωʔδϟ 'VLVPLBHP తʹݴ͏ͱ
ܧଓతσϓϩΠ ಋೖ͢͠͞ 'VLVPLBHP
'VLVPLBHP ·ͱΊ ▸ 8FCΞϓϦέʔγϣϯͷσϓϩΠਵλεΫ͕ଟ͘ɺͦΕ ϫϯόΠφϦͰ͋Δ(Pʹ͓͍ͯಉ͡ ▸ ൃදυϦϒϯͰ։ൃ͢Δͱؒʹ߹Θͳ͍Ͳ͜Ζ͔ɺൃදࢿྉΛ લʹ࡞Δ͜ͱʹͳΔ ▸ ͕ɺ͍େࣄͳͷͰɺࠓޙ͍ͬͯ͘
▸ ͦͯ͠ɺӶҙ։ൃதʂ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ 'VLVPLBHP