Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GCPUG 仙台
Search
Senoue
March 26, 2019
Technology
490
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GCPUG 仙台
Senoue
March 26, 2019
More Decks by Senoue
See All by Senoue
Go(5)分で! ECC暗号を動かして理解する BuriKaigi 2026
senoue
2
120
Goカードゲームを 作ってみた!
senoue
0
350
App_RunnerとRDSを活用したスケーラブルなWebAPI構築とインフラの自動化.pdf
senoue
1
170
チャンネルを完全に理解する
senoue
0
120
Real-time Communication in Go with Melody and WebSockets
senoue
0
220
Adobeの生成AIのこと を調べてみた
senoue
0
260
ソフトウェア開発におけるAI :CopilotとGenie
senoue
0
260
Sendai.go x GDG Cloud 仙台 ハンズオン
senoue
0
98
GoでMecab
senoue
0
420
Other Decks in Technology
See All in Technology
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
640
試験勉強はGrokBotでやれ
maigo999
0
110
AIコーディングはじめました
miso
0
150
Claude Codeで作ったアプリを安全に公開する/Built with Claude Japan 2026
yoshidashingo
0
170
デザインレビューは自動化できるのか?─ Flutter × Figma で UI 品質保証を考える
techiro
2
800
慶應義塾大学 AI実践05 論文執筆の仕組み化
keio_smilab
PRO
6
3.7k
Oracle Database Security 詳細解説
oracle4engineer
PRO
2
260
Microsoft Entra Kerberos で実現するクラウド デバイス管理
tamaiyutaro
2
560
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
230
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
210
Strands Decider 2BでAWSアップデートの目利きをしてみた
sato4mi
1
120
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
410
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Git: the NoSQL Database
bkeepers
PRO
433
67k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Balancing Empowerment & Direction
lara
6
1.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.7k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
3k
Leo the Paperboy
mayatellez
10
2.4k
We Are The Robots
honzajavorek
0
430
Deep Space Network (abreviated)
tonyrice
0
410
Transcript
GAE/Goで 1. 11 にしたら、 ローカルコンパイル スピードが 100倍になった話 瀬上 祐匡
自己紹介 瀬上 祐匡(せのうえ ひろまさ) びでおまーけっと サーバサイドエンジニア Go、Python、js、PHPとかを、 程よく触っています。 中学校のPTA会長(2期目)やったり、 ハリネズミ飼ってたり、モノノフだったりします
2
本題 何が起きたのか 昨年11月くらいから、GoでAPI開発をスタート Goは、改修程度で触ったことがあるくらい GAEは、遊び程度の知識 GCPは、この直前の業務で、 BigQuery、CloudFunctionで DWHをつくったりしてました。 3
試行錯誤しつつも 環境の構築 環境 • docker (CentOS7) • GAE/Go1.9 • Gin/Gorm
• CloudSQL 5.7
順調に開発が進んで、 12月ころから • ローカルのコンパイルが遅い • PCのファンがドローンのように唸っている (飛び上がる危険性) • 日々大きくなるソース・・・ この頃から、PCは
悲鳴をあげ、コンパイルに、 時間がかかるように... 5
とりあえず、 このままで... そっとしておこう。。。 6
ある日、 こんな会話が・・・ 7 コンパイルおそくね? そうなんす、日に日に・・ なんでだろ? ファイル数なんすかね?
“ 8 第8話バージョンアップは 突然に 8 やっておきまー おっけー、ついでに、 Go1.11にしよう 基本動作はほぼできたんで、 リファクタしますね
バージョンアップでやっ たこと • ローカル環境も、Go.1.11.5にVUP • dep→Modulesに • Ciでの、deploy • Yamlファイルの書き直し
• 若干のリファクタ サクッとVUPを完了し、 環境を実行... 9
あれ、コンパイル早く ね???? 一体何が、、、 10
00:09:98sec これが本来のスピード でも、 100倍は言いすぎだよね? 言い過ぎました・・・ 11
12月時の コンパイルスピード 12 1 コ ー ド修 正 約 5分
2 ロ ー カ ル 環 境 コ ン パ イ ル 約 5分 3 コ ー ヒ ー を 入 れ に 行 く 約 5分 合計約15分 約900秒ロス 9sec×100 = 900sec
まとめ 13
というわけで GAEでGoはいいぞ GAE • 思ってたより安い • SSLがついてる • 独自ドメイン設定も すごく簡単
• F/Wがすごく便利 • Stackdriverも便利 14 Go • 想像以上に、作りやすい • すげー早い • ドキュメントが少ない • やってる人もまだ少ない • 1.10〜キャッシュビルドが使えるように なった
デモ します 15 コード総数 12,000行 ファイル数 80ファイル 実際の画面
Thanks! ご清聴ありがとうございました You can find me at: • @senoue •
@hiromasa.senoue • https://github.com/Senoue/vm-titles Go1.11とG01.9の環境を公開してます 16