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
Perl の HTTP/2 事情 / HTTP2 in Perl
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
zoncoen
December 09, 2015
Programming
500
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Perl の HTTP/2 事情 / HTTP2 in Perl
Gotanda.pm #4
http://gotanda-pm.connpass.com/event/11993/
の発表資料です
zoncoen
December 09, 2015
More Decks by zoncoen
See All by zoncoen
About Merpay Engineering Productivity Team
zoncoen
0
1.9k
Perl でも React.js の server-side rendering がしたい! / perl meets javascript with reactjs
zoncoen
0
2.2k
YAPC::Asia 2014
zoncoen
0
2.7k
同期的にプレゼンテーションするツールをつくった話
zoncoen
1
1k
Gunosy.go #4 ~ flag.go ~ #gunosygo
zoncoen
0
250
Gunosy.go #3 ~ expvar.go ~ #gunosygo
zoncoen
1
770
初心者がGoでpercol実装してみた話 / Golang + Reveal.js + Websocket で同期的にプレゼンテーションしたい #hikarie_go
zoncoen
0
2.6k
Other Decks in Programming
See All in Programming
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
160
Oxcを導入して開発体験が向上した話
yug1224
4
290
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
2.9k
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
200
AIとRubyの静的型付け
ukin0k0
0
540
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
1.6k
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
4.2k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
230
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
460
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.7k
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
440
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
110
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
550
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
The Cult of Friendly URLs
andyhume
79
6.9k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.6k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Skip the Path - Find Your Career Trail
mkilby
1
140
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
280
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
240
The Curse of the Amulet
leimatthew05
1
13k
BBQ
matthewcrist
89
10k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
Perl ͷ HTTP/2 ࣄ Kenta Mori (@zoncoen)
HTTP/2 • HTTP/2 Approved | IETF Blog • ͏͙͢ RFC
͕ൃߦ͞ΕΔ • ͢Ͱʹ30Ҏ্ͷ࣮͕͋Δ • Implementations · http2/http2-spec Wiki
HTTP/2 for Perl • http2-perl • draft-04 • Protocol::HTTP2 •
draft-17
Protocol::HTTP2 # Prepare http/2 request $client->request( ':scheme' => "http", ':authority'
=> $host . ":" . $port, ':path' => "/hello", ':method' => "GET", headers => [ 'accept' => '*/*', 'user-agent' => 'perl-Protocol-HTTP2/0.01', ], on_done => sub { my ( $headers, $data ) = @_; printf "Get headers. Count: %i\n", scalar(@$headers) / 2; printf "Get data. Length: %i\n", length($data); print $data; }, ); • Connect AnyEvent ͰΰχϣΰχϣΔ
Protocol::HTTP2 • request -> request ͰฒྻϦΫΤετ $client->request( ':scheme' => "http",
':authority' => $host . ":" . $port, ':path' => "/minil.toml", ':method' => "GET", headers => [ 'accept' => '*/*', 'user-agent' => 'perl-Protocol-HTTP2/0.01', ], on_done => sub { my ( $headers, $data ) = @_; printf "Get headers. Count: %i\n", scalar(@$headers) / 2; printf "Get data. Length: %i\n", length($data); print $data; }, )->request( … );
Demo with nghttp2
ॴײ • ҰԠಈ͘ • ༏ઌ੍ޚͱ͔͕·ͩඍົͬΆ͍ • HPACK ͷ࣮͕… • Perl
ͰඇಉظϓϩάϥϛϯάͭΒͦ͏
༨ஊ • 2/26 ʹ gRPC ͕ެ։͞Εͨ • RPC on HTTP/2
• ֤ݴޠ༻ͷϥΠϒϥϦެ։
None
None
None