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
Go 1.6 and HTTP/2
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Nathan Youngman
February 22, 2016
Programming
170
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go 1.6 and HTTP/2
It Just Works*
Nathan Youngman
February 22, 2016
More Decks by Nathan Youngman
See All by Nathan Youngman
The Healthy Programmer
nathany
2
120
Go and Node.js: a comparison
nathany
1
270
Diet Hacks
nathany
2
410
Upgrading Rails Redux
nathany
1
110
GopherCon recap
nathany
0
210
Go Functions
nathany
0
120
Go Arrays & Slices
nathany
0
180
Go Types
nathany
2
150
Go Packages
nathany
2
580
Other Decks in Programming
See All in Programming
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
320
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
590
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
210
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
270
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.8k
新卒PdEのリアル
ryu1013
1
500
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
220
wkhtmltopdfの次どうするか問題2026
willnet
2
1.1k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
100
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
180
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
120
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
140
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
260
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
How to build a perfect <img>
jonoalderson
1
6k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Designing Powerful Visuals for Engaging Learning
tmiket
1
550
Site-Speed That Sticks
csswizardry
13
1.5k
Visualization
eitanlees
152
17k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Transcript
Go 1.6 and HTTP/2 @nathany
It Just Works*
Server err := http.ListenAndServeTLS(":443", "cert.pem", "key.pem", nil)
Client response, err := http.Get("https:// http2.golang.org/reqinfo")
Issue #14391 • http.Client doesn't support http2 by default
Issue #14275 • net/http: Transport's automatic http2 too aggressive
golang.org/x/net/http2
Configure Transport transport := &http.Transport{} err := http2.ConfigureTransport(transport) if err
!= nil { log.Fatal(err) } client := &http.Client{Transport: transport} response, err := client.Get("https:// http2.golang.org/reqinfo")
Buford github.com/RobotsAndPencils/buford
Custom Cert func NewClient(cert tls.Certificate) (*http.Client, error) { config :=
&tls.Config{ Certificates: []tls.Certificate{cert}, } config.BuildNameToCertificate() transport := &http.Transport{TLSClientConfig: config} if err := http2.ConfigureTransport(transport); err != nil { return nil, err } return &http.Client{Transport: transport}, nil }